lestes::lang::cplus::sem::ss_sp Class Reference

Class representing sequence point. More...

#include <ss_misc.g.hh>

Inheritance diagram for lestes::lang::cplus::sem::ss_sp:

lestes::intercode::ss_base_with_location lestes::intercode::ss_base lestes::intercode::intercode lestes::std::object lestes::std::mem::keystone List of all members.

Public Member Functions

ptr< ss_sppsp_get () const
 The method psp_get returns the value of the field ss_sp::psp.
void psp_set (const ptr< ss_sp > &)
 The method psp_set sets the field ss_sp::psp to the given value.
ptr< ss_spnsp_get () const
 The method nsp_get returns the value of the field ss_sp::nsp.
void nsp_set (const ptr< ss_sp > &)
 The method nsp_set sets the field ss_sp::nsp to the given value.
ptr< ::lestes::std::list<
srp< ss_se > > > 
pse_get () const
 The method pse_get returns the value of the field ss_sp::pse.
void pse_set (const ptr< ::lestes::std::list< srp< ss_se > > > &)
 The method pse_set sets the field ss_sp::pse to the given value.
ptr< ::lestes::std::list<
srp< ss_se > > > 
nse_get () const
 The method nse_get returns the value of the field ss_sp::nse.
void nse_set (const ptr< ::lestes::std::list< srp< ss_se > > > &)
 The method nse_set sets the field ss_sp::nse to the given value.
ptr< ::lestes::backend_v2::intercode::pi_sppi_spe_get () const
 The method pi_spe_get returns the value of the field ss_sp::pi_spe.
void pi_spe_set (const ptr< ::lestes::backend_v2::intercode::pi_sp > &)
 The method pi_spe_set sets the field ss_sp::pi_spe to the given value.
ulint level_get () const
 The method level_get returns the value of the field ss_sp::level.
void level_set (ulint)
 The method level_set sets the field ss_sp::level to the given value.
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< ss_spcreate (ptr< ::lestes::std::source_location > a__ss_base_with_location__location, ptr< ss_sp > a__ss_sp__psp, ptr< ss_sp > a__ss_sp__nsp, ptr< ::lestes::std::list< srp< ss_se > > > a__ss_sp__pse, ptr< ::lestes::std::list< srp< ss_se > > > a__ss_sp__nse, ptr< ::lestes::backend_v2::intercode::pi_sp > a__ss_sp__pi_spe, ulint a__ss_sp__level)
 First generated factory method for class ss_sp.
static ptr< ss_spcreate (ptr< ::lestes::std::source_location > a__ss_base_with_location__location, ptr< ss_sp > a__ss_sp__psp, ptr< ss_sp > a__ss_sp__nsp, ulint a__ss_sp__level)
 Second generated factory method for class ss_sp.

Protected Member Functions

 ss_sp (ptr< ::lestes::std::source_location > a__ss_base_with_location__location, ptr< ss_sp > a__ss_sp__psp, ptr< ss_sp > a__ss_sp__nsp, ptr< ::lestes::std::list< srp< ss_se > > > a__ss_sp__pse, ptr< ::lestes::std::list< srp< ss_se > > > a__ss_sp__nse, ptr< ::lestes::backend_v2::intercode::pi_sp > a__ss_sp__pi_spe, ulint a__ss_sp__level)
 Generated constructor for class ss_sp.
virtual void gc_mark ()
 Marking routine for class ss_sp.

Private Attributes

srp< ss_sppsp
srp< ss_spnsp
srp< ::lestes::std::list<
srp< ss_se > > > 
pse
 Previous side effects.
srp< ::lestes::std::list<
srp< ss_se > > > 
nse
 Next side effects.
srp< ::lestes::backend_v2::intercode::pi_sppi_spe
 Equivalent pi sequence point.
ulint level
 Level of sequence point.

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Class representing sequence point.

Definition at line 638 of file ss_misc.g.hh.


Constructor & Destructor Documentation

