lestes::lang::cplus::sem::ss_member_function Class Reference

Class for member function type. More...

#include <ss_type.g.hh>

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

lestes::lang::cplus::sem::ss_function lestes::lang::cplus::sem::ss_type lestes::intercode::ss_base lestes::intercode::intercode lestes::std::object lestes::std::mem::keystone List of all members.

Public Member Functions

ptr< ss_typethis_type_get () const
 The method this_type_get returns the value of the field ss_member_function::this_type.
void this_type_set (const ptr< ss_type > &)
 The method this_type_set sets the field ss_member_function::this_type to the given value.
virtual ptr< ::lestes::std::list<
srp< or_ics_functional > > > 
accept_or_ics_base (ptr< or_ics_base > v)
virtual or_cv_enum accept_or_ics_base_cv (ptr< or_ics_base_cv > v)
virtual ptr< ::lestes::md::types::tm_data_type_baseaccept_ss_type2tm_type_gen_base (ptr< ss_type2tm_type_gen_base > v)
virtual void accept_ss_type_visitor (ptr< ss_type_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_member_functioncreate (ptr< ss_type > a__ss_function__returns, ptr< ::lestes::std::list< srp< ss_type > > > a__ss_function__params, bool a__ss_function__ellipsis, ptr< ss_type > a__ss_member_function__this_type)
 First generated factory method for class ss_member_function.

Protected Member Functions

 ss_member_function (ptr< ss_type > a__ss_function__returns, ptr< ::lestes::std::list< srp< ss_type > > > a__ss_function__params, bool a__ss_function__ellipsis, ptr< ss_type > a__ss_member_function__this_type)
 Generated constructor for class ss_member_function.
virtual void gc_mark ()
 Marking routine for class ss_member_function.

Private Attributes

srp< ss_typethis_type
 The type of "this" as it will be seen in the function.

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Class for member function type.

Definition at line 769 of file ss_type.g.hh.


Constructor & Destructor Documentation

lestes::lang::cplus::sem::ss_member_function::ss_member_function ( ptr< ss_type a__ss_function__returns,
ptr< ::lestes::std::list< srp< ss_type > > >  a__ss_function__params,
bool  a__ss_function__ellipsis,
ptr< ss_type a__ss_member_function__this_type 
) [protected]

Generated constructor for class ss_member_function.

Generated constructor for class ss_member_function.

Author:
lsg

Definition at line 1214 of file ss_type.g.cc.

Referenced by create().

01218         : ss_function(a__ss_function__returns,
01219                 a__ss_function__params,
01220                 a__ss_function__ellipsis), this_type(checked(a__ss_member_function__this_type))
01221 {}


Member Function Documentation

ptr< ss_type > lestes::lang::cplus::sem::ss_member_function::this_type_get (  )  const

The method this_type_get returns the value of the field ss_member_function::this_type.

Returns:
The value of ss_member_function::this_type.
Author:
lsg

Definition at line 1161 of file ss_type.g.cc.

References this_type.

01162 {
01163         return this_type;
01164 }

void lestes::lang::cplus::sem::ss_member_function::this_type_set ( const ptr< ss_type > &  x  ) 

The method this_type_set sets the field ss_member_function::this_type to the given value.

Parameters:
[in] x The new value to set ss_member_function::this_type to.
Author:
lsg

Definition at line 1170 of file ss_type.g.cc.

References this_type.

01171 {
01172         ss_member_function::this_type = x;
01173 }

ptr<::lestes::std::list< srp< or_ics_functional > > > lestes::lang::cplus::sem::ss_member_function::accept_or_ics_base ( ptr< or_ics_base v  )  [virtual]

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

Definition at line 1175 of file ss_type.g.cc.

01176 {
01177         return v->visit_ss_member_function( this );
01178 }

or_cv_enum lestes::lang::cplus::sem::ss_member_function::accept_or_ics_base_cv ( ptr< or_ics_base_cv v  )  [virtual]

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

Definition at line 1180 of file ss_type.g.cc.

01181 {
01182         return v->visit_ss_member_function( this );
01183 }

ptr<::lestes::md::types::tm_data_type_base > lestes::lang::cplus::sem::ss_member_function::accept_ss_type2tm_type_gen_base ( ptr< ss_type2tm_type_gen_base v  )  [virtual]

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

Definition at line 1185 of file ss_type.g.cc.

01186 {
01187         return v->visit_ss_member_function( this );
01188 }

void lestes::lang::cplus::sem::ss_member_function::accept_ss_type_visitor ( ptr< ss_type_visitor v  )  [virtual]

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

Definition at line 1190 of file ss_type.g.cc.

01191 {
01192         return v->visit_ss_member_function( this );
01193 }

ptr< ss_member_function > lestes::lang::cplus::sem::ss_member_function::create ( ptr< ss_type a__ss_function__returns,
ptr< ::lestes::std::list< srp< ss_type > > >  a__ss_function__params,
bool  a__ss_function__ellipsis,
ptr< ss_type a__ss_member_function__this_type 
) [static]

First generated factory method for class ss_member_function.

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

Author:
lsg

Definition at line 1199 of file ss_type.g.cc.

References ss_member_function().

01203 {
01204         return ptr< ss_member_function > ( new ss_member_function(a__ss_function__returns,
01205                 a__ss_function__params,
01206                 a__ss_function__ellipsis,
01207                 a__ss_member_function__this_type) );
01208 }

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

for purposes of dumping

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

Definition at line 1223 of file ss_type.g.cc.

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

01224 {
01225         if (!reflection) {
01226                 typedef class_reflection::field_metadata md;
01227                 typedef class_reflection::field_metadata_list mdlist;
01228                 ptr<mdlist> mdl = mdlist::create();
01229                 mdl->push_back( md::create( "this_type", "ss_type" ) );
01230                 reflection = reflection_list::create( ss_function::reflection_get() );
01231                 reflection->push_back( class_reflection::create( "ss_member_function", mdl ) );
01232         }
01233         return reflection;
01234 }

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

for purposes of dumping

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

Definition at line 1236 of file ss_type.g.cc.

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

01237 {
01238         ptr < field_list_list > result = ss_function::field_values_get();
01239         result->push_back( value_list::create() );
01240         result->back()->push_back( this->this_type );
01241         return result;
01242 }

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

Marking routine for class ss_member_function.

Marking routine is used for garbage collection.

Author:
lsg

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

Definition at line 1249 of file ss_type.g.cc.

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

01250 {
01251         ss_function::gc_mark();
01252 }


Member Data Documentation

srp< ss_type > lestes::lang::cplus::sem::ss_member_function::this_type [private]

The type of "this" as it will be seen in the function.

In a function declared const in class "a" (e.g. int a::f(int) const;) This field will represent the type "a const *".

Definition at line 815 of file ss_type.g.hh.

Referenced by this_type_get(), and this_type_set().

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

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

Definition at line 816 of file ss_type.g.hh.

Referenced by reflection_get().


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