lestes::lang::cplus::sem::ss_ptr_access Class Reference

Class for member access via pointer (->). More...

#include <ss_expression.g.hh>

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

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_expressionobject_ptr_get () const
 The method object_ptr_get returns the value of the field ss_ptr_access::object_ptr.
void object_ptr_set (const ptr< ss_expression > &)
 The method object_ptr_set sets the field ss_ptr_access::object_ptr to the given value.
ptr< ss_declarationmember_get () const
 The method member_get returns the value of the field ss_ptr_access::member.
void member_set (const ptr< ss_declaration > &)
 The method member_set sets the field ss_ptr_access::member 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_ptr_accesscreate (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< ss_expression > a__ss_ptr_access__object_ptr, ptr< ss_declaration > a__ss_ptr_access__member)
 First generated factory method for class ss_ptr_access.

Protected Member Functions

 ss_ptr_access (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< ss_expression > a__ss_ptr_access__object_ptr, ptr< ss_declaration > a__ss_ptr_access__member)
 Generated constructor for class ss_ptr_access.
virtual void gc_mark ()
 Marking routine for class ss_ptr_access.

Private Attributes

srp< ss_expressionobject_ptr
srp< ss_declarationmember

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Class for member access via pointer (->).

Definition at line 661 of file ss_expression.g.hh.


Constructor & Destructor Documentation

lestes::lang::cplus::sem::ss_ptr_access::ss_ptr_access ( 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< ss_expression a__ss_ptr_access__object_ptr,
ptr< ss_declaration a__ss_ptr_access__member 
) [protected]

Generated constructor for class ss_ptr_access.

Generated constructor for class ss_ptr_access.

Author:
lsg

Definition at line 1229 of file ss_expression.g.cc.

Referenced by create().

01235         : ss_expression(a__ss_base_with_location__location,
01236                 a__ss_expression__type,
01237                 a__ss_expression__psp,
01238                 a__ss_expression__nsp), object_ptr(checked(a__ss_ptr_access__object_ptr)), member(checked(a__ss_ptr_access__member))
01239 {}


Member Function Documentation

ptr< ss_expression > lestes::lang::cplus::sem::ss_ptr_access::object_ptr_get (  )  const

The method object_ptr_get returns the value of the field ss_ptr_access::object_ptr.

Returns:
The value of ss_ptr_access::object_ptr.
Author:
lsg

Definition at line 1169 of file ss_expression.g.cc.

References object_ptr.

01170 {
01171         return object_ptr;
01172 }

void lestes::lang::cplus::sem::ss_ptr_access::object_ptr_set ( const ptr< ss_expression > &  x  ) 

The method object_ptr_set sets the field ss_ptr_access::object_ptr to the given value.

Parameters:
[in] x The new value to set ss_ptr_access::object_ptr to.
Author:
lsg

Definition at line 1178 of file ss_expression.g.cc.

References object_ptr.

01179 {
01180         ss_ptr_access::object_ptr = x;
01181 }

ptr< ss_declaration > lestes::lang::cplus::sem::ss_ptr_access::member_get (  )  const

The method member_get returns the value of the field ss_ptr_access::member.

Returns:
The value of ss_ptr_access::member.
Author:
lsg

Definition at line 1187 of file ss_expression.g.cc.

References member.

01188 {
01189         return member;
01190 }

void lestes::lang::cplus::sem::ss_ptr_access::member_set ( const ptr< ss_declaration > &  x  ) 

The method member_set sets the field ss_ptr_access::member to the given value.

Parameters:
[in] x The new value to set ss_ptr_access::member to.
Author:
lsg

Definition at line 1196 of file ss_expression.g.cc.

References member.

01197 {
01198         ss_ptr_access::member = x;
01199 }

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

Implements lestes::lang::cplus::sem::ss_expression.

Definition at line 1201 of file ss_expression.g.cc.

01202 {
01203         return v->visit_ss_ptr_access( this );
01204 }

ptr< ss_ptr_access > lestes::lang::cplus::sem::ss_ptr_access::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< ss_expression a__ss_ptr_access__object_ptr,
ptr< ss_declaration a__ss_ptr_access__member 
) [static]

First generated factory method for class ss_ptr_access.

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

Author:
lsg

Definition at line 1210 of file ss_expression.g.cc.

References ss_ptr_access().

01216 {
01217         return ptr< ss_ptr_access > ( new ss_ptr_access(a__ss_base_with_location__location,
01218                 a__ss_expression__type,
01219                 a__ss_expression__psp,
01220                 a__ss_expression__nsp,
01221                 a__ss_ptr_access__object_ptr,
01222                 a__ss_ptr_access__member) );
01223 }

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

for purposes of dumping

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

Definition at line 1241 of file ss_expression.g.cc.

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

01242 {
01243         if (!reflection) {
01244                 typedef class_reflection::field_metadata md;
01245                 typedef class_reflection::field_metadata_list mdlist;
01246                 ptr<mdlist> mdl = mdlist::create();
01247                 mdl->push_back( md::create( "object_ptr", "ss_expression" ) );
01248                 mdl->push_back( md::create( "member", "ss_declaration" ) );
01249                 reflection = reflection_list::create( ss_expression::reflection_get() );
01250                 reflection->push_back( class_reflection::create( "ss_ptr_access", mdl ) );
01251         }
01252         return reflection;
01253 }

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

for purposes of dumping

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

Definition at line 1255 of file ss_expression.g.cc.

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

01256 {
01257         ptr < field_list_list > result = ss_expression::field_values_get();
01258         result->push_back( value_list::create() );
01259         result->back()->push_back( this->object_ptr );
01260         result->push_back( value_list::create() );
01261         result->back()->push_back( this->member );
01262         return result;
01263 }

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

Marking routine for class ss_ptr_access.

Marking routine is used for garbage collection.

Author:
lsg

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

Definition at line 1270 of file ss_expression.g.cc.

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

01271 {
01272         ss_expression::gc_mark();
01273 }


Member Data Documentation

srp< ss_expression > lestes::lang::cplus::sem::ss_ptr_access::object_ptr [private]

Definition at line 707 of file ss_expression.g.hh.

Referenced by object_ptr_get(), and object_ptr_set().

srp< ss_declaration > lestes::lang::cplus::sem::ss_ptr_access::member [private]

Definition at line 708 of file ss_expression.g.hh.

Referenced by member_get(), and member_set().

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

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

Definition at line 709 of file ss_expression.g.hh.

Referenced by reflection_get().


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