lestes::lang::cplus::sem::ss_sp::ss_sp ( ptr< ::lestes::std::source_location a__ss_base_with_location__location,
ptr< ss_sp a__ss_sp__psp,
ptr< ss_sp a__ss_sp__nsp,
ptr< ::lestes::std::list< srp< ss_se > > >  a__ss_sp__pse,
ptr< ::lestes::std::list< srp< ss_se > > >  a__ss_sp__nse,
ptr< ::lestes::backend_v2::intercode::pi_sp a__ss_sp__pi_spe,
ulint  a__ss_sp__level 
) [protected]

Generated constructor for class ss_sp.

Generated constructor for class ss_sp.

Author:
lsg

Definition at line 1173 of file ss_misc.g.cc.

Referenced by create().

01180         : ss_base_with_location(a__ss_base_with_location__location), psp(a__ss_sp__psp), nsp(a__ss_sp__nsp), pse(checked(a__ss_sp__pse)), nse(checked(a__ss_sp__nse)), pi_spe(a__ss_sp__pi_spe), level(a__ss_sp__level)
01181 {}


Member Function Documentation

ptr< ss_sp > lestes::lang::cplus::sem::ss_sp::psp_get (  )  const

The method psp_get returns the value of the field ss_sp::psp.

Returns:
The value of ss_sp::psp.
Author:
lsg

Definition at line 1032 of file ss_misc.g.cc.

References psp.

01033 {
01034         return psp;
01035 }

void lestes::lang::cplus::sem::ss_sp::psp_set ( const ptr< ss_sp > &  x  ) 

The method psp_set sets the field ss_sp::psp to the given value.

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

Definition at line 1041 of file ss_misc.g.cc.

References psp.

01042 {
01043         ss_sp::psp = x;
01044 }

ptr< ss_sp > lestes::lang::cplus::sem::ss_sp::nsp_get (  )  const

The method nsp_get returns the value of the field ss_sp::nsp.

Returns:
The value of ss_sp::nsp.
Author:
lsg

Definition at line 1050 of file ss_misc.g.cc.

References nsp.

01051 {
01052         return nsp;
01053 }

void lestes::lang::cplus::sem::ss_sp::nsp_set ( const ptr< ss_sp > &  x  ) 

The method nsp_set sets the field ss_sp::nsp to the given value.

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

Definition at line 1059 of file ss_misc.g.cc.

References nsp.

01060 {
01061         ss_sp::nsp = x;
01062 }

ptr<::lestes::std::list< srp< ss_se > > > lestes::lang::cplus::sem::ss_sp::pse_get (  )  const

The method pse_get returns the value of the field ss_sp::pse.

Returns:
The value of ss_sp::pse.
Author:
lsg

Definition at line 1068 of file ss_misc.g.cc.

References pse.

01069 {
01070         return pse;
01071 }

void lestes::lang::cplus::sem::ss_sp::pse_set ( const ptr< ::lestes::std::list< srp< ss_se > > > &  x  ) 

The method pse_set sets the field ss_sp::pse to the given value.

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

Definition at line 1077 of file ss_misc.g.cc.

References pse.

01078 {
01079         ss_sp::pse = x;
01080 }

ptr<::lestes::std::list< srp< ss_se > > > lestes::lang::cplus::sem::ss_sp::nse_get (  )  const

The method nse_get returns the value of the field ss_sp::nse.

Returns:
The value of ss_sp::nse.
Author:
lsg

Definition at line 1086 of file ss_misc.g.cc.

References nse.

01087 {
01088         return nse;
01089 }

void lestes::lang::cplus::sem::ss_sp::nse_set ( const ptr< ::lestes::std::list< srp< ss_se > > > &  x  ) 

The method nse_set sets the field ss_sp::nse to the given value.

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

Definition at line 1095 of file ss_misc.g.cc.

References nse.

01096 {
01097         ss_sp::nse = x;
01098 }

ptr<::lestes::backend_v2::intercode::pi_sp > lestes::lang::cplus::sem::ss_sp::pi_spe_get (  )  const

