lestes::backend_v2::intercode::pi_ub_single_label_target Class Reference

Base class for unconditional branches that jump to labeled target. More...

#include <pi.g.hh>

Inheritance diagram for lestes::backend_v2::intercode::pi_ub_single_label_target:

lestes::backend_v2::intercode::pi_uconditional_branch lestes::backend_v2::intercode::pi_branch 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_ba lestes::backend_v2::intercode::pi_bn List of all members.

Public Member Functions

ptr< pi_spdestination_get () const
 The method destination_get returns the value of the field pi_ub_single_label_target::destination.
void destination_set (const ptr< pi_sp > &)
 The method destination_set sets the field pi_ub_single_label_target::destination 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_ub_single_label_target (ptr< pi_pi > a__pi_pi__psp, ptr< pi_pi > a__pi_pi__nsp, ulint a__pi_pi__level, ptr< pi_sp > a__pi_ub_single_label_target__destination)
 Generated constructor for class pi_ub_single_label_target.
virtual void gc_mark ()
 Marking routine for class pi_ub_single_label_target.

Private Attributes

srp< pi_spdestination
 The labeled target.

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Base class for unconditional branches that jump to labeled target.

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


Constructor & Destructor Documentation

lestes::backend_v2::intercode::pi_ub_single_label_target::pi_ub_single_label_target ( ptr< pi_pi a__pi_pi__psp,
ptr< pi_pi a__pi_pi__nsp,
ulint  a__pi_pi__level,
ptr< pi_sp a__pi_ub_single_label_target__destination 
) [protected]

Generated constructor for class pi_ub_single_label_target.

Generated constructor for class pi_ub_single_label_target.

Author:
lsg

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

00517         : pi_uconditional_branch(a__pi_pi__psp,
00518                 a__pi_pi__nsp,
00519                 a__pi_pi__level), destination(checked(a__pi_ub_single_label_target__destination))
00520 {}


Member Function Documentation

ptr< pi_sp > lestes::backend_v2::intercode::pi_ub_single_label_target::destination_get (  )  const

The method destination_get returns the value of the field pi_ub_single_label_target::destination.

Returns:
The value of pi_ub_single_label_target::destination.
Author:
lsg

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

References destination.

00496 {
00497         return destination;
00498 }

void lestes::backend_v2::intercode::pi_ub_single_label_target::destination_set ( const ptr< pi_sp > &  x  ) 

The method destination_set sets the field pi_ub_single_label_target::destination to the given value.

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

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

References destination.

00505 {
00506         pi_ub_single_label_target::destination = x;
00507 }

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

Implements lestes::backend_v2::intercode::pi_uconditional_branch.

Implemented in lestes::backend_v2::intercode::pi_ba, and lestes::backend_v2::intercode::pi_bn.

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

Implements lestes::backend_v2::intercode::pi_uconditional_branch.

Implemented in lestes::backend_v2::intercode::pi_ba, and lestes::backend_v2::intercode::pi_bn.

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

Implements lestes::backend_v2::intercode::pi_uconditional_branch.

Implemented in lestes::backend_v2::intercode::pi_ba, and lestes::backend_v2::intercode::pi_bn.

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

for purposes of dumping

Reimplemented from lestes::backend_v2::intercode::pi_uconditional_branch.

Reimplemented in lestes::backend_v2::intercode::pi_ba, and lestes::backend_v2::intercode::pi_bn.

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

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

Referenced by lestes::backend_v2::intercode::pi_bn::reflection_get(), and lestes::backend_v2::intercode::pi_ba::reflection_get().

00523 {
00524         if (!reflection) {
00525                 typedef class_reflection::field_metadata md;
00526                 typedef class_reflection::field_metadata_list mdlist;
00527                 ptr<mdlist> mdl = mdlist::create();
00528                 mdl->push_back( md::create( "destination", "pi_sp" ) );
00529                 reflection = reflection_list::create( pi_uconditional_branch::reflection_get() );
00530                 reflection->push_back( class_reflection::create( "pi_ub_single_label_target", mdl ) );
00531         }
00532         return reflection;
00533 }

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

for purposes of dumping

Reimplemented from lestes::backend_v2::intercode::pi_uconditional_branch.

Reimplemented in lestes::backend_v2::intercode::pi_ba, and lestes::backend_v2::intercode::pi_bn.

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

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

Referenced by lestes::backend_v2::intercode::pi_bn::field_values_get(), and lestes::backend_v2::intercode::pi_ba::field_values_get().

00536 {
00537         ptr < field_list_list > result = pi_uconditional_branch::field_values_get();
00538         result->push_back( value_list::create() );
00539         result->back()->push_back( this->destination );
00540         return result;
00541 }

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

Marking routine for class pi_ub_single_label_target.

Marking routine is used for garbage collection.

Author:
lsg

Reimplemented from lestes::backend_v2::intercode::pi_uconditional_branch.

Reimplemented in lestes::backend_v2::intercode::pi_ba, and lestes::backend_v2::intercode::pi_bn.

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

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

Referenced by lestes::backend_v2::intercode::pi_bn::gc_mark(), and lestes::backend_v2::intercode::pi_ba::gc_mark().

00549 {
00550         pi_uconditional_branch::gc_mark();
00551 }


Member Data Documentation

srp< pi_sp > lestes::backend_v2::intercode::pi_ub_single_label_target::destination [private]

The labeled target.

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

Referenced by destination_get(), and destination_set().

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

Reimplemented from lestes::backend_v2::intercode::pi_uconditional_branch.

Reimplemented in lestes::backend_v2::intercode::pi_ba, and lestes::backend_v2::intercode::pi_bn.

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