lestes::backend_v2::intercode::pi_lit Class Reference

Literal. More...

#include <pi.g.hh>

Inheritance diagram for lestes::backend_v2::intercode::pi_lit:

lestes::backend_v2::intercode::pi_non_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

ptr< ::lestes::md::literals::literal_info_basevalue_get () const
 The method value_get returns the value of the field pi_lit::value.
void value_set (const ptr< ::lestes::md::literals::literal_info_base > &)
 The method value_set sets the field pi_lit::value to the given value.
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_litcreate (ptr< pi_pi > a__pi_operand__origin, ptr< ::lestes::md::types::tm_data_type_base > a__pi_operand__type, ptr< ::lestes::md::literals::literal_info_base > a__pi_lit__value)
 First generated factory method for class pi_lit.

Protected Member Functions

 pi_lit (ptr< pi_pi > a__pi_operand__origin, ptr< ::lestes::md::types::tm_data_type_base > a__pi_operand__type, ptr< ::lestes::md::literals::literal_info_base > a__pi_lit__value)
 Generated constructor for class pi_lit.
virtual void gc_mark ()
 Marking routine for class pi_lit.

Private Attributes

srp< ::lestes::md::literals::literal_info_basevalue
 Constant value of the literal.

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Literal.

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


Constructor & Destructor Documentation

lestes::backend_v2::intercode::pi_lit::pi_lit ( ptr< pi_pi a__pi_operand__origin,
ptr< ::lestes::md::types::tm_data_type_base a__pi_operand__type,
ptr< ::lestes::md::literals::literal_info_base a__pi_lit__value 
) [protected]

Generated constructor for class pi_lit.

Generated constructor for class pi_lit.

Author:
lsg

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

Referenced by create().

08265         : pi_non_mem(a__pi_operand__origin,
08266                 a__pi_operand__type), value(checked(a__pi_lit__value))
08267 {}


Member Function Documentation

ptr<::lestes::md::literals::literal_info_base > lestes::backend_v2::intercode::pi_lit::value_get (  )  const

The method value_get returns the value of the field pi_lit::value.

Returns:
The value of pi_lit::value.
Author:
lsg

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

References value.

08227 {
08228         return value;
08229 }

void lestes::backend_v2::intercode::pi_lit::value_set ( const ptr< ::lestes::md::literals::literal_info_base > &  x  ) 

The method value_set sets the field pi_lit::value to the given value.

Parameters:
[in] x The new value to set pi_lit::value to.
Author:
lsg

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

References value.

08236 {
08237         pi_lit::value = x;
08238 }

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

Returns kind of the operand.

Implements lestes::backend_v2::intercode::pi_non_mem.

Definition at line 22 of file pi.cc.

References lestes::backend_v2::intercode::pi_operand::LIT.

00022                                      {
00023         return pi_operand::LIT;
00024 }

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

Implements lestes::backend_v2::intercode::pi_non_mem.

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

08241 {
08242         return v->visit_pi_lit( this );
08243 }

ptr< pi_lit > lestes::backend_v2::intercode::pi_lit::create ( ptr< pi_pi a__pi_operand__origin,
ptr< ::lestes::md::types::tm_data_type_base a__pi_operand__type,
ptr< ::lestes::md::literals::literal_info_base a__pi_lit__value 
) [static]

First generated factory method for class pi_lit.

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

Author:
lsg

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

References pi_lit().

08252 {
08253         return ptr< pi_lit > ( new pi_lit(a__pi_operand__origin,
08254                 a__pi_operand__type,
08255                 a__pi_lit__value) );
08256 }

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

for purposes of dumping

Reimplemented from lestes::backend_v2::intercode::pi_non_mem.

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

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

08270 {
08271         if (!reflection) {
08272                 typedef class_reflection::field_metadata md;
08273                 typedef class_reflection::field_metadata_list mdlist;
08274                 ptr<mdlist> mdl = mdlist::create();
08275                 mdl->push_back( md::create( "value", "literal_info_base" ) );
08276                 reflection = reflection_list::create( pi_non_mem::reflection_get() );
08277                 reflection->push_back( class_reflection::create( "pi_lit", mdl ) );
08278         }
08279         return reflection;
08280 }

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

for purposes of dumping

Reimplemented from lestes::backend_v2::intercode::pi_non_mem.

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

References lestes::std::list< T >::create(), and lestes::backend_v2::intercode::pi_non_mem::field_values_get().

08283 {
08284         ptr < field_list_list > result = pi_non_mem::field_values_get();
08285         result->push_back( value_list::create() );
08286         result->back()->push_back( this->value );
08287         return result;
08288 }

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

Marking routine for class pi_lit.

Marking routine is used for garbage collection.

Author:
lsg

Reimplemented from lestes::backend_v2::intercode::pi_non_mem.

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

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

08296 {
08297         pi_non_mem::gc_mark();
08298 }


Member Data Documentation

srp< ::lestes::md::literals::literal_info_base > lestes::backend_v2::intercode::pi_lit::value [private]

Constant value of the literal.

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

Referenced by value_get(), and value_set().

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

Reimplemented from lestes::backend_v2::intercode::pi_non_mem.

Definition at line 4622 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:05 2007 for lestes by doxygen 1.5.1-20070107