{
namespace lexical
{
- namespace rule
- {
- //////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////////////////////////////////////////////////
+
+ template <
+ typename T0 = EmptyType,
+ typename T1 = EmptyType,
+ typename T2 = EmptyType,
+ typename T3 = EmptyType,
+ typename T4 = EmptyType,
+ typename T5 = EmptyType,
+ typename T6 = EmptyType,
+ typename T7 = EmptyType,
+ typename T8 = EmptyType,
+ typename T9 = EmptyType,
+ typename T10 = EmptyType,
+ typename T11 = EmptyType,
+ typename T12 = EmptyType,
+ typename T13 = EmptyType,
+ typename T14 = EmptyType,
+ typename T15 = EmptyType,
+ typename T16 = EmptyType,
+ typename T17 = EmptyType,
+ typename T18 = EmptyType,
+ typename T19 = EmptyType,
+ typename T20 = EmptyType,
+ typename T21 = EmptyType,
+ typename T22 = EmptyType,
+ typename T23 = EmptyType,
+ typename T24 = EmptyType,
+ typename T25 = EmptyType,
+ typename T26 = EmptyType,
+ typename T27 = EmptyType,
+ typename T28 = EmptyType,
+ typename T29 = EmptyType,
+ typename T30 = EmptyType,
+ typename T31 = EmptyType,
+ typename T32 = EmptyType
+ >
+ struct seq : tuple<
+ T0,
+ T1,
+ T2,
+ T3,
+ T4,
+ T5,
+ T6,
+ T7,
+ T8,
+ T9,
+ T10,
+ T11,
+ T12,
+ T13,
+ T14,
+ T15,
+ T16,
+ T17,
+ T18,
+ T19,
+ T20,
+ T21,
+ T22,
+ T23,
+ T24,
+ T25,
+ T26,
+ T27,
+ T28,
+ T29,
+ T30,
+ T31,
+ T32>
- template <
- typename T0 = EmptyType,
- typename T1 = EmptyType,
- typename T2 = EmptyType,
- typename T3 = EmptyType,
- typename T4 = EmptyType,
- typename T5 = EmptyType,
- typename T6 = EmptyType,
- typename T7 = EmptyType,
- typename T8 = EmptyType,
- typename T9 = EmptyType,
- typename T10 = EmptyType,
- typename T11 = EmptyType,
- typename T12 = EmptyType,
- typename T13 = EmptyType,
- typename T14 = EmptyType,
- typename T15 = EmptyType,
- typename T16 = EmptyType,
- typename T17 = EmptyType,
- typename T18 = EmptyType,
- typename T19 = EmptyType,
- typename T20 = EmptyType,
- typename T21 = EmptyType,
- typename T22 = EmptyType,
- typename T23 = EmptyType,
- typename T24 = EmptyType,
- typename T25 = EmptyType,
- typename T26 = EmptyType,
- typename T27 = EmptyType,
- typename T28 = EmptyType,
- typename T29 = EmptyType,
- typename T30 = EmptyType,
- typename T31 = EmptyType,
- typename T32 = EmptyType
- >
- struct seq : tuple<
+ /*
+ typename _seq::te<T0>::type,
+ typename _seq::te<T1>::type,
+ typename _seq::te<T2>::type,
+ typename _seq::te<T3>::type,
+ typename _seq::te<T4>::type,
+ typename _seq::te<T5>::type,
+ typename _seq::te<T6>::type,
+ typename _seq::te<T7>::type,
+ typename _seq::te<T8>::type,
+ typename _seq::te<T9>::type,
+ typename _seq::te<T10>::type,
+ typename _seq::te<T11>::type,
+ typename _seq::te<T12>::type,
+ typename _seq::te<T13>::type,
+ typename _seq::te<T14>::type,
+ typename _seq::te<T15>::type,
+ typename _seq::te<T16>::type,
+ typename _seq::te<T17>::type,
+ typename _seq::te<T18>::type,
+ typename _seq::te<T19>::type,
+ typename _seq::te<T20>::type,
+ typename _seq::te<T21>::type,
+ typename _seq::te<T22>::type,
+ typename _seq::te<T23>::type,
+ typename _seq::te<T24>::type,
+ typename _seq::te<T25>::type,
+ typename _seq::te<T26>::type,
+ typename _seq::te<T27>::type,
+ typename _seq::te<T28>::type,
+ typename _seq::te<T29>::type,
+ typename _seq::te<T30>::type,
+ typename _seq::te<T31>::type,
+ typename _seq::te<T32>::type>
+ */
+ {
+ private:
+ typedef tuple<
T0,
T1,
T2,
T29,
T30,
T31,
- T32>
-
- /*
- typename _seq::te<T0>::type,
- typename _seq::te<T1>::type,
- typename _seq::te<T2>::type,
- typename _seq::te<T3>::type,
- typename _seq::te<T4>::type,
- typename _seq::te<T5>::type,
- typename _seq::te<T6>::type,
- typename _seq::te<T7>::type,
- typename _seq::te<T8>::type,
- typename _seq::te<T9>::type,
- typename _seq::te<T10>::type,
- typename _seq::te<T11>::type,
- typename _seq::te<T12>::type,
- typename _seq::te<T13>::type,
- typename _seq::te<T14>::type,
- typename _seq::te<T15>::type,
- typename _seq::te<T16>::type,
- typename _seq::te<T17>::type,
- typename _seq::te<T18>::type,
- typename _seq::te<T19>::type,
- typename _seq::te<T20>::type,
- typename _seq::te<T21>::type,
- typename _seq::te<T22>::type,
- typename _seq::te<T23>::type,
- typename _seq::te<T24>::type,
- typename _seq::te<T25>::type,
- typename _seq::te<T26>::type,
- typename _seq::te<T27>::type,
- typename _seq::te<T28>::type,
- typename _seq::te<T29>::type,
- typename _seq::te<T30>::type,
- typename _seq::te<T31>::type,
- typename _seq::te<T32>::type>
- */
- {
- private:
- typedef tuple<
- T0,
- T1,
- T2,
- T3,
- T4,
- T5,
- T6,
- T7,
- T8,
- T9,
- T10,
- T11,
- T12,
- T13,
- T14,
- T15,
- T16,
- T17,
- T18,
- T19,
- T20,
- T21,
- T22,
- T23,
- T24,
- T25,
- T26,
- T27,
- T28,
- T29,
- T30,
- T31,
- T32> _Base;
- public:
- // Template Type Ailiases
- typedef T0 _T0;
- typedef T1 _T1;
- typedef T2 _T2;
- typedef T3 _T3;
- typedef T4 _T4;
- typedef T5 _T5;
- typedef T6 _T6;
- typedef T7 _T7;
- typedef T8 _T8;
- typedef T9 _T9;
- typedef T10 _T10;
- typedef T11 _T11;
- typedef T12 _T12;
- typedef T13 _T13;
- typedef T14 _T14;
- typedef T15 _T15;
- typedef T16 _T16;
- typedef T17 _T17;
- typedef T18 _T18;
- typedef T19 _T19;
- typedef T20 _T20;
- typedef T21 _T21;
- typedef T22 _T22;
- typedef T23 _T23;
- typedef T24 _T24;
- typedef T25 _T25;
- typedef T26 _T26;
- typedef T27 _T27;
- typedef T28 _T28;
- typedef T29 _T29;
- typedef T30 _T30;
- typedef T31 _T31;
- typedef T32 _T32;
-
- /*static const int length =
- length_of<T1>::value +
- length_of<T2>::value +
- length_of<T3>::value +
- length_of<T4>::value +
- length_of<T5>::value +
- length_of<T6>::value +
- length_of<T7>::value +
- length_of<T8>::value +
- length_of<T9>::value +
- length_of<T10>::value +
- length_of<T11>::value +
- length_of<T12>::value +
- length_of<T13>::value +
- length_of<T14>::value +
- length_of<T15>::value +
- length_of<T16>::value +
- length_of<T17>::value +
- length_of<T18>::value +
- length_of<T19>::value +
- length_of<T20>::value +
- length_of<T21>::value +
- length_of<T22>::value +
- length_of<T23>::value +
- length_of<T24>::value +
- length_of<T25>::value +
- length_of<T26>::value +
- length_of<T27>::value +
- length_of<T28>::value +
- length_of<T29>::value +
- length_of<T30>::value +
- length_of<T31>::value +
- length_of<T32>::value +
- 0;*/
+ T32> _Base;
+ public:
+ // Template Type Ailiases
+ typedef T0 _T0;
+ typedef T1 _T1;
+ typedef T2 _T2;
+ typedef T3 _T3;
+ typedef T4 _T4;
+ typedef T5 _T5;
+ typedef T6 _T6;
+ typedef T7 _T7;
+ typedef T8 _T8;
+ typedef T9 _T9;
+ typedef T10 _T10;
+ typedef T11 _T11;
+ typedef T12 _T12;
+ typedef T13 _T13;
+ typedef T14 _T14;
+ typedef T15 _T15;
+ typedef T16 _T16;
+ typedef T17 _T17;
+ typedef T18 _T18;
+ typedef T19 _T19;
+ typedef T20 _T20;
+ typedef T21 _T21;
+ typedef T22 _T22;
+ typedef T23 _T23;
+ typedef T24 _T24;
+ typedef T25 _T25;
+ typedef T26 _T26;
+ typedef T27 _T27;
+ typedef T28 _T28;
+ typedef T29 _T29;
+ typedef T30 _T30;
+ typedef T31 _T31;
+ typedef T32 _T32;
- ///////////////////////////////////////////////////
-
- seq(){}
- seq(const T0& t0) : _Base(t0) {}
- seq(const T0& t0, const T1& t1) : _Base(t0,t1) {}
- seq(const T0& t0, const T1& t1, const T2& t2) : _Base(t0,t1,t2) {}
- seq(const T0& t0, const T1& t1, const T2& t2, const T3& t3) : _Base(t0,t1,t2,t3) {}
- seq(const T0& t0, const T1& t1, const T2& t2, const T3& t3, const T4& t4) : _Base(t0,t1,t2,t3,t4) {}
- seq(const T0& t0, const T1& t1, const T2& t2, const T3& t3, const T4& t4, const T5& t5) :
- _Base(t0,t1,t2,t3,t4,t5) {}
- seq(const T0& t0, const T1& t1, const T2& t2, const T3& t3, const T4& t4, const T5& t5, const T6& t6) :
- _Base(t0,t1,t2,t3,t4,t5,t6) {}
- seq(const T0& t0, const T1& t1, const T2& t2, const T3& t3, const T4& t4, const T5& t5, const T6& t6, const T7& t7) :
- _Base(t0,t1,t2,t3,t4,t5,t6,t7) {}
- seq(const T0& t0, const T1& t1, const T2& t2, const T3& t3, const T4& t4, const T5& t5, const T6& t6, const T7& t7, const T8& t8) :
- _Base(t0,t1,t2,t3,t4,t5,t6,t7,t8) {}
-
- seq(
- const T0& t0, const T1& t1, const T2& t2,
- const T3& t3, const T4& t4, const T5& t5,
- const T6& t6, const T7& t7, const T8& t8,
- const T9& t9) :
- _Base(t0,t1,t2,t3,t4,t5,t6,t7,t8,t9) {}
-
- seq(
- const T0& t0, const T1& t1, const T2& t2,
- const T3& t3, const T4& t4, const T5& t5,
- const T6& t6, const T7& t7, const T8& t8,
- const T9& t9, const T10& t10) :
- _Base(t0,t1,t2,t3,t4,t5,t6,t7,t8,t9,t10) {}
-
- ///////////////////////////////////////////////////
+ /*static const int length =
+ length_of<T1>::value +
+ length_of<T2>::value +
+ length_of<T3>::value +
+ length_of<T4>::value +
+ length_of<T5>::value +
+ length_of<T6>::value +
+ length_of<T7>::value +
+ length_of<T8>::value +
+ length_of<T9>::value +
+ length_of<T10>::value +
+ length_of<T11>::value +
+ length_of<T12>::value +
+ length_of<T13>::value +
+ length_of<T14>::value +
+ length_of<T15>::value +
+ length_of<T16>::value +
+ length_of<T17>::value +
+ length_of<T18>::value +
+ length_of<T19>::value +
+ length_of<T20>::value +
+ length_of<T21>::value +
+ length_of<T22>::value +
+ length_of<T23>::value +
+ length_of<T24>::value +
+ length_of<T25>::value +
+ length_of<T26>::value +
+ length_of<T27>::value +
+ length_of<T28>::value +
+ length_of<T29>::value +
+ length_of<T30>::value +
+ length_of<T31>::value +
+ length_of<T32>::value +
+ 0;*/
- template <typename _It, typename _Param>
- bool analyze(_It& it, _Param& param)
- {
- T0 t0;
- _It it_work = it;
- if ( t0.analyze(it_work, param) == false )
- return false;
+ ///////////////////////////////////////////////////
+
+ seq(){}
+ seq(const T0& t0) : _Base(t0) {}
+ seq(const T0& t0, const T1& t1) : _Base(t0,t1) {}
+ seq(const T0& t0, const T1& t1, const T2& t2) : _Base(t0,t1,t2) {}
+ seq(const T0& t0, const T1& t1, const T2& t2, const T3& t3) : _Base(t0,t1,t2,t3) {}
+ seq(const T0& t0, const T1& t1, const T2& t2, const T3& t3, const T4& t4) : _Base(t0,t1,t2,t3,t4) {}
+ seq(const T0& t0, const T1& t1, const T2& t2, const T3& t3, const T4& t4, const T5& t5) :
+ _Base(t0,t1,t2,t3,t4,t5) {}
+ seq(const T0& t0, const T1& t1, const T2& t2, const T3& t3, const T4& t4, const T5& t5, const T6& t6) :
+ _Base(t0,t1,t2,t3,t4,t5,t6) {}
+ seq(const T0& t0, const T1& t1, const T2& t2, const T3& t3, const T4& t4, const T5& t5, const T6& t6, const T7& t7) :
+ _Base(t0,t1,t2,t3,t4,t5,t6,t7) {}
+ seq(const T0& t0, const T1& t1, const T2& t2, const T3& t3, const T4& t4, const T5& t5, const T6& t6, const T7& t7, const T8& t8) :
+ _Base(t0,t1,t2,t3,t4,t5,t6,t7,t8) {}
- seq<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19,
- T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32> t1;
- if ( t1.analyze(it_work, param) == false )
- return false;
-
- it = it_work;
- return true;
- }
-
- template <typename _Strm, typename _Document>
- bool generate(_Strm& strm, _Document& doc) const
- {
- /*
- T0 t0;
- if ( t0.generate(strm, doc) == false )
- return false;
+ seq(
+ const T0& t0, const T1& t1, const T2& t2,
+ const T3& t3, const T4& t4, const T5& t5,
+ const T6& t6, const T7& t7, const T8& t8,
+ const T9& t9) :
+ _Base(t0,t1,t2,t3,t4,t5,t6,t7,t8,t9) {}
- seq<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19,
- T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32> t1;
- if ( t1.generate(strm, doc) == false )
- return false;
-
- return true;
- */
-
- return _seq_generate(strm, doc, typename _Base::_Next());
- }
- };
+ seq(
+ const T0& t0, const T1& t1, const T2& t2,
+ const T3& t3, const T4& t4, const T5& t5,
+ const T6& t6, const T7& t7, const T8& t8,
+ const T9& t9, const T10& t10) :
+ _Base(t0,t1,t2,t3,t4,t5,t6,t7,t8,t9,t10) {}
- ///////////////////////////////////////////////////////////////////////////////////////////////////
+ ///////////////////////////////////////////////////
- template <typename T1>
- struct seq<T1, true_nop>
+ template <typename _It, typename _Param>
+ bool parse(_It& it, _Param& param)
{
- public:
- typedef T1 _T1;
-
- //static const unsigned int length = T1::length;
-
- template <typename _It, typename _Param>
- bool analyze(_It& it, _Param& param)
- {
- T1 t1;
- _It it_work = it;
- if ( t1.analyze(it_work, param) == false )
- return false;
-
- it = it_work;
+ T0 t0;
+ _It it_work = it;
+ if ( t0.analyze(it_work, param) == false )
+ return false;
- return true;
- }
+ seq<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19,
+ T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32> t1;
+ if ( t1.analyze(it_work, param) == false )
+ return false;
- template <typename _Strm, typename _Document>
- bool generate(_Strm& strm, _Document& doc) const
- {
- /*T1 t1;
- if ( t1.generate(strm, doc) == false )
- return false;
-
- return true;*/
- return _seq_generate(strm, doc, EmptyType());
- }
- };
-
- //////////////////////////////////////////////////////////////
-
- }//end of namespace rule
-
- //////////////////////////////////////////////////////////////
-
- // generate/analyze() Functions
-
- // analyze
- /* template <typename _It, typename _Param>
- bool analyze(_It& it, _Param& param)
- {
- T1 t1;
- _It it_work = it;
- if ( t1.analyze(it_work, param) == false )
- return false;
-
- rule::seq<T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19,
- T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32> t2;
- if ( t2.analyze(it_work, param) == false )
- return false;
+ it = it_work;
+ return true;
+ }
- it = it_work;
- return true;
- }*/
-
- // generate
- template <
- typename _Strm,
- typename T0,
- typename T1,
- typename T2,
- typename T3,
- typename T4,
- typename T5,
- typename T6,
- typename T7,
- typename T8,
- typename T9,
- typename T10,
- typename T11,
- typename T12,
- typename T13,
- typename T14,
- typename T15,
- typename T16,
- typename T17,
- typename T18,
- typename T19,
- typename T20,
- typename T21,
- typename T22,
- typename T23,
- typename T24,
- typename T25,
- typename T26,
- typename T27,
- typename T28,
- typename T29,
- typename T30,
- typename T31,
- typename T32>
- bool generate(_Strm& strm, rule::seq<T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,
- T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32>& doc)
- {
- return _seq_generate(strm, doc, typename rule::seq<T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,
- T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32>::_Next());
- /*if ( ::roast::lexical::generate(strm, doc.get<0>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.next) == false )
- return false;
+ template <typename _Strm, typename _Document>
+ bool generate(_Strm& strm, _Document& doc) const
+ {
+ /*
+ T0 t0;
+ if ( t0.generate(strm, doc) == false )
+ return false;
- /*
- if ( ::roast::lexical::generate(strm, doc.get<0>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<1>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<2>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<3>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<4>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<5>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<6>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<7>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<8>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<9>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<10>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<11>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<12>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<13>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<14>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<15>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<16>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<17>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<18>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<19>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<20>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<21>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<22>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<23>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<24>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<25>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<26>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<27>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<28>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<29>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<30>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<31>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.get<32>()) == false )
- return false;
- */
+ seq<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19,
+ T20, T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32> t1;
+ if ( t1.generate(strm, doc) == false )
+ return false;
- //return true;
- }
-
- /*
- // generate
- template <typename _Strm, typename _NestType>
- bool generate(_Strm& strm, _NestType& doc)
- {
- if ( ::roast::lexical::generate(strm, doc.get<0>()) == false )
- return false;
- if ( ::roast::lexical::generate(strm, doc.next) == false )
- return false;
+ return true;
+ */
- return true;
- }*/
+ return _seq_generate(strm, doc, typename _Base::_Next());
+ }
+ };
- template <int N> void get(); // for gcc 4.4.5 compilable
-
- // generate
- template <typename _Strm, typename _NestType>
- bool _seq_generate(_Strm& strm, _NestType& doc, const EmptyType& )
- {
- //if ( generate(strm, doc.get<0>()) == false )
- if ( doc.get<0>().generate(strm, doc.get<0>()) == false )
- return false;
-
- return true;
- }
-
- // generate
- template <typename _Strm, typename _NestType, typename _NextType>
- bool _seq_generate(_Strm& strm, _NestType& doc, const _NextType& )
- {
- //if ( generate(strm, doc.get<0>()) == false )
- if ( doc.get<0>().generate(strm, doc.get<0>()) == false )
- return false;
+ ///////////////////////////////////////////////////////////////////////////////////////////////////
- if ( _seq_generate(strm, doc.next, typename _NextType::_Next()) == false )
- return false;
-
- return true;
- }
-
- /* template <typename T1>
+ template <typename T1>
struct seq<T1, true_nop>
{
public:
//static const unsigned int length = T1::length;
- // analyze (term)
template <typename _It, typename _Param>
bool analyze(_It& it, _Param& param)
{
return true;
}
- // analyze (term)
template <typename _Strm, typename _Document>
- bool generate(_Strm& strm, _Document& doc)
+ bool generate(_Strm& strm, _Document& doc) const
{
- T1 t1;
+ /*T1 t1;
if ( t1.generate(strm, doc) == false )
return false;
- return true;
+ return true;*/
+ return _seq_generate(strm, doc, EmptyType());
}
- };*/
+ };
//////////////////////////////////////////////////////////////