lestes::backend_v2::intercode::pi_mem_lit Class Reference

Memory where literal is stored. More...

#include <pi.g.hh>

Inheritance diagram for lestes::backend_v2::intercode::pi_mem_lit:

lestes::backend_v2::intercode::pi_mem lestes::backend_v2::intercode::pi_operand lestes::intercode::pi_base lestes::intercode::intercode lestes::std::object lestes::std::mem::keystone List of all members.

Public Member Functions

virtual kind_type kind_get ()
 Returns kind of the operand.
virtual ptr< ::lestes::backend_v2::intercode::ge_operandaccept_visitor_pi_operand2ge_operand_gen_base (ptr< visitor_pi_operand2ge_operand_gen_base > v)
virtual ptr< reflection_listreflection_get () const
 for purposes of dumping
virtual ptr< field_list_listfield_values_get () const
 for purposes of dumping

Static Public Member Functions

static ptr< pi_mem_litcreate (ptr< pi_pi > a__pi_operand__origin, ptr< ::lestes::md::types::tm_data_type_base > a__pi_operand__type, ptr< ::lestes::backend_v2::intercode::pi_mem_factory > a__pi_mem__factory)
 First generated factory method for class pi_mem_lit.

Protected Member Functions

 pi_mem_lit (ptr< pi_pi > a__pi_operand__origin, ptr< ::lestes::md::types::tm_data_type_base > a__pi_operand__type, ptr< ::lestes::backend_v2::intercode::pi_mem_factory > a__pi_mem__factory)
 Generated constructor for class pi_mem_lit.
virtual void gc_mark ()
 Marking routine for class pi_mem_lit.

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Memory where literal is stored.

Used for accessing literal that can't act as immediate.

Definition at line 4710 of file pi.g.hh.


Constructor & Destructor Documentation

lestes::backend_v2::intercode::pi_mem_lit::pi_mem_lit ( ptr< pi_pi a__pi_operand__origin,
ptr< ::lestes::md::types::tm_data_type_base a__pi_operand__type,
ptr< ::lestes::backend_v2::intercode::pi_mem_factory a__pi_mem__factory 
) [protected]

Generated constructor for class pi_mem_lit.

Generated constructor for class pi_mem_lit.

Author:
lsg

Definition at line 8452 of file pi.g.cc.

Referenced by create().

08455         : pi_mem(a__pi_operand__origin,
08456                 a__pi_operand__type,
08457                 a__pi_mem__factory)
08458 {}


Member Function Documentation

pi_operand::kind_type lestes::backend_v2::intercode::pi_mem_lit::kind_get (  )  [virtual]

Returns kind of the operand.

Implements lestes::backend_v2::intercode::pi_mem.

Definition at line 36 of file pi.cc.

References lestes::backend_v2::intercode::pi_operand::MEM_LIT.

00036                                          {
00037         return pi_operand::MEM_LIT;
00038 }

ptr<::lestes::backend_v2::intercode::ge_operand > lestes::backend_v2::intercode::pi_mem_lit::accept_visitor_pi_operand2ge_operand_gen_base ( ptr< visitor_pi_operand2ge_operand_gen_base v  )  [virtual]

Implements lestes::backend_v2::intercode::pi_mem.

Definition at line 8430 of file pi.g.cc.

08431 {
08432         return v->visit_pi_mem_lit( this );
08433 }

ptr< pi_mem_lit > lestes::backend_v2::intercode::pi_mem_lit::create ( ptr< pi_pi a__pi_operand__origin,
ptr< ::lestes::md::types::tm_data_type_base a__pi_operand__type,
ptr< ::lestes::backend_v2::intercode::pi_mem_factory a__pi_mem__factory 
) [static]

First generated factory method for class pi_mem_lit.

This factory method for class pi_mem_lit takes values of all fields as arguments.

Author:
lsg

Definition at line 8439 of file pi.g.cc.

References pi_mem_lit().

08442 {
08443         return ptr< pi_mem_lit > ( new pi_mem_lit(a__pi_operand__origin,
08444                 a__pi_operand__type,
08445                 a__pi_mem__factory) );
08446 }

ptr< object::reflection_list > lestes::backend_v2::intercode::pi_mem_lit::reflection_get (  )  const [virtual]

for purposes of dumping

Reimplemented from lestes::backend_v2::intercode::pi_mem.

Definition at line 8460 of file pi.g.cc.

References lestes::std::list< T >::create(), reflection, and lestes::backend_v2::intercode::pi_mem::reflection_get().

08461 {
08462         if (!reflection) {
08463                 typedef class_reflection::field_metadata md;
08464                 typedef class_reflection::field_metadata_list mdlist;
08465                 ptr<mdlist> mdl = mdlist::create();
08466                 reflection = reflection_list::create( pi_mem::reflection_get() );
08467                 reflection->push_back( class_reflection::create( "pi_mem_lit", mdl ) );
08468         }
08469         return reflection;
08470 }

ptr< object::field_list_list > lestes::backend_v2::intercode::pi_mem_lit::field_values_get (  )  const [virtual]

for purposes of dumping

Reimplemented from lestes::backend_v2::intercode::pi_mem.

Definition at line 8472 of file pi.g.cc.

References lestes::backend_v2::intercode::pi_mem::field_values_get().

08473 {
08474         ptr < field_list_list > result = pi_mem::field_values_get();
08475         return result;
08476 }

void lestes::backend_v2::intercode::pi_mem_lit::gc_mark ( void   )  [protected, virtual]

Marking routine for class pi_mem_lit.

Marking routine is used for garbage collection.

Author:
lsg

Reimplemented from lestes::backend_v2::intercode::pi_mem.

Definition at line 8483 of file pi.g.cc.

References lestes::backend_v2::intercode::pi_mem::gc_mark().

08484 {
08485         pi_mem::gc_mark();
08486 }


Member Data Documentation

ptr< object::reflection_list > lestes::backend_v2::intercode::pi_mem_lit::reflection = reflection [static, private]

Reimplemented from lestes::backend_v2::intercode::pi_mem.

Definition at line 4740 of file pi.g.hh.

Referenced by reflection_get().


The documentation for this class was generated from the following files:
Generated on Mon Feb 12 18:24:06 2007 for lestes by doxygen 1.5.1-20070107