lestes::md::functions::function_parameter_accessor_base Class Reference

Interface used for accessing function's parameters within the function. More...

#include <function_parameter_accessor_base.g.hh>

Inheritance diagram for lestes::md::functions::function_parameter_accessor_base:

lestes::std::object lestes::std::mem::keystone lestes::md::functions::function_parameter_accessor List of all members.

Public Member Functions

ptr< ::lestes::lang::cplus::sem::ss_function_declarationfunction_get () const
 The method function_get returns the value of the field function_parameter_accessor_base::function.
void function_set (const ptr< ::lestes::lang::cplus::sem::ss_function_declaration > &)
 The method function_set sets the field function_parameter_accessor_base::function to the given value.
virtual ptr< ::lestes::backend_v2::intercode::pi_mem_factoryget_parameter (ulint index) override
 Gets parameter at given index.
virtual ptr< ::lestes::backend_v2::intercode::pi_mem_factoryget_this () override
 Gets secret "this" parameter.
virtual ptr< ::lestes::backend_v2::intercode::pi_mem_factoryget_ret_val () override
 Gets secret parameter for returning value from the function.
virtual ptr< reflection_listreflection_get () const
 for purposes of dumping
virtual ptr< field_list_listfield_values_get () const
 for purposes of dumping

Protected Member Functions

 function_parameter_accessor_base (ptr< ::lestes::lang::cplus::sem::ss_function_declaration > a__function_parameter_accessor_base__function)
 Generated constructor for class function_parameter_accessor_base.
virtual void gc_mark ()
 Marking routine for class function_parameter_accessor_base.

Private Attributes

srp< ::lestes::lang::cplus::sem::ss_function_declarationfunction
 Declaration of the function.

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Interface used for accessing function's parameters within the function.

Note: A concrete derived class is target dependent and it is placed in /target/machine/${TARGET_CPU}/lestes/md/functions/ directory.

Definition at line 52 of file function_parameter_accessor_base.g.hh.


Constructor & Destructor Documentation

lestes::md::functions::function_parameter_accessor_base::function_parameter_accessor_base ( ptr< ::lestes::lang::cplus::sem::ss_function_declaration a__function_parameter_accessor_base__function  )  [protected]

Generated constructor for class function_parameter_accessor_base.

Generated constructor for class function_parameter_accessor_base.

Author:
lsg

Definition at line 47 of file function_parameter_accessor_base.g.cc.

00048         : ::lestes::std::object(), function(checked(a__function_parameter_accessor_base__function))
00049 {}


Member Function Documentation

ptr<::lestes::lang::cplus::sem::ss_function_declaration > lestes::md::functions::function_parameter_accessor_base::function_get (  )  const

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

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

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

References function.

Referenced by lestes::md::functions::function_parameter_accessor::get_parameter(), lestes::md::functions::function_parameter_accessor::get_ret_val(), and lestes::md::functions::function_parameter_accessor::get_this().

00030 {
00031         return function;
00032 }

void lestes::md::functions::function_parameter_accessor_base::function_set ( const ptr< ::lestes::lang::cplus::sem::ss_function_declaration > &  x  ) 

The method function_set sets the field function_parameter_accessor_base::function to the given value.

Parameters:
[in] x The new value to set function_parameter_accessor_base::function to.
Author:
lsg

Definition at line 38 of file function_parameter_accessor_base.g.cc.

References function.

00039 {
00040         function_parameter_accessor_base::function = x;
00041 }

virtual ptr< ::lestes::backend_v2::intercode::pi_mem_factory > lestes::md::functions::function_parameter_accessor_base::get_parameter ( ulint  index  )  [pure virtual]

Gets parameter at given index.

Implemented in lestes::md::functions::function_parameter_accessor.

virtual ptr< ::lestes::backend_v2::intercode::pi_mem_factory > lestes::md::functions::function_parameter_accessor_base::get_this (  )  [pure virtual]

Gets secret "this" parameter.

Implemented in lestes::md::functions::function_parameter_accessor.

virtual ptr< ::lestes::backend_v2::intercode::pi_mem_factory > lestes::md::functions::function_parameter_accessor_base::get_ret_val (  )  [pure virtual]

Gets secret parameter for returning value from the function.

Implemented in lestes::md::functions::function_parameter_accessor.

ptr< object::reflection_list > lestes::md::functions::function_parameter_accessor_base::reflection_get (  )  const [virtual]

for purposes of dumping

Reimplemented from lestes::std::object.

Reimplemented in lestes::md::functions::function_parameter_accessor.

Definition at line 51 of file function_parameter_accessor_base.g.cc.

References lestes::std::list< T >::create(), reflection, and lestes::std::object::reflection_get().

Referenced by lestes::md::functions::function_parameter_accessor::reflection_get().

00052 {
00053         if (!reflection) {
00054                 typedef class_reflection::field_metadata md;
00055                 typedef class_reflection::field_metadata_list mdlist;
00056                 ptr<mdlist> mdl = mdlist::create();
00057                 mdl->push_back( md::create( "function", "ss_function_declaration" ) );
00058                 reflection = reflection_list::create( ::lestes::std::object::reflection_get() );
00059                 reflection->push_back( class_reflection::create( "function_parameter_accessor_base", mdl ) );
00060         }
00061         return reflection;
00062 }

ptr< object::field_list_list > lestes::md::functions::function_parameter_accessor_base::field_values_get (  )  const [virtual]

for purposes of dumping

Reimplemented from lestes::std::object.

Reimplemented in lestes::md::functions::function_parameter_accessor.

Definition at line 64 of file function_parameter_accessor_base.g.cc.

References lestes::std::list< T >::create(), and lestes::std::object::field_values_get().

Referenced by lestes::md::functions::function_parameter_accessor::field_values_get().

00065 {
00066         ptr < field_list_list > result = ::lestes::std::object::field_values_get();
00067         result->push_back( value_list::create() );
00068         result->back()->push_back( this->function );
00069         return result;
00070 }

void lestes::md::functions::function_parameter_accessor_base::gc_mark ( void   )  [protected, virtual]

Marking routine for class function_parameter_accessor_base.

Marking routine is used for garbage collection.

Author:
lsg

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

Reimplemented in lestes::md::functions::function_parameter_accessor.

Definition at line 77 of file function_parameter_accessor_base.g.cc.

References lestes::std::mem::keystone::gc_mark().

Referenced by lestes::md::functions::function_parameter_accessor::gc_mark().

00078 {
00079 	::lestes::std::object::gc_mark();
00080 }


Member Data Documentation

srp< ::lestes::lang::cplus::sem::ss_function_declaration > lestes::md::functions::function_parameter_accessor_base::function [private]

Declaration of the function.

Definition at line 86 of file function_parameter_accessor_base.g.hh.

Referenced by function_get(), and function_set().

ptr< object::reflection_list > lestes::md::functions::function_parameter_accessor_base::reflection = reflection [static, private]

Reimplemented from lestes::std::object.

Reimplemented in lestes::md::functions::function_parameter_accessor.

Definition at line 87 of file function_parameter_accessor_base.g.hh.

Referenced by reflection_get().


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