The method pi_spe_get returns the value of the field ss_sp::pi_spe.

Returns:
The value of ss_sp::pi_spe.
Author:
lsg

Definition at line 1104 of file ss_misc.g.cc.

References pi_spe.

01105 {
01106         return pi_spe;
01107 }

void lestes::lang::cplus::sem::ss_sp::pi_spe_set ( const ptr< ::lestes::backend_v2::intercode::pi_sp > &  x  ) 

The method pi_spe_set sets the field ss_sp::pi_spe to the given value.

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

Definition at line 1113 of file ss_misc.g.cc.

References pi_spe.

01114 {
01115         ss_sp::pi_spe = x;
01116 }

ulint lestes::lang::cplus::sem::ss_sp::level_get (  )  const

The method level_get returns the value of the field ss_sp::level.

Returns:
The value of ss_sp::level.
Author:
lsg

Definition at line 1122 of file ss_misc.g.cc.

References level.

01123 {
01124         return level;
01125 }

void lestes::lang::cplus::sem::ss_sp::level_set ( ulint  x  ) 

The method level_set sets the field ss_sp::level to the given value.

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

Definition at line 1131 of file ss_misc.g.cc.

References level.

01132 {
01133         ss_sp::level = x;
01134 }

ptr< ss_sp > lestes::lang::cplus::sem::ss_sp::create ( ptr< ::lestes::std::source_location a__ss_base_with_location__location,
ptr< ss_sp a__ss_sp__psp,
ptr< ss_sp a__ss_sp__nsp,
ptr< ::lestes::std::list< srp< ss_se > > >  a__ss_sp__pse,
ptr< ::lestes::std::list< srp< ss_se > > >  a__ss_sp__nse,
ptr< ::lestes::backend_v2::intercode::pi_sp a__ss_sp__pi_spe,
ulint  a__ss_sp__level 
) [static]

First generated factory method for class ss_sp.

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

Author:
lsg

Definition at line 1140 of file ss_misc.g.cc.

References ss_sp().

01147 {
01148         return ptr< ss_sp > ( new ss_sp(a__ss_base_with_location__location,
01149                 a__ss_sp__psp,
01150                 a__ss_sp__nsp,
01151                 a__ss_sp__pse,
01152                 a__ss_sp__nse,
01153                 a__ss_sp__pi_spe,
01154                 a__ss_sp__level) );
01155 }

ptr< ss_sp > lestes::lang::cplus::sem::ss_sp::create ( ptr< ::lestes::std::source_location a__ss_base_with_location__location,
ptr< ss_sp a__ss_sp__psp,
ptr< ss_sp a__ss_sp__nsp,
ulint  a__ss_sp__level 
) [static]

Second generated factory method for class ss_sp.

This factory method for class ss_sp uses initializers.

Author:
lsg

Definition at line 1161 of file ss_misc.g.cc.

References lestes::intercode::intercode::create(), and ss_sp().

01165 {
01166         return ptr< ss_sp > ( new ss_sp(a__ss_base_with_location__location, a__ss_sp__psp, a__ss_sp__nsp, ::lestes::std::list< srp< ss_se > > ::create(), ::lestes::std::list< srp< ss_se > > ::create(), NULL, a__ss_sp__level) );
01167 }

ptr< object::reflection_list > lestes::lang::cplus::sem::ss_sp::reflection_get (  )  const [virtual]

for purposes of dumping

Reimplemented from lestes::intercode::ss_base_with_location.

Definition at line 1183 of file ss_misc.g.cc.

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

