#include <pi_mem_factory.g.hh>
Inheritance diagram for lestes::backend_v2::intercode::pi_mem_factory:

Public Types | |
| enum | kind_type { MF_DECL, MF_LIT, MF_STACK, MF_PREG, MF_TEMP, MF_MEMBER, MF_PTR_DEREF } |
Public Member Functions | |
| ptr< ::lestes::md::mem::allocator_base > | allocator_get () const |
| The method allocator_get returns the value of the field pi_mem_factory::allocator. | |
| void | allocator_set (const ptr< ::lestes::md::mem::allocator_base > &) |
| The method allocator_set sets the field pi_mem_factory::allocator to the given value. | |
| ptr< ::lestes::md::types::tm_data_type_base > | type_get () const |
| The method type_get returns the value of the field pi_mem_factory::type. | |
| void | type_set (const ptr< ::lestes::md::types::tm_data_type_base > &) |
| The method type_set sets the field pi_mem_factory::type to the given value. | |
| virtual kind_type | kind_get () override |
| virtual ptr< ::lestes::backend_v2::intercode::pi_mem > | get_mem (ptr< ::lestes::backend_v2::intercode::pi_pi > origin) override |
| virtual ptr< ::lestes::backend_v2::intercode::ge_operand_mem > | get_ge_mem (ptr< ::lestes::backend_v2::intercode::ge_pi > origin) override |
| virtual ptr< reflection_list > | reflection_get () const |
| for purposes of dumping | |
| virtual ptr< field_list_list > | field_values_get () const |
| for purposes of dumping | |
Protected Member Functions | |
| pi_mem_factory (ptr< ::lestes::md::mem::allocator_base > a__pi_mem_factory__allocator, ptr< ::lestes::md::types::tm_data_type_base > a__pi_mem_factory__type) | |
| Generated constructor for class pi_mem_factory. | |
| virtual void | gc_mark () |
| Marking routine for class pi_mem_factory. | |
Private Attributes | |
| srp< ::lestes::md::mem::allocator_base > | allocator |
| An allocator that has allocated the factory. | |
| srp< ::lestes::md::types::tm_data_type_base > | type |
| A data type of factory. | |
Static Private Attributes | |
| static ptr< reflection_list > | reflection = reflection |
Instance of pi_mem_factory represents unique place in memory. It can create instances of pi-level or ge-level memory operands, that allows accessing this place.
Definition at line 123 of file pi_mem_factory.g.hh.
Definition at line 125 of file pi_mem_factory.g.hh.
00125 { 00126 MF_DECL, 00127 MF_LIT, 00128 MF_STACK, 00129 MF_PREG, 00130 MF_TEMP, 00131 MF_MEMBER, 00132 MF_PTR_DEREF 00133 };
| lestes::backend_v2::intercode::pi_mem_factory::pi_mem_factory | ( | ptr< ::lestes::md::mem::allocator_base > | a__pi_mem_factory__allocator, | |
| ptr< ::lestes::md::types::tm_data_type_base > | a__pi_mem_factory__type | |||
| ) | [protected] |
Generated constructor for class pi_mem_factory.
Generated constructor for class pi_mem_factory.
Definition at line 67 of file pi_mem_factory.g.cc.
00069 : ::lestes::std::object(), allocator(a__pi_mem_factory__allocator), type(checked(a__pi_mem_factory__type)) 00070 {}
| ptr<::lestes::md::mem::allocator_base > lestes::backend_v2::intercode::pi_mem_factory::allocator_get | ( | ) | const |
The method allocator_get returns the value of the field pi_mem_factory::allocator.
Definition at line 31 of file pi_mem_factory.g.cc.
References allocator.
00032 { 00033 return allocator; 00034 }
| void lestes::backend_v2::intercode::pi_mem_factory::allocator_set | ( | const ptr< ::lestes::md::mem::allocator_base > & | x | ) |
The method allocator_set sets the field pi_mem_factory::allocator to the given value.
| [in] | x | The new value to set pi_mem_factory::allocator to. |
Definition at line 40 of file pi_mem_factory.g.cc.
References allocator.
00041 { 00042 pi_mem_factory::allocator = x; 00043 }
| ptr<::lestes::md::types::tm_data_type_base > lestes::backend_v2::intercode::pi_mem_factory::type_get | ( | ) | const |
The method type_get returns the value of the field pi_mem_factory::type.
Definition at line 49 of file pi_mem_factory.g.cc.
References type.
00050 { 00051 return type; 00052 }
| void lestes::backend_v2::intercode::pi_mem_factory::type_set | ( | const ptr< ::lestes::md::types::tm_data_type_base > & | x | ) |
The method type_set sets the field pi_mem_factory::type to the given value.
| [in] | x | The new value to set pi_mem_factory::type to. |
Definition at line 58 of file pi_mem_factory.g.cc.
References type.
00059 { 00060 pi_mem_factory::type = x; 00061 }
| virtual kind_type lestes::backend_v2::intercode::pi_mem_factory::kind_get | ( | ) | [pure virtual] |
| virtual ptr< ::lestes::backend_v2::intercode::pi_mem > lestes::backend_v2::intercode::pi_mem_factory::get_mem | ( | ptr< ::lestes::backend_v2::intercode::pi_pi > | origin | ) | [pure virtual] |
| virtual ptr< ::lestes::backend_v2::intercode::ge_operand_mem > lestes::backend_v2::intercode::pi_mem_factory::get_ge_mem | ( | ptr< ::lestes::backend_v2::intercode::ge_pi > | origin | ) | [pure virtual] |
| ptr< object::reflection_list > lestes::backend_v2::intercode::pi_mem_factory::reflection_get | ( | ) | const [virtual] |
for purposes of dumping
Reimplemented from lestes::std::object.
Reimplemented in lestes::backend_v2::intercode::pi_mf_stack, lestes::backend_v2::intercode::pi_mf_decl, lestes::backend_v2::intercode::pi_mf_lit, lestes::backend_v2::intercode::pi_mf_member, lestes::backend_v2::intercode::pi_mf_preg, and lestes::backend_v2::intercode::pi_mf_ptr_deref.
Definition at line 72 of file pi_mem_factory.g.cc.
References lestes::std::list< T >::create(), reflection, and lestes::std::object::reflection_get().
Referenced by lestes::backend_v2::intercode::pi_mf_ptr_deref::reflection_get(), lestes::backend_v2::intercode::pi_mf_preg::reflection_get(), lestes::backend_v2::intercode::pi_mf_member::reflection_get(), lestes::backend_v2::intercode::pi_mf_lit::reflection_get(), lestes::backend_v2::intercode::pi_mf_decl::reflection_get(), and lestes::backend_v2::intercode::pi_mf_stack::reflection_get().
00073 { 00074 if (!reflection) { 00075 typedef class_reflection::field_metadata md; 00076 typedef class_reflection::field_metadata_list mdlist; 00077 ptr<mdlist> mdl = mdlist::create(); 00078 mdl->push_back( md::create( "allocator", "allocator_base" ) ); 00079 mdl->push_back( md::create( "type", "tm_data_type_base" ) ); 00080 reflection = reflection_list::create( ::lestes::std::object::reflection_get() ); 00081 reflection->push_back( class_reflection::create( "pi_mem_factory", mdl ) ); 00082 } 00083 return reflection; 00084 }
| ptr< object::field_list_list > lestes::backend_v2::intercode::pi_mem_factory::field_values_get | ( | ) | const [virtual] |
for purposes of dumping
Reimplemented from lestes::std::object.
Reimplemented in lestes::backend_v2::intercode::pi_mf_stack, lestes::backend_v2::intercode::pi_mf_decl, lestes::backend_v2::intercode::pi_mf_lit, lestes::backend_v2::intercode::pi_mf_member, lestes::backend_v2::intercode::pi_mf_preg, and lestes::backend_v2::intercode::pi_mf_ptr_deref.
Definition at line 86 of file pi_mem_factory.g.cc.
References lestes::std::list< T >::create(), and lestes::std::object::field_values_get().
Referenced by lestes::backend_v2::intercode::pi_mf_ptr_deref::field_values_get(), lestes::backend_v2::intercode::pi_mf_preg::field_values_get(), lestes::backend_v2::intercode::pi_mf_member::field_values_get(), lestes::backend_v2::intercode::pi_mf_lit::field_values_get(), lestes::backend_v2::intercode::pi_mf_decl::field_values_get(), and lestes::backend_v2::intercode::pi_mf_stack::field_values_get().
00087 { 00088 ptr < field_list_list > result = ::lestes::std::object::field_values_get(); 00089 result->push_back( value_list::create() ); 00090 result->back()->push_back( this->allocator ); 00091 result->push_back( value_list::create() ); 00092 result->back()->push_back( this->type ); 00093 return result; 00094 }
| void lestes::backend_v2::intercode::pi_mem_factory::gc_mark | ( | void | ) | [protected, virtual] |
Marking routine for class pi_mem_factory.
Marking routine is used for garbage collection.
Reimplemented from lestes::std::mem::keystone.
Reimplemented in lestes::backend_v2::intercode::pi_mf_stack, lestes::backend_v2::intercode::pi_mf_decl, lestes::backend_v2::intercode::pi_mf_lit, lestes::backend_v2::intercode::pi_mf_member, lestes::backend_v2::intercode::pi_mf_preg, and lestes::backend_v2::intercode::pi_mf_ptr_deref.
Definition at line 101 of file pi_mem_factory.g.cc.
References lestes::std::mem::keystone::gc_mark().
Referenced by lestes::backend_v2::intercode::pi_mf_ptr_deref::gc_mark(), lestes::backend_v2::intercode::pi_mf_preg::gc_mark(), lestes::backend_v2::intercode::pi_mf_member::gc_mark(), lestes::backend_v2::intercode::pi_mf_lit::gc_mark(), lestes::backend_v2::intercode::pi_mf_decl::gc_mark(), and lestes::backend_v2::intercode::pi_mf_stack::gc_mark().
00102 { 00103 ::lestes::std::object::gc_mark(); 00104 }
srp< ::lestes::md::mem::allocator_base > lestes::backend_v2::intercode::pi_mem_factory::allocator [private] |
An allocator that has allocated the factory.
Definition at line 171 of file pi_mem_factory.g.hh.
Referenced by allocator_get(), and allocator_set().
srp< ::lestes::md::types::tm_data_type_base > lestes::backend_v2::intercode::pi_mem_factory::type [private] |
A data type of factory.
Definition at line 173 of file pi_mem_factory.g.hh.
Referenced by type_get(), and type_set().
ptr< object::reflection_list > lestes::backend_v2::intercode::pi_mem_factory::reflection = reflection [static, private] |
Reimplemented from lestes::std::object.
Reimplemented in lestes::backend_v2::intercode::pi_mf_stack, lestes::backend_v2::intercode::pi_mf_decl, lestes::backend_v2::intercode::pi_mf_lit, lestes::backend_v2::intercode::pi_mf_member, lestes::backend_v2::intercode::pi_mf_preg, and lestes::backend_v2::intercode::pi_mf_ptr_deref.
Definition at line 174 of file pi_mem_factory.g.hh.
Referenced by reflection_get().
1.5.1-20070107