00001
00002
00003
00004
00005
00006
00007
00008
00009 #include <lestes/std/ucn_string.hh>
00010
00011 #include <lestes/std/list.hh>
00012 #include <lestes/std/pair.hh>
00013 #include <lestes/std/reflect.hh>
00014
00015 #include <lestes/md/literals/literal_info.g.hh>
00016
00017 package(lestes);
00018 package(md);
00019 package(literals);
00020
00021
00022
00023
00024
00025
00026
00027
00028 ptr< li_simple > li_simple::create(ptr< ::lestes::md::types::tm_data_type_base > a__literal_info_base__type,
00029 ucn_string a__li_simple_base__data)
00030 {
00031 return ptr< li_simple > ( new li_simple(a__literal_info_base__type,
00032 a__li_simple_base__data) );
00033 }
00034
00035
00036
00037
00038
00039 li_simple::li_simple (ptr< ::lestes::md::types::tm_data_type_base > a__literal_info_base__type,
00040 ucn_string a__li_simple_base__data)
00041 : li_simple_base(a__literal_info_base__type,
00042 a__li_simple_base__data)
00043 {}
00044
00045 ptr< object::reflection_list > li_simple::reflection_get() const
00046 {
00047 if (!reflection) {
00048 typedef class_reflection::field_metadata md;
00049 typedef class_reflection::field_metadata_list mdlist;
00050 ptr<mdlist> mdl = mdlist::create();
00051 reflection = reflection_list::create( li_simple_base::reflection_get() );
00052 reflection->push_back( class_reflection::create( "li_simple", mdl ) );
00053 }
00054 return reflection;
00055 }
00056
00057 ptr< object::field_list_list > li_simple::field_values_get() const
00058 {
00059 ptr < field_list_list > result = li_simple_base::field_values_get();
00060 return result;
00061 }
00062
00063
00064
00065
00066
00067
00068 void li_simple::gc_mark()
00069 {
00070 li_simple_base::gc_mark();
00071 }
00072
00073
00074
00075
00076
00077
00078
00079
00080
00081 ptr< li_compound > li_compound::create(ptr< ::lestes::md::types::tm_data_type_base > a__literal_info_base__type,
00082 ptr< ::lestes::std::list< srp< literal_info_base > > > a__li_compound_base__items)
00083 {
00084 return ptr< li_compound > ( new li_compound(a__literal_info_base__type,
00085 a__li_compound_base__items) );
00086 }
00087
00088
00089
00090
00091
00092 li_compound::li_compound (ptr< ::lestes::md::types::tm_data_type_base > a__literal_info_base__type,
00093 ptr< ::lestes::std::list< srp< literal_info_base > > > a__li_compound_base__items)
00094 : li_compound_base(a__literal_info_base__type,
00095 a__li_compound_base__items)
00096 {}
00097
00098 ptr< object::reflection_list > li_compound::reflection_get() const
00099 {
00100 if (!reflection) {
00101 typedef class_reflection::field_metadata md;
00102 typedef class_reflection::field_metadata_list mdlist;
00103 ptr<mdlist> mdl = mdlist::create();
00104 reflection = reflection_list::create( li_compound_base::reflection_get() );
00105 reflection->push_back( class_reflection::create( "li_compound", mdl ) );
00106 }
00107 return reflection;
00108 }
00109
00110 ptr< object::field_list_list > li_compound::field_values_get() const
00111 {
00112 ptr < field_list_list > result = li_compound_base::field_values_get();
00113 return result;
00114 }
00115
00116
00117
00118
00119
00120
00121 void li_compound::gc_mark()
00122 {
00123 li_compound_base::gc_mark();
00124 }
00125
00126
00127
00128
00129
00130 ptr<object::reflection_list> li_simple::reflection = reflection;
00131 ptr<object::reflection_list> li_compound::reflection = reflection;
00132
00133 end_package(literals);
00134 end_package(md);
00135 end_package(lestes);
00136