/*============================================================================== Copyright (c) 2005-2010 Joel de Guzman Copyright (c) 2010 Thomas Heller Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) ==============================================================================*/ template struct dynamic : noncopyable { typedef vector1 tuple_type; typedef dynamic self_type; typedef dynamic_frame dynamic_frame_type; dynamic() : frame(0) {} template static typename expression::dynamic_member, self_type *>::type const init(self_type * scope) { return expression:: dynamic_member, self_type *>:: make(mpl::int_(), scope); } typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; mutable dynamic_frame_type* frame; }; template struct dynamic : noncopyable { typedef vector2 tuple_type; typedef dynamic self_type; typedef dynamic_frame dynamic_frame_type; dynamic() : frame(0) {} template static typename expression::dynamic_member, self_type *>::type const init(self_type * scope) { return expression:: dynamic_member, self_type *>:: make(mpl::int_(), scope); } typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; mutable dynamic_frame_type* frame; }; template struct dynamic : noncopyable { typedef vector3 tuple_type; typedef dynamic self_type; typedef dynamic_frame dynamic_frame_type; dynamic() : frame(0) {} template static typename expression::dynamic_member, self_type *>::type const init(self_type * scope) { return expression:: dynamic_member, self_type *>:: make(mpl::int_(), scope); } typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; mutable dynamic_frame_type* frame; }; template struct dynamic : noncopyable { typedef vector4 tuple_type; typedef dynamic self_type; typedef dynamic_frame dynamic_frame_type; dynamic() : frame(0) {} template static typename expression::dynamic_member, self_type *>::type const init(self_type * scope) { return expression:: dynamic_member, self_type *>:: make(mpl::int_(), scope); } typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; mutable dynamic_frame_type* frame; }; template struct dynamic : noncopyable { typedef vector5 tuple_type; typedef dynamic self_type; typedef dynamic_frame dynamic_frame_type; dynamic() : frame(0) {} template static typename expression::dynamic_member, self_type *>::type const init(self_type * scope) { return expression:: dynamic_member, self_type *>:: make(mpl::int_(), scope); } typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; mutable dynamic_frame_type* frame; }; template struct dynamic : noncopyable { typedef vector6 tuple_type; typedef dynamic self_type; typedef dynamic_frame dynamic_frame_type; dynamic() : frame(0) {} template static typename expression::dynamic_member, self_type *>::type const init(self_type * scope) { return expression:: dynamic_member, self_type *>:: make(mpl::int_(), scope); } typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; mutable dynamic_frame_type* frame; }; template struct dynamic : noncopyable { typedef vector7 tuple_type; typedef dynamic self_type; typedef dynamic_frame dynamic_frame_type; dynamic() : frame(0) {} template static typename expression::dynamic_member, self_type *>::type const init(self_type * scope) { return expression:: dynamic_member, self_type *>:: make(mpl::int_(), scope); } typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; mutable dynamic_frame_type* frame; }; template struct dynamic : noncopyable { typedef vector8 tuple_type; typedef dynamic self_type; typedef dynamic_frame dynamic_frame_type; dynamic() : frame(0) {} template static typename expression::dynamic_member, self_type *>::type const init(self_type * scope) { return expression:: dynamic_member, self_type *>:: make(mpl::int_(), scope); } typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; mutable dynamic_frame_type* frame; }; template struct dynamic : noncopyable { typedef vector9 tuple_type; typedef dynamic self_type; typedef dynamic_frame dynamic_frame_type; dynamic() : frame(0) {} template static typename expression::dynamic_member, self_type *>::type const init(self_type * scope) { return expression:: dynamic_member, self_type *>:: make(mpl::int_(), scope); } typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; mutable dynamic_frame_type* frame; }; template struct dynamic : noncopyable { typedef vector10 tuple_type; typedef dynamic self_type; typedef dynamic_frame dynamic_frame_type; dynamic() : frame(0) {} template static typename expression::dynamic_member, self_type *>::type const init(self_type * scope) { return expression:: dynamic_member, self_type *>:: make(mpl::int_(), scope); } typedef typename expression::dynamic_member< mpl::int_< 0> , self_type * >::type const member1; typedef typename expression::dynamic_member< mpl::int_< 1> , self_type * >::type const member2; typedef typename expression::dynamic_member< mpl::int_< 2> , self_type * >::type const member3; typedef typename expression::dynamic_member< mpl::int_< 3> , self_type * >::type const member4; typedef typename expression::dynamic_member< mpl::int_< 4> , self_type * >::type const member5; typedef typename expression::dynamic_member< mpl::int_< 5> , self_type * >::type const member6; typedef typename expression::dynamic_member< mpl::int_< 6> , self_type * >::type const member7; typedef typename expression::dynamic_member< mpl::int_< 7> , self_type * >::type const member8; typedef typename expression::dynamic_member< mpl::int_< 8> , self_type * >::type const member9; typedef typename expression::dynamic_member< mpl::int_< 9> , self_type * >::type const member10; mutable dynamic_frame_type* frame; };