lestes::lang::cplus::sem::ss_destructor_table Class Reference

#include <ss_ss2pi_base.g.hh>

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

Inheritance graph
[legend]
List of all members.

Public Member Functions

ptr< ss_compound_stmtcompound_stmt_get () const
 The method compound_stmt_get returns the value of the field ss_destructor_table::compound_stmt.
void compound_stmt_set (const ptr< ss_compound_stmt > &)
 The method compound_stmt_set sets the field ss_destructor_table::compound_stmt to the given value.
ptr< ::lestes::std::list<
srp< destructor_entry_type > > > 
destructors_get () const
 The method destructors_get returns the value of the field ss_destructor_table::destructors.
void destructors_set (const ptr< ::lestes::std::list< srp< destructor_entry_type > > > &)
 The method destructors_set sets the field ss_destructor_table::destructors to the given value.
void destructor_add (ptr< ss_function_declaration >, ptr< ::lestes::backend_v2::intercode::pi_mem_factory >)
virtual ptr< ::lestes::backend_v2::intercode::pi_spback_roll_table (ptr< ::lestes::backend_v2::intercode::pi_sp > psp, ptr< ::lestes::backend_v2::intercode::pi_sp > nsp)
 Implements back rolling of a destructor table (i.e.compound statement).
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_destructor_tablecreate (ptr< ss_compound_stmt > a__ss_destructor_table__compound_stmt, ptr< ::lestes::std::list< srp< destructor_entry_type > > > a__ss_destructor_table__destructors)
 First generated factory method for class ss_destructor_table.
static ptr< ss_destructor_tablecreate (ptr< ss_compound_stmt > a__ss_destructor_table__compound_stmt)
 Second generated factory method for class ss_destructor_table.

Protected Member Functions

 ss_destructor_table (ptr< ss_compound_stmt > a__ss_destructor_table__compound_stmt, ptr< ::lestes::std::list< srp< destructor_entry_type > > > a__ss_destructor_table__destructors)
 Generated constructor for class ss_destructor_table.
virtual void gc_mark ()
 Marking routine for class ss_destructor_table.

Private Attributes

srp< ss_compound_stmtcompound_stmt
 Compound statement, where variable (destructor) takes place.
srp< ::lestes::std::list<
srp< destructor_entry_type > > > 
destructors

Static Private Attributes

static ptr< reflection_listreflection = reflection

Constructor & Destructor Documentation

lestes::lang::cplus::sem::ss_destructor_table::ss_destructor_table ( ptr< ss_compound_stmt a__ss_destructor_table__compound_stmt,
ptr< ::lestes::std::list< srp< destructor_entry_type > > >  a__ss_destructor_table__destructors 
) [protected]

Generated constructor for class ss_destructor_table.

Generated constructor for class ss_destructor_table.

Author:
lsg


Member Function Documentation

ptr< ss_compound_stmt > lestes::lang::cplus::sem::ss_destructor_table::compound_stmt_get (  )  const

The method compound_stmt_get returns the value of the field ss_destructor_table::compound_stmt.

Returns:
The value of ss_destructor_table::compound_stmt.
Author:
lsg

void lestes::lang::cplus::sem::ss_destructor_table::compound_stmt_set ( const ptr< ss_compound_stmt > &  x  ) 

The method compound_stmt_set sets the field ss_destructor_table::compound_stmt to the given value.

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

ptr<::lestes::std::list< srp< destructor_entry_type > > > lestes::lang::cplus::sem::ss_destructor_table::destructors_get (  )  const

The method destructors_get returns the value of the field ss_destructor_table::destructors.

Returns:
The value of ss_destructor_table::destructors.
Author:
lsg

void lestes::lang::cplus::sem::ss_destructor_table::destructors_set ( const ptr< ::lestes::std::list< srp< destructor_entry_type > > > &  x  ) 

The method destructors_set sets the field ss_destructor_table::destructors to the given value.

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

void lestes::lang::cplus::sem::ss_destructor_table::destructor_add ( ptr< ss_function_declaration x,
ptr< ::lestes::backend_v2::intercode::pi_mem_factory y 
)

Adds destructor to destructor table. It expect appropriate destructor to memmory placeholder (namely NULL for builtin types).

ptr<::lestes::backend_v2::intercode::pi_sp > lestes::lang::cplus::sem::ss_destructor_table::back_roll_table ( ptr< ::lestes::backend_v2::intercode::pi_sp psp,
ptr< ::lestes::backend_v2::intercode::pi_sp nsp 
) [virtual]

Implements back rolling of a destructor table (i.e.compound statement).

Implements back rolling of a given destructor table (i.e. usually compound statement). Accepts pseudoinstruction sequence points, between which pastes destructor calls and dealocation routines. psp and nsp of a given sequence points will change.

Returns last sequence point, which has nsp set to nsp argument of function. (i.e. there is no instruction between returned sp and given psp) So than can be recursive continuation in other compound statements.

ptr< ss_destructor_table > lestes::lang::cplus::sem::ss_destructor_table::create ( ptr< ss_compound_stmt a__ss_destructor_table__compound_stmt,
ptr< ::lestes::std::list< srp< destructor_entry_type > > >  a__ss_destructor_table__destructors 
) [static]

First generated factory method for class ss_destructor_table.

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

Author:
lsg

ptr< ss_destructor_table > lestes::lang::cplus::sem::ss_destructor_table::create ( ptr< ss_compound_stmt a__ss_destructor_table__compound_stmt  )  [static]

Second generated factory method for class ss_destructor_table.

This factory method for class ss_destructor_table uses initializers.

Author:
lsg

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

for purposes of dumping

Reimplemented from lestes::std::object.

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

for purposes of dumping

Reimplemented from lestes::std::object.

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

Marking routine for class ss_destructor_table.

Marking routine is used for garbage collection.

Author:
lsg

Reimplemented from lestes::std::mem::keystone.


Member Data Documentation

srp< ss_compound_stmt > lestes::lang::cplus::sem::ss_destructor_table::compound_stmt [private]

Compound statement, where variable (destructor) takes place.

srp< ::lestes::std::list< srp< destructor_entry_type > > > lestes::lang::cplus::sem::ss_destructor_table::destructors [private]

For types, which have no destructors, destructor set to NULL.

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

Reimplemented from lestes::std::object.


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