lestes::lang::cplus::sem::ss_targetted_label Class Reference

Class for labels, which target is known at ceration time of label(i.e. label for goto). More...

#include <ss_misc.g.hh>

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

lestes::lang::cplus::sem::ss_label 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_statementstatement_get () const
 The method statement_get returns the value of the field ss_targetted_label::statement.
void statement_set (const ptr< ss_statement > &)
 The method statement_set sets the field ss_targetted_label::statement 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_targetted_labelcreate (ptr< ::lestes::std::source_location > a__ss_base_with_location__location, ptr< ss_statement > a__ss_targetted_label__statement)
 First generated factory method for class ss_targetted_label.

Protected Member Functions

 ss_targetted_label (ptr< ::lestes::std::source_location > a__ss_base_with_location__location, ptr< ss_statement > a__ss_targetted_label__statement)
 Generated constructor for class ss_targetted_label.
virtual void gc_mark ()
 Marking routine for class ss_targetted_label.

Private Attributes

srp< ss_statementstatement

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Class for labels, which target is known at ceration time of label(i.e. label for goto).

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


Constructor & Destructor Documentation

lestes::lang::cplus::sem::ss_targetted_label::ss_targetted_label ( ptr< ::lestes::std::source_location a__ss_base_with_location__location,
ptr< ss_statement a__ss_targetted_label__statement 
) [protected]

Generated constructor for class ss_targetted_label.

Generated constructor for class ss_targetted_label.

Author:
lsg

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

Referenced by create().

00723         : ss_label(a__ss_base_with_location__location), statement(checked(a__ss_targetted_label__statement))
00724 {}


Member Function Documentation

ptr< ss_statement > lestes::lang::cplus::sem::ss_targetted_label::statement_get (  )  const

The method statement_get returns the value of the field ss_targetted_label::statement.

Returns:
The value of ss_targetted_label::statement.
Author:
lsg

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

References statement.

00693 {
00694         return statement;
00695 }

void lestes::lang::cplus::sem::ss_targetted_label::statement_set ( const ptr< ss_statement > &  x  ) 

The method statement_set sets the field ss_targetted_label::statement to the given value.

Parameters:
[in] x The new value to set ss_targetted_label::statement to.
Author:
lsg

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

References statement.

00702 {
00703         ss_targetted_label::statement = x;
00704 }

ptr< ss_targetted_label > lestes::lang::cplus::sem::ss_targetted_label::create ( ptr< ::lestes::std::source_location a__ss_base_with_location__location,
ptr< ss_statement a__ss_targetted_label__statement 
) [static]

First generated factory method for class ss_targetted_label.

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

Author:
lsg

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

References ss_targetted_label().

00712 {
00713         return ptr< ss_targetted_label > ( new ss_targetted_label(a__ss_base_with_location__location,
00714                 a__ss_targetted_label__statement) );
00715 }

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

for purposes of dumping

Reimplemented from lestes::lang::cplus::sem::ss_label.

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

References lestes::std::list< T >::create(), reflection, and lestes::lang::cplus::sem::ss_label::reflection_get().

00727 {
00728         if (!reflection) {
00729                 typedef class_reflection::field_metadata md;
00730                 typedef class_reflection::field_metadata_list mdlist;
00731                 ptr<mdlist> mdl = mdlist::create();
00732                 mdl->push_back( md::create( "statement", "ss_statement" ) );
00733                 reflection = reflection_list::create( ss_label::reflection_get() );
00734                 reflection->push_back( class_reflection::create( "ss_targetted_label", mdl ) );
00735         }
00736         return reflection;
00737 }

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

for purposes of dumping

Reimplemented from lestes::lang::cplus::sem::ss_label.

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

References lestes::std::list< T >::create(), and lestes::lang::cplus::sem::ss_label::field_values_get().

00740 {
00741         ptr < field_list_list > result = ss_label::field_values_get();
00742         result->push_back( value_list::create() );
00743         result->back()->push_back( this->statement );
00744         return result;
00745 }

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

Marking routine for class ss_targetted_label.

Marking routine is used for garbage collection.

Author:
lsg

Reimplemented from lestes::lang::cplus::sem::ss_label.

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

References lestes::lang::cplus::sem::ss_label::gc_mark().

00753 {
00754         ss_label::gc_mark();
00755 }


Member Data Documentation

srp< ss_statement > lestes::lang::cplus::sem::ss_targetted_label::statement [private]

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

Referenced by statement_get(), and statement_set().

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

Reimplemented from lestes::lang::cplus::sem::ss_label.

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