01184 {
01185         if (!reflection) {
01186                 typedef class_reflection::field_metadata md;
01187                 typedef class_reflection::field_metadata_list mdlist;
01188                 ptr<mdlist> mdl = mdlist::create();
01189                 mdl->push_back( md::create( "psp", "ss_sp" ) );
01190                 mdl->push_back( md::create( "nsp", "ss_sp" ) );
01191                 mdl->push_back( md::create( "pse", "list&lt; srp&lt; ss_se &gt; &gt;" ) );
01192                 mdl->push_back( md::create( "nse", "list&lt; srp&lt; ss_se &gt; &gt;" ) );
01193                 mdl->push_back( md::create( "pi_spe", "pi_sp" ) );
01194                 mdl->push_back( md::create( "level", "ulint" ) );
01195                 reflection = reflection_list::create( ::lestes::intercode::ss_base_with_location::reflection_get() );
01196                 reflection->push_back( class_reflection::create( "ss_sp", mdl ) );
01197         }
01198         return reflection;
01199 }

ptr< object::field_list_list > lestes::lang::cplus::sem::ss_sp::field_values_get (  )  const [virtual]

for purposes of dumping

Reimplemented from lestes::intercode::ss_base_with_location.

Definition at line 1201 of file ss_misc.g.cc.

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

01202 {
01203         ptr < field_list_list > result = ::lestes::intercode::ss_base_with_location::field_values_get();
01204         result->push_back( value_list::create() );
01205         result->back()->push_back( this->psp );
01206         result->push_back( value_list::create() );
01207         result->back()->push_back( this->nsp );
01208         result->push_back( value_list::create() );
01209         result->back()->push_back( this->pse );
01210         result->push_back( value_list::create() );
01211         result->back()->push_back( this->nse );
01212         result->push_back( value_list::create() );
01213         result->back()->push_back( this->pi_spe );
01214         result->push_back( value_list::create() );
01215         result->back()->push_back( objectize< ulint > ::create( this->level ) );
01216         return result;
01217 }

void lestes::lang::cplus::sem::ss_sp::gc_mark ( void   )  [protected, virtual]

Marking routine for class ss_sp.

Marking routine is used for garbage collection.

Author:
lsg

Reimplemented from lestes::intercode::ss_base_with_location.

Definition at line 1224 of file ss_misc.g.cc.

References lestes::intercode::ss_base_with_location::gc_mark().


Member Data Documentation

srp< ss_sp > lestes::lang::cplus::sem::ss_sp::psp [private]

Definition at line 716 of file ss_misc.g.hh.

Referenced by psp_get(), and psp_set().

srp< ss_sp > lestes::lang::cplus::sem::ss_sp::nsp [private]

Definition at line 717 of file ss_misc.g.hh.

Referenced by nsp_get(), and nsp_set().

srp< ::lestes::std::list< srp< ss_se > > > lestes::lang::cplus::sem::ss_sp::pse [private]

Previous side effects.

Definition at line 719 of file ss_misc.g.hh.

Referenced by pse_get(), and pse_set().

srp< ::lestes::std::list< srp< ss_se > > > lestes::lang::cplus::sem::ss_sp::nse [private]

Next side effects.

Definition at line 721 of file ss_misc.g.hh.

Referenced by nse_get(), and nse_set().

srp< ::lestes::backend_v2::intercode::pi_sp > lestes::lang::cplus::sem::ss_sp::pi_spe [private]

Equivalent pi sequence point.

Use special getter ss_sp2pi_sp, which constructs neighbours if needed. Used when constructing pseudoinstructions. When no equivalent pi_sp exists yet, pi_sp is set to NULL. TODO: reformulate pi_sp construction via maps.

Definition at line 731 of file ss_misc.g.hh.

Referenced by pi_spe_get(), and pi_spe_set().

ulint lestes::lang::cplus::sem::ss_sp::level [private]

Level of sequence point.

It is set during construction of semantic structures. Its value is determined by topology of structures and it is passed to pi_level during ss2pi construction.

Rationale: in ss constructing phase is easy to determine level value. For details see documentation "Level of a sequence point".

Definition at line 743 of file ss_misc.g.hh.

Referenced by level_get(), and level_set().

ptr< object::reflection_list > lestes::lang::cplus::sem::ss_sp::reflection = reflection [static, private]

Reimplemented from lestes::intercode::ss_base_with_location.

Definition at line 744 of file ss_misc.g.hh.

Referenced by reflection_get().


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