lestes::backend_v2::intercode::pi_bstpi Class Reference

Base class for binary single-type pseudoinstructions. More...

#include <pi.g.hh>

Inheritance diagram for lestes::backend_v2::intercode::pi_bstpi:

lestes::backend_v2::intercode::pi_bpi lestes::backend_v2::intercode::pi_pi lestes::intercode::pi_base lestes::intercode::intercode lestes::std::object lestes::std::mem::keystone lestes::backend_v2::intercode::pi_bnot lestes::backend_v2::intercode::pi_gat lestes::backend_v2::intercode::pi_lnot lestes::backend_v2::intercode::pi_neg List of all members.

Public Member Functions

ptr< ::lestes::md::types::tm_data_type_basetype_get () const
 The method type_get returns the value of the field pi_bstpi::type.
void type_set (const ptr< ::lestes::md::types::tm_data_type_base > &)
 The method type_set sets the field pi_bstpi::type to the given value.
virtual ptr< ::lestes::backend_v2::structs::pi_operandsaccept_visitor_pi_pi2pi_operands_gen_base (ptr< visitor_pi_pi2pi_operands_gen_base > v) override
virtual ulint accept_visitor_pi_pi2ulint_gen_base (ptr< visitor_pi_pi2ulint_gen_base > v) override
virtual ptr< vector< srp<
::lestes::backend_v2::intercode::ge_pi > > > 
accept_visitor_pi_pi2ge_pi_gen_base (ptr< visitor_pi_pi2ge_pi_gen_base > v) override
virtual ptr< reflection_listreflection_get () const
 for purposes of dumping
virtual ptr< field_list_listfield_values_get () const
 for purposes of dumping

Protected Member Functions

 pi_bstpi (ptr< pi_pi > a__pi_pi__psp, ptr< pi_pi > a__pi_pi__nsp, ulint a__pi_pi__level, ptr< pi_non_mem > a__pi_bpi__source, ptr< pi_preg > a__pi_bpi__destination, ptr< ::lestes::md::types::tm_data_type_base > a__pi_bstpi__type)
 Generated constructor for class pi_bstpi.
virtual void gc_mark ()
 Marking routine for class pi_bstpi.

Private Attributes

srp< ::lestes::md::types::tm_data_type_basetype
 Datatype of operands.

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Base class for binary single-type pseudoinstructions.

It has two operands of the same kind.

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


Constructor & Destructor Documentation

lestes::backend_v2::intercode::pi_bstpi::pi_bstpi ( ptr< pi_pi a__pi_pi__psp,
ptr< pi_pi a__pi_pi__nsp,
ulint  a__pi_pi__level,
ptr< pi_non_mem a__pi_bpi__source,
ptr< pi_preg a__pi_bpi__destination,
ptr< ::lestes::md::types::tm_data_type_base a__pi_bstpi__type 
) [protected]

Generated constructor for class pi_bstpi.

Generated constructor for class pi_bstpi.

Author:
lsg

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

01715         : pi_bpi(a__pi_pi__psp,
01716                 a__pi_pi__nsp,
01717                 a__pi_pi__level,
01718                 a__pi_bpi__source,
01719                 a__pi_bpi__destination), type(checked(a__pi_bstpi__type))
01720 {}


Member Function Documentation

ptr<::lestes::md::types::tm_data_type_base > lestes::backend_v2::intercode::pi_bstpi::type_get (  )  const

The method type_get returns the value of the field pi_bstpi::type.

Returns:
The value of pi_bstpi::type.
Author:
lsg

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

References type.

01692 {
01693         return type;
01694 }

void lestes::backend_v2::intercode::pi_bstpi::type_set ( const ptr< ::lestes::md::types::tm_data_type_base > &  x  ) 

The method type_set sets the field pi_bstpi::type to the given value.

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

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

References type.

01701 {
01702         pi_bstpi::type = x;
01703 }

virtual ptr< ::lestes::backend_v2::structs::pi_operands > lestes::backend_v2::intercode::pi_bstpi::accept_visitor_pi_pi2pi_operands_gen_base ( ptr< visitor_pi_pi2pi_operands_gen_base v  )  [pure virtual]

Implements lestes::backend_v2::intercode::pi_bpi.

Implemented in lestes::backend_v2::intercode::pi_neg, lestes::backend_v2::intercode::pi_gat, lestes::backend_v2::intercode::pi_bnot, and lestes::backend_v2::intercode::pi_lnot.

virtual ulint lestes::backend_v2::intercode::pi_bstpi::accept_visitor_pi_pi2ulint_gen_base ( ptr< visitor_pi_pi2ulint_gen_base v  )  [pure virtual]

Implements lestes::backend_v2::intercode::pi_bpi.

Implemented in lestes::backend_v2::intercode::pi_neg, lestes::backend_v2::intercode::pi_gat, lestes::backend_v2::intercode::pi_bnot, and lestes::backend_v2::intercode::pi_lnot.

virtual ptr< vector< srp< ::lestes::backend_v2::intercode::ge_pi> > > lestes::backend_v2::intercode::pi_bstpi::accept_visitor_pi_pi2ge_pi_gen_base ( ptr< visitor_pi_pi2ge_pi_gen_base v  )  [pure virtual]

Implements lestes::backend_v2::intercode::pi_bpi.

Implemented in lestes::backend_v2::intercode::pi_neg, lestes::backend_v2::intercode::pi_gat, lestes::backend_v2::intercode::pi_bnot, and lestes::backend_v2::intercode::pi_lnot.

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

for purposes of dumping

Reimplemented from lestes::backend_v2::intercode::pi_bpi.

Reimplemented in lestes::backend_v2::intercode::pi_neg, lestes::backend_v2::intercode::pi_gat, lestes::backend_v2::intercode::pi_bnot, and lestes::backend_v2::intercode::pi_lnot.

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

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

Referenced by lestes::backend_v2::intercode::pi_lnot::reflection_get(), lestes::backend_v2::intercode::pi_bnot::reflection_get(), lestes::backend_v2::intercode::pi_gat::reflection_get(), and lestes::backend_v2::intercode::pi_neg::reflection_get().

01723 {
01724         if (!reflection) {
01725                 typedef class_reflection::field_metadata md;
01726                 typedef class_reflection::field_metadata_list mdlist;
01727                 ptr<mdlist> mdl = mdlist::create();
01728                 mdl->push_back( md::create( "type", "tm_data_type_base" ) );
01729                 reflection = reflection_list::create( pi_bpi::reflection_get() );
01730                 reflection->push_back( class_reflection::create( "pi_bstpi", mdl ) );
01731         }
01732         return reflection;
01733 }

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

for purposes of dumping

Reimplemented from lestes::backend_v2::intercode::pi_bpi.

Reimplemented in lestes::backend_v2::intercode::pi_neg, lestes::backend_v2::intercode::pi_gat, lestes::backend_v2::intercode::pi_bnot, and lestes::backend_v2::intercode::pi_lnot.

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

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

Referenced by lestes::backend_v2::intercode::pi_lnot::field_values_get(), lestes::backend_v2::intercode::pi_bnot::field_values_get(), lestes::backend_v2::intercode::pi_gat::field_values_get(), and lestes::backend_v2::intercode::pi_neg::field_values_get().

01736 {
01737         ptr < field_list_list > result = pi_bpi::field_values_get();
01738         result->push_back( value_list::create() );
01739         result->back()->push_back( this->type );
01740         return result;
01741 }

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

Marking routine for class pi_bstpi.

Marking routine is used for garbage collection.

Author:
lsg

Reimplemented from lestes::backend_v2::intercode::pi_bpi.

Reimplemented in lestes::backend_v2::intercode::pi_neg, lestes::backend_v2::intercode::pi_gat, lestes::backend_v2::intercode::pi_bnot, and lestes::backend_v2::intercode::pi_lnot.

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

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

Referenced by lestes::backend_v2::intercode::pi_lnot::gc_mark(), lestes::backend_v2::intercode::pi_bnot::gc_mark(), lestes::backend_v2::intercode::pi_gat::gc_mark(), and lestes::backend_v2::intercode::pi_neg::gc_mark().

01749 {
01750         pi_bpi::gc_mark();
01751 }


Member Data Documentation

srp< ::lestes::md::types::tm_data_type_base > lestes::backend_v2::intercode::pi_bstpi::type [private]

Datatype of operands.

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

Referenced by type_get(), and type_set().

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

Reimplemented from lestes::backend_v2::intercode::pi_bpi.

Reimplemented in lestes::backend_v2::intercode::pi_neg, lestes::backend_v2::intercode::pi_gat, lestes::backend_v2::intercode::pi_bnot, and lestes::backend_v2::intercode::pi_lnot.

Definition at line 1181 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:23:54 2007 for lestes by doxygen 1.5.1-20070107