00001
00002
00003
00004
00005
00006
00007
00008
00009 #include <lestes/std/list.hh>
00010 #include <lestes/std/pair.hh>
00011 #include <lestes/std/reflect.hh>
00012
00013 #include <lestes/md/instructions/instruction_group.g.hh>
00014
00015 package(lestes);
00016 package(md);
00017 package(instructions);
00018
00019
00020
00021
00022
00023
00024
00025
00026 ptr< instruction_group > instruction_group::create(ptr< ::lestes::std::vector< ulint > > a__instruction_group_base__instructions,
00027 ptr< ::lestes::std::vector< ulint > > a__instruction_group_base__input_operand_pids,
00028 ptr< ::lestes::std::vector< ulint > > a__instruction_group_base__output_operand_pids,
00029 ptr< ::lestes::std::vector< ulint > > a__instruction_group_base__input_operand_refs,
00030 ptr< ::lestes::std::vector< ulint > > a__instruction_group_base__output_operand_refs)
00031 {
00032 return ptr< instruction_group > ( new instruction_group(a__instruction_group_base__instructions,
00033 a__instruction_group_base__input_operand_pids,
00034 a__instruction_group_base__output_operand_pids,
00035 a__instruction_group_base__input_operand_refs,
00036 a__instruction_group_base__output_operand_refs) );
00037 }
00038
00039
00040
00041
00042
00043 instruction_group::instruction_group (ptr< ::lestes::std::vector< ulint > > a__instruction_group_base__instructions,
00044 ptr< ::lestes::std::vector< ulint > > a__instruction_group_base__input_operand_pids,
00045 ptr< ::lestes::std::vector< ulint > > a__instruction_group_base__output_operand_pids,
00046 ptr< ::lestes::std::vector< ulint > > a__instruction_group_base__input_operand_refs,
00047 ptr< ::lestes::std::vector< ulint > > a__instruction_group_base__output_operand_refs)
00048 : instruction_group_base(a__instruction_group_base__instructions,
00049 a__instruction_group_base__input_operand_pids,
00050 a__instruction_group_base__output_operand_pids,
00051 a__instruction_group_base__input_operand_refs,
00052 a__instruction_group_base__output_operand_refs)
00053 {}
00054
00055 ptr< object::reflection_list > instruction_group::reflection_get() const
00056 {
00057 if (!reflection) {
00058 typedef class_reflection::field_metadata md;
00059 typedef class_reflection::field_metadata_list mdlist;
00060 ptr<mdlist> mdl = mdlist::create();
00061 reflection = reflection_list::create( instruction_group_base::reflection_get() );
00062 reflection->push_back( class_reflection::create( "instruction_group", mdl ) );
00063 }
00064 return reflection;
00065 }
00066
00067 ptr< object::field_list_list > instruction_group::field_values_get() const
00068 {
00069 ptr < field_list_list > result = instruction_group_base::field_values_get();
00070 return result;
00071 }
00072
00073
00074
00075
00076
00077
00078 void instruction_group::gc_mark()
00079 {
00080 instruction_group_base::gc_mark();
00081 }
00082
00083
00084
00085
00086
00087 ptr<object::reflection_list> instruction_group::reflection = reflection;
00088
00089 end_package(instructions);
00090 end_package(md);
00091 end_package(lestes);
00092