lestes::lang::cplus::sem::ss_ifuncall Class Reference

Class for indirect ordinary global function call. More...

#include <ss_expr_funcall.g.hh>

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

lestes::lang::cplus::sem::ss_funcall_abstr lestes::lang::cplus::sem::ss_expression 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_expressionfun_ptr_get () const
 The method fun_ptr_get returns the value of the field ss_ifuncall::fun_ptr.
void fun_ptr_set (const ptr< ss_expression > &)
 The method fun_ptr_set sets the field ss_ifuncall::fun_ptr to the given value.
virtual void accept_ss_expression_visitor (ptr< ss_expression_visitor > v)
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_ifuncallcreate (ptr< ::lestes::std::source_location > a__ss_base_with_location__location, ptr< ss_type > a__ss_expression__type, ptr< ss_sp > a__ss_expression__psp, ptr< ss_sp > a__ss_expression__nsp, ptr< ::lestes::std::list< srp< ss_expression > > > a__ss_funcall_abstr__args, ptr< ss_expression > a__ss_ifuncall__fun_ptr)
 First generated factory method for class ss_ifuncall.

Protected Member Functions

 ss_ifuncall (ptr< ::lestes::std::source_location > a__ss_base_with_location__location, ptr< ss_type > a__ss_expression__type, ptr< ss_sp > a__ss_expression__psp, ptr< ss_sp > a__ss_expression__nsp, ptr< ::lestes::std::list< srp< ss_expression > > > a__ss_funcall_abstr__args, ptr< ss_expression > a__ss_ifuncall__fun_ptr)
 Generated constructor for class ss_ifuncall.
virtual void gc_mark ()
 Marking routine for class ss_ifuncall.

Private Attributes

srp< ss_expressionfun_ptr

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Class for indirect ordinary global function call.

Definition at line 175 of file ss_expr_funcall.g.hh.


Constructor & Destructor Documentation

lestes::lang::cplus::sem::ss_ifuncall::ss_ifuncall ( ptr< ::lestes::std::source_location a__ss_base_with_location__location,
ptr< ss_type a__ss_expression__type,
ptr< ss_sp a__ss_expression__psp,
ptr< ss_sp a__ss_expression__nsp,
ptr< ::lestes::std::list< srp< ss_expression > > >  a__ss_funcall_abstr__args,
ptr< ss_expression a__ss_ifuncall__fun_ptr 
) [protected]

Generated constructor for class ss_ifuncall.

Generated constructor for class ss_ifuncall.

Author:
lsg

Definition at line 357 of file ss_expr_funcall.g.cc.

Referenced by create().

00363         : ss_funcall_abstr(a__ss_base_with_location__location,
00364                 a__ss_expression__type,
00365                 a__ss_expression__psp,
00366                 a__ss_expression__nsp,
00367                 a__ss_funcall_abstr__args), fun_ptr(checked(a__ss_ifuncall__fun_ptr))
00368 {}


Member Function Documentation

ptr< ss_expression > lestes::lang::cplus::sem::ss_ifuncall::fun_ptr_get (  )  const

The method fun_ptr_get returns the value of the field ss_ifuncall::fun_ptr.

Returns:
The value of ss_ifuncall::fun_ptr.
Author:
lsg

Definition at line 315 of file ss_expr_funcall.g.cc.

References fun_ptr.

00316 {
00317         return fun_ptr;
00318 }

void lestes::lang::cplus::sem::ss_ifuncall::fun_ptr_set ( const ptr< ss_expression > &  x  ) 

The method fun_ptr_set sets the field ss_ifuncall::fun_ptr to the given value.

Parameters:
[in] x The new value to set ss_ifuncall::fun_ptr to.
Author:
lsg

Definition at line 324 of file ss_expr_funcall.g.cc.

References fun_ptr.

00325 {
00326         ss_ifuncall::fun_ptr = x;
00327 }

void lestes::lang::cplus::sem::ss_ifuncall::accept_ss_expression_visitor ( ptr< ss_expression_visitor v  )  [virtual]

Implements lestes::lang::cplus::sem::ss_funcall_abstr.

Definition at line 329 of file ss_expr_funcall.g.cc.

00330 {
00331         return v->visit_ss_ifuncall( this );
00332 }

ptr< ss_ifuncall > lestes::lang::cplus::sem::ss_ifuncall::create ( ptr< ::lestes::std::source_location a__ss_base_with_location__location,
ptr< ss_type a__ss_expression__type,
ptr< ss_sp a__ss_expression__psp,
ptr< ss_sp a__ss_expression__nsp,
ptr< ::lestes::std::list< srp< ss_expression > > >  a__ss_funcall_abstr__args,
ptr< ss_expression a__ss_ifuncall__fun_ptr 
) [static]

First generated factory method for class ss_ifuncall.

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

Author:
lsg

Definition at line 338 of file ss_expr_funcall.g.cc.

References ss_ifuncall().

00344 {
00345         return ptr< ss_ifuncall > ( new ss_ifuncall(a__ss_base_with_location__location,
00346                 a__ss_expression__type,
00347                 a__ss_expression__psp,
00348                 a__ss_expression__nsp,
00349                 a__ss_funcall_abstr__args,
00350                 a__ss_ifuncall__fun_ptr) );
00351 }

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

for purposes of dumping

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

Definition at line 370 of file ss_expr_funcall.g.cc.

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

00371 {
00372         if (!reflection) {
00373                 typedef class_reflection::field_metadata md;
00374                 typedef class_reflection::field_metadata_list mdlist;
00375                 ptr<mdlist> mdl = mdlist::create();
00376                 mdl->push_back( md::create( "fun_ptr", "ss_expression" ) );
00377                 reflection = reflection_list::create( ss_funcall_abstr::reflection_get() );
00378                 reflection->push_back( class_reflection::create( "ss_ifuncall", mdl ) );
00379         }
00380         return reflection;
00381 }

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

for purposes of dumping

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

Definition at line 383 of file ss_expr_funcall.g.cc.

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

00384 {
00385         ptr < field_list_list > result = ss_funcall_abstr::field_values_get();
00386         result->push_back( value_list::create() );
00387         result->back()->push_back( this->fun_ptr );
00388         return result;
00389 }

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

Marking routine for class ss_ifuncall.

Marking routine is used for garbage collection.

Author:
lsg

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

Definition at line 396 of file ss_expr_funcall.g.cc.

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

00397 {
00398         ss_funcall_abstr::gc_mark();
00399 }


Member Data Documentation

srp< ss_expression > lestes::lang::cplus::sem::ss_ifuncall::fun_ptr [private]

Definition at line 215 of file ss_expr_funcall.g.hh.

Referenced by fun_ptr_get(), and fun_ptr_set().

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

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

Definition at line 216 of file ss_expr_funcall.g.hh.

Referenced by reflection_get().


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