lestes::lang::cplus::sem::get_real_declaration Class Reference

If the declaration is a fake declaration, this visitor gets a real declaration from it. Otherwise it returns its input. More...

#include <sa_statements.g.hh>

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

lestes::lang::cplus::sem::ss_declaration_default_visitor lestes::lang::cplus::sem::ss_declaration_visitor lestes::std::visitor_base lestes::std::object lestes::std::mem::keystone List of all members.

Public Member Functions

ptr< ss_declarationresult_get () const
 The method result_get returns the value of the field get_real_declaration::result.
void result_set (const ptr< ss_declaration > &)
 The method result_set sets the field get_real_declaration::result to the given value.
virtual void visit_ss_fake_declaration (ptr< ::lestes::lang::cplus::sem::ss_fake_declaration >)
virtual void default_action (ptr< ::lestes::lang::cplus::sem::ss_declaration >)
ptr< ss_declarationprocess (const ptr< ::lestes::lang::cplus::sem::ss_declaration > &)
 "visit-return" method
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< get_real_declarationinstance ()
 Generated instance() method for singleton class get_real_declaration.

Protected Member Functions

 get_real_declaration (ptr< ss_declaration > a__get_real_declaration__result)
 Generated constructor for class get_real_declaration.
virtual void gc_mark ()
 Marking routine for class get_real_declaration.

Private Attributes

srp< ss_declarationresult

Static Private Attributes

static ptr< reflection_listreflection = reflection
static ptr< get_real_declarationthe_instance = the_instance

Detailed Description

If the declaration is a fake declaration, this visitor gets a real declaration from it. Otherwise it returns its input.

Definition at line 469 of file sa_statements.g.hh.


Constructor & Destructor Documentation

lestes::lang::cplus::sem::get_real_declaration::get_real_declaration ( ptr< ss_declaration a__get_real_declaration__result  )  [protected]

Generated constructor for class get_real_declaration.

Generated constructor for class get_real_declaration.

Author:
lsg

Definition at line 786 of file sa_statements.g.cc.

Referenced by instance().

00787         : ss_declaration_default_visitor(), result(a__get_real_declaration__result)
00788 {}


Member Function Documentation

ptr< ss_declaration > lestes::lang::cplus::sem::get_real_declaration::result_get (  )  const

The method result_get returns the value of the field get_real_declaration::result.

Returns:
The value of get_real_declaration::result.
Author:
lsg

Definition at line 753 of file sa_statements.g.cc.

References result.

Referenced by process().

00754 {
00755         return result;
00756 }

void lestes::lang::cplus::sem::get_real_declaration::result_set ( const ptr< ss_declaration > &  x  ) 

The method result_set sets the field get_real_declaration::result to the given value.

Parameters:
[in] x The new value to set get_real_declaration::result to.
Author:
lsg

Definition at line 762 of file sa_statements.g.cc.

References result.

00763 {
00764         get_real_declaration::result = x;
00765 }

virtual void lestes::lang::cplus::sem::get_real_declaration::visit_ss_fake_declaration ( ptr< ::lestes::lang::cplus::sem::ss_fake_declaration  )  [virtual]

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

virtual void lestes::lang::cplus::sem::get_real_declaration::default_action ( ptr< ::lestes::lang::cplus::sem::ss_declaration  )  [virtual]

Implements lestes::lang::cplus::sem::ss_declaration_default_visitor.

ptr< get_real_declaration > lestes::lang::cplus::sem::get_real_declaration::instance ( void   )  [static]

Generated instance() method for singleton class get_real_declaration.

Generated instance() method for singleton class get_real_declaration.

Author:
lsg

Definition at line 777 of file sa_statements.g.cc.

References get_real_declaration(), and the_instance.

Referenced by lestes::lang::cplus::sem::sa_statements::insert_fake_declaration().

00778 {
00779          return the_instance ? the_instance : the_instance = new get_real_declaration(NULL);
00780 }

ptr< ss_declaration > lestes::lang::cplus::sem::get_real_declaration::process ( const ptr< ::lestes::lang::cplus::sem::ss_declaration > &   ) 

"visit-return" method

Definition at line 811 of file sa_statements.g.cc.

References lassert2, and result_get().

00812 {
00813         lassert2( o, "Cannot visit NULL object." );
00814         o->accept_ss_declaration_visitor( ptr< ss_declaration_visitor >(this) );
00815         return result_get();
00816 }

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

for purposes of dumping

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

Definition at line 790 of file sa_statements.g.cc.

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

00791 {
00792         if (!reflection) {
00793                 typedef class_reflection::field_metadata md;
00794                 typedef class_reflection::field_metadata_list mdlist;
00795                 ptr<mdlist> mdl = mdlist::create();
00796                 mdl->push_back( md::create( "result", "ss_declaration" ) );
00797                 reflection = reflection_list::create( ss_declaration_default_visitor::reflection_get() );
00798                 reflection->push_back( class_reflection::create( "get_real_declaration", mdl ) );
00799         }
00800         return reflection;
00801 }

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

for purposes of dumping

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

Definition at line 803 of file sa_statements.g.cc.

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

00804 {
00805         ptr < field_list_list > result = ss_declaration_default_visitor::field_values_get();
00806         result->push_back( value_list::create() );
00807         result->back()->push_back( this->result );
00808         return result;
00809 }

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

Marking routine for class get_real_declaration.

Marking routine is used for garbage collection.

Author:
lsg

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

Definition at line 823 of file sa_statements.g.cc.

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

00824 {
00825         ss_declaration_default_visitor::gc_mark();
00826 }


Member Data Documentation

srp< ss_declaration > lestes::lang::cplus::sem::get_real_declaration::result [private]

Definition at line 503 of file sa_statements.g.hh.

Referenced by field_values_get(), result_get(), and result_set().

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

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

Definition at line 504 of file sa_statements.g.hh.

Referenced by reflection_get().

ptr< get_real_declaration > lestes::lang::cplus::sem::get_real_declaration::the_instance = the_instance [static, private]

Static field get_real_declaration::the_instance.

Author:
lsg

Definition at line 505 of file sa_statements.g.hh.

Referenced by instance().


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