lestes::backend_v2::intercode::pi_tdtpi Class Reference

Base class for ternary double-type pseudoinstructions. More...

#include <pi.g.hh>

Inheritance diagram for lestes::backend_v2::intercode::pi_tdtpi:

lestes::backend_v2::intercode::pi_tpi 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_cmp lestes::backend_v2::intercode::pi_sbe lestes::backend_v2::intercode::pi_sbg lestes::backend_v2::intercode::pi_sbl lestes::backend_v2::intercode::pi_sbne lestes::backend_v2::intercode::pi_sbng lestes::backend_v2::intercode::pi_sbnl List of all members.

Public Member Functions

ptr< ::lestes::md::types::tm_data_type_basetype1_get () const
 The method type1_get returns the value of the field pi_tdtpi::type1.
void type1_set (const ptr< ::lestes::md::types::tm_data_type_base > &)
 The method type1_set sets the field pi_tdtpi::type1 to the given value.
ptr< ::lestes::md::types::tm_data_type_basetype2_get () const
 The method type2_get returns the value of the field pi_tdtpi::type2.
void type2_set (const ptr< ::lestes::md::types::tm_data_type_base > &)
 The method type2_set sets the field pi_tdtpi::type2 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_tdtpi (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_tpi__left, ptr< pi_non_mem > a__pi_tpi__right, ptr< pi_preg > a__pi_tpi__destination, ptr< ::lestes::md::types::tm_data_type_base > a__pi_tdtpi__type1, ptr< ::lestes::md::types::tm_data_type_base > a__pi_tdtpi__type2)
 Generated constructor for class pi_tdtpi.
virtual void gc_mark ()
 Marking routine for class pi_tdtpi.

Private Attributes

srp< ::lestes::md::types::tm_data_type_basetype1
 Datatype of output operand and left input operand.
srp< ::lestes::md::types::tm_data_type_basetype2
 Datatype of right input operand.

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Base class for ternary double-type pseudoinstructions.

It has two input and one output operand of different types.

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


Constructor & Destructor Documentation

lestes::backend_v2::intercode::pi_tdtpi::pi_tdtpi ( 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_tpi__left,
ptr< pi_non_mem a__pi_tpi__right,
ptr< pi_preg a__pi_tpi__destination,
ptr< ::lestes::md::types::tm_data_type_base a__pi_tdtpi__type1,
ptr< ::lestes::md::types::tm_data_type_base a__pi_tdtpi__type2 
) [protected]

Generated constructor for class pi_tdtpi.

Generated constructor for class pi_tdtpi.

Author:
lsg

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

01877         : pi_tpi(a__pi_pi__psp,
01878                 a__pi_pi__nsp,
01879                 a__pi_pi__level,
01880                 a__pi_tpi__left,
01881                 a__pi_tpi__right,
01882                 a__pi_tpi__destination), type1(checked(a__pi_tdtpi__type1)), type2(checked(a__pi_tdtpi__type2))
01883 {}


Member Function Documentation

ptr<::lestes::md::types::tm_data_type_base > lestes::backend_v2::intercode::pi_tdtpi::type1_get (  )  const

The method type1_get returns the value of the field pi_tdtpi::type1.

Returns:
The value of pi_tdtpi::type1.
Author:
lsg

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

References type1.

01834 {
01835         return type1;
01836 }

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

The method type1_set sets the field pi_tdtpi::type1 to the given value.

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

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

References type1.

01843 {
01844         pi_tdtpi::type1 = x;
01845 }

ptr<::lestes::md::types::tm_data_type_base > lestes::backend_v2::intercode::pi_tdtpi::type2_get (  )  const

The method type2_get returns the value of the field pi_tdtpi::type2.

Returns:
The value of pi_tdtpi::type2.
Author:
lsg

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

References type2.

01852 {
01853         return type2;
01854 }

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

The method type2_set sets the field pi_tdtpi::type2 to the given value.

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

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

References type2.

01861 {
01862         pi_tdtpi::type2 = x;
01863 }

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

Implements lestes::backend_v2::intercode::pi_tpi.

Implemented in lestes::backend_v2::intercode::pi_cmp, lestes::backend_v2::intercode::pi_sbg, lestes::backend_v2::intercode::pi_sbl, lestes::backend_v2::intercode::pi_sbe, lestes::backend_v2::intercode::pi_sbng, lestes::backend_v2::intercode::pi_sbnl, and lestes::backend_v2::intercode::pi_sbne.

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

Implements lestes::backend_v2::intercode::pi_tpi.

Implemented in lestes::backend_v2::intercode::pi_cmp, lestes::backend_v2::intercode::pi_sbg, lestes::backend_v2::intercode::pi_sbl, lestes::backend_v2::intercode::pi_sbe, lestes::backend_v2::intercode::pi_sbng, lestes::backend_v2::intercode::pi_sbnl, and lestes::backend_v2::intercode::pi_sbne.

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

Implements lestes::backend_v2::intercode::pi_tpi.

Implemented in lestes::backend_v2::intercode::pi_cmp, lestes::backend_v2::intercode::pi_sbg, lestes::backend_v2::intercode::pi_sbl, lestes::backend_v2::intercode::pi_sbe, lestes::backend_v2::intercode::pi_sbng, lestes::backend_v2::intercode::pi_sbnl, and lestes::backend_v2::intercode::pi_sbne.

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

for purposes of dumping

Reimplemented from lestes::backend_v2::intercode::pi_tpi.

Reimplemented in lestes::backend_v2::intercode::pi_cmp, lestes::backend_v2::intercode::pi_sbg, lestes::backend_v2::intercode::pi_sbl, lestes::backend_v2::intercode::pi_sbe, lestes::backend_v2::intercode::pi_sbng, lestes::backend_v2::intercode::pi_sbnl, and lestes::backend_v2::intercode::pi_sbne.

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

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

Referenced by lestes::backend_v2::intercode::pi_sbne::reflection_get(), lestes::backend_v2::intercode::pi_sbnl::reflection_get(), lestes::backend_v2::intercode::pi_sbng::reflection_get(), lestes::backend_v2::intercode::pi_sbe::reflection_get(), lestes::backend_v2::intercode::pi_sbl::reflection_get(), lestes::backend_v2::intercode::pi_sbg::reflection_get(), and lestes::backend_v2::intercode::pi_cmp::reflection_get().

01886 {
01887         if (!reflection) {
01888                 typedef class_reflection::field_metadata md;
01889                 typedef class_reflection::field_metadata_list mdlist;
01890                 ptr<mdlist> mdl = mdlist::create();
01891                 mdl->push_back( md::create( "type1", "tm_data_type_base" ) );
01892                 mdl->push_back( md::create( "type2", "tm_data_type_base" ) );
01893                 reflection = reflection_list::create( pi_tpi::reflection_get() );
01894                 reflection->push_back( class_reflection::create( "pi_tdtpi", mdl ) );
01895         }
01896         return reflection;
01897 }

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

for purposes of dumping

Reimplemented from lestes::backend_v2::intercode::pi_tpi.

Reimplemented in lestes::backend_v2::intercode::pi_cmp, lestes::backend_v2::intercode::pi_sbg, lestes::backend_v2::intercode::pi_sbl, lestes::backend_v2::intercode::pi_sbe, lestes::backend_v2::intercode::pi_sbng, lestes::backend_v2::intercode::pi_sbnl, and lestes::backend_v2::intercode::pi_sbne.

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

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

Referenced by lestes::backend_v2::intercode::pi_sbne::field_values_get(), lestes::backend_v2::intercode::pi_sbnl::field_values_get(), lestes::backend_v2::intercode::pi_sbng::field_values_get(), lestes::backend_v2::intercode::pi_sbe::field_values_get(), lestes::backend_v2::intercode::pi_sbl::field_values_get(), lestes::backend_v2::intercode::pi_sbg::field_values_get(), and lestes::backend_v2::intercode::pi_cmp::field_values_get().

01900 {
01901         ptr < field_list_list > result = pi_tpi::field_values_get();
01902         result->push_back( value_list::create() );
01903         result->back()->push_back( this->type1 );
01904         result->push_back( value_list::create() );
01905         result->back()->push_back( this->type2 );
01906         return result;
01907 }

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

Marking routine for class pi_tdtpi.

Marking routine is used for garbage collection.

Author:
lsg

Reimplemented from lestes::backend_v2::intercode::pi_tpi.

Reimplemented in lestes::backend_v2::intercode::pi_cmp, lestes::backend_v2::intercode::pi_sbg, lestes::backend_v2::intercode::pi_sbl, lestes::backend_v2::intercode::pi_sbe, lestes::backend_v2::intercode::pi_sbng, lestes::backend_v2::intercode::pi_sbnl, and lestes::backend_v2::intercode::pi_sbne.

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

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

Referenced by lestes::backend_v2::intercode::pi_sbne::gc_mark(), lestes::backend_v2::intercode::pi_sbnl::gc_mark(), lestes::backend_v2::intercode::pi_sbng::gc_mark(), lestes::backend_v2::intercode::pi_sbe::gc_mark(), lestes::backend_v2::intercode::pi_sbl::gc_mark(), lestes::backend_v2::intercode::pi_sbg::gc_mark(), and lestes::backend_v2::intercode::pi_cmp::gc_mark().

01915 {
01916         pi_tpi::gc_mark();
01917 }


Member Data Documentation

srp< ::lestes::md::types::tm_data_type_base > lestes::backend_v2::intercode::pi_tdtpi::type1 [private]

Datatype of output operand and left input operand.

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

Referenced by type1_get(), and type1_set().

srp< ::lestes::md::types::tm_data_type_base > lestes::backend_v2::intercode::pi_tdtpi::type2 [private]

Datatype of right input operand.

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

Referenced by type2_get(), and type2_set().

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

Reimplemented from lestes::backend_v2::intercode::pi_tpi.

Reimplemented in lestes::backend_v2::intercode::pi_cmp, lestes::backend_v2::intercode::pi_sbg, lestes::backend_v2::intercode::pi_sbl, lestes::backend_v2::intercode::pi_sbe, lestes::backend_v2::intercode::pi_sbng, lestes::backend_v2::intercode::pi_sbnl, and lestes::backend_v2::intercode::pi_sbne.

Definition at line 1278 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