lestes::lang::cplus::sem::as_declarator_op2op_func Class Reference

Function declarator operator recognition. More...

#include <as_declarator_op2op_func.g.hh>

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

lestes::lang::cplus::sem::as_declarator_op_default_visitor lestes::lang::cplus::sem::as_declarator_op_visitor lestes::std::visitor_base lestes::std::object lestes::std::mem::keystone List of all members.

Public Member Functions

ptr< ::lestes::lang::cplus::sem::as_declarator_op_funcfunction_get () const
 The method function_get returns the value of the field as_declarator_op2op_func::function.
virtual void visit_as_declarator_op_func (ptr< ::lestes::lang::cplus::sem::as_declarator_op_func >)
virtual void default_action (ptr< ::lestes::lang::cplus::sem::as_declarator_op >)
ptr< ::lestes::lang::cplus::sem::as_declarator_op_funcprocess (const ptr< ::lestes::lang::cplus::sem::as_declarator_op > &)
 "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< as_declarator_op2op_funcinstance ()
 Generated instance() method for singleton class as_declarator_op2op_func.

Protected Member Functions

 as_declarator_op2op_func (ptr< ::lestes::lang::cplus::sem::as_declarator_op_func > a__as_declarator_op2op_func__function)
 Generated constructor for class as_declarator_op2op_func.
virtual void gc_mark ()
 Marking routine for class as_declarator_op2op_func.

Private Attributes

srp< ::lestes::lang::cplus::sem::as_declarator_op_funcfunction
 The function declarator operator.

Static Private Attributes

static ptr< reflection_listreflection = reflection
static ptr< as_declarator_op2op_functhe_instance = the_instance

Detailed Description

Function declarator operator recognition.

Tests if a declarator operator is a function declarator operator and returns it. Useful to distinguish function from object declaration by looking at the first declarator op (if any).

Definition at line 53 of file as_declarator_op2op_func.g.hh.


Constructor & Destructor Documentation

lestes::lang::cplus::sem::as_declarator_op2op_func::as_declarator_op2op_func ( ptr< ::lestes::lang::cplus::sem::as_declarator_op_func a__as_declarator_op2op_func__function  )  [protected]

Generated constructor for class as_declarator_op2op_func.

Generated constructor for class as_declarator_op2op_func.

Author:
lsg

Definition at line 53 of file as_declarator_op2op_func.g.cc.

Referenced by instance().

00054         : as_declarator_op_default_visitor(), function(a__as_declarator_op2op_func__function)
00055 {}


Member Function Documentation

ptr<::lestes::lang::cplus::sem::as_declarator_op_func > lestes::lang::cplus::sem::as_declarator_op2op_func::function_get (  )  const

The method function_get returns the value of the field as_declarator_op2op_func::function.

Returns:
The value of as_declarator_op2op_func::function.
Author:
lsg

Definition at line 29 of file as_declarator_op2op_func.g.cc.

References function.

Referenced by process().

00030 {
00031         return function;
00032 }

virtual void lestes::lang::cplus::sem::as_declarator_op2op_func::visit_as_declarator_op_func ( ptr< ::lestes::lang::cplus::sem::as_declarator_op_func  )  [virtual]

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

virtual void lestes::lang::cplus::sem::as_declarator_op2op_func::default_action ( ptr< ::lestes::lang::cplus::sem::as_declarator_op  )  [virtual]

Implements lestes::lang::cplus::sem::as_declarator_op_default_visitor.

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

Generated instance() method for singleton class as_declarator_op2op_func.

Generated instance() method for singleton class as_declarator_op2op_func.

Author:
lsg

Definition at line 44 of file as_declarator_op2op_func.g.cc.

References as_declarator_op2op_func(), and the_instance.

00045 {
00046          return the_instance ? the_instance : the_instance = new as_declarator_op2op_func(NULL);
00047 }

ptr<::lestes::lang::cplus::sem::as_declarator_op_func > lestes::lang::cplus::sem::as_declarator_op2op_func::process ( const ptr< ::lestes::lang::cplus::sem::as_declarator_op > &   ) 

"visit-return" method

Definition at line 78 of file as_declarator_op2op_func.g.cc.

References function_get(), and lassert2.

00079 {
00080         lassert2( o, "Cannot visit NULL object." );
00081         o->accept_as_declarator_op_visitor( ptr< as_declarator_op_visitor >(this) );
00082         return function_get();
00083 }

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

for purposes of dumping

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

Definition at line 57 of file as_declarator_op2op_func.g.cc.

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

00058 {
00059         if (!reflection) {
00060                 typedef class_reflection::field_metadata md;
00061                 typedef class_reflection::field_metadata_list mdlist;
00062                 ptr<mdlist> mdl = mdlist::create();
00063                 mdl->push_back( md::create( "function", "as_declarator_op_func" ) );
00064                 reflection = reflection_list::create( as_declarator_op_default_visitor::reflection_get() );
00065                 reflection->push_back( class_reflection::create( "as_declarator_op2op_func", mdl ) );
00066         }
00067         return reflection;
00068 }

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

for purposes of dumping

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

Definition at line 70 of file as_declarator_op2op_func.g.cc.

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

00071 {
00072         ptr < field_list_list > result = as_declarator_op_default_visitor::field_values_get();
00073         result->push_back( value_list::create() );
00074         result->back()->push_back( this->function );
00075         return result;
00076 }

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

Marking routine for class as_declarator_op2op_func.

Marking routine is used for garbage collection.

Author:
lsg

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

Definition at line 90 of file as_declarator_op2op_func.g.cc.

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


Member Data Documentation

srp< ::lestes::lang::cplus::sem::as_declarator_op_func > lestes::lang::cplus::sem::as_declarator_op2op_func::function [private]

The function declarator operator.

Field used to pass the result of the visitor, set to NULL when the declarator operator was not of type as_declarator_op_func, otherwise contains the processed declarator operator.

Definition at line 92 of file as_declarator_op2op_func.g.hh.

Referenced by function_get().

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

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

Definition at line 93 of file as_declarator_op2op_func.g.hh.

Referenced by reflection_get().

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

Static field as_declarator_op2op_func::the_instance.

Author:
lsg

Definition at line 94 of file as_declarator_op2op_func.g.hh.

Referenced by instance().


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