lestes::lang::cplus::sem::ss_referential Class Reference

Class for references. More...

#include <ss_type.g.hh>

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

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

Public Member Functions

ptr< ss_typewhat_get () const
 The method what_get returns the value of the field ss_referential::what.
void what_set (const ptr< ss_type > &)
 The method what_set sets the field ss_referential::what to the given value.
virtual bool is_void ()
 Is this type void?
virtual bool is_volatile ()
 Is this type volatile?
virtual ptr< ::lestes::std::list<
srp< or_ics_functional > > > 
accept_or_ics_base (ptr< or_ics_base > v) override
virtual or_cv_enum accept_or_ics_base_cv (ptr< or_ics_base_cv > v) override
virtual ptr< ::lestes::md::types::tm_data_type_baseaccept_ss_type2tm_type_gen_base (ptr< ss_type2tm_type_gen_base > v) override
virtual void accept_ss_type_visitor (ptr< ss_type_visitor > v) override
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

 ss_referential (ptr< ss_type > a__ss_referential__what)
 Generated constructor for class ss_referential.
virtual void gc_mark ()
 Marking routine for class ss_referential.

Private Attributes

srp< ss_typewhat

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Class for references.

Type representing lvalues.

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


Constructor & Destructor Documentation

lestes::lang::cplus::sem::ss_referential::ss_referential ( ptr< ss_type a__ss_referential__what  )  [protected]

Generated constructor for class ss_referential.

Generated constructor for class ss_referential.

Author:
lsg

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

00417         : ss_type(), what(checked(a__ss_referential__what))
00418 {}


Member Function Documentation

ptr< ss_type > lestes::lang::cplus::sem::ss_referential::what_get (  )  const

The method what_get returns the value of the field ss_referential::what.

Returns:
The value of ss_referential::what.
Author:
lsg

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

References what.

00399 {
00400         return what;
00401 }

void lestes::lang::cplus::sem::ss_referential::what_set ( const ptr< ss_type > &  x  ) 

The method what_set sets the field ss_referential::what to the given value.

Parameters:
[in] x The new value to set ss_referential::what to.
Author:
lsg

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

References what.

00408 {
00409         ss_referential::what = x;
00410 }

bool lestes::lang::cplus::sem::ss_referential::is_void (  )  [virtual]

Is this type void?

Used for genarating pi calls. Differentiate between call and callv. Generic case returns false;

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

Definition at line 131 of file ss_type.cc.

References what.

00132 {
00133         return what->is_void();
00134 }

bool lestes::lang::cplus::sem::ss_referential::is_volatile (  )  [virtual]

Is this type volatile?

Used for generating side effects. Returns true.

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

Definition at line 122 of file ss_type.cc.

References what.

00123 {
00124         return what->is_volatile();
00125 }

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

Implements lestes::lang::cplus::sem::ss_type.

Implemented in lestes::lang::cplus::sem::ss_reference, and lestes::lang::cplus::sem::ss_pseudoreference.

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

Implements lestes::lang::cplus::sem::ss_type.

Implemented in lestes::lang::cplus::sem::ss_reference, and lestes::lang::cplus::sem::ss_pseudoreference.

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

Implements lestes::lang::cplus::sem::ss_type.

Implemented in lestes::lang::cplus::sem::ss_reference, and lestes::lang::cplus::sem::ss_pseudoreference.

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

Implements lestes::lang::cplus::sem::ss_type.

Implemented in lestes::lang::cplus::sem::ss_reference, and lestes::lang::cplus::sem::ss_pseudoreference.

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

for purposes of dumping

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

Reimplemented in lestes::lang::cplus::sem::ss_reference, and lestes::lang::cplus::sem::ss_pseudoreference.

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

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

Referenced by lestes::lang::cplus::sem::ss_pseudoreference::reflection_get(), and lestes::lang::cplus::sem::ss_reference::reflection_get().

00421 {
00422         if (!reflection) {
00423                 typedef class_reflection::field_metadata md;
00424                 typedef class_reflection::field_metadata_list mdlist;
00425                 ptr<mdlist> mdl = mdlist::create();
00426                 mdl->push_back( md::create( "what", "ss_type" ) );
00427                 reflection = reflection_list::create( ss_type::reflection_get() );
00428                 reflection->push_back( class_reflection::create( "ss_referential", mdl ) );
00429         }
00430         return reflection;
00431 }

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

for purposes of dumping

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

Reimplemented in lestes::lang::cplus::sem::ss_reference, and lestes::lang::cplus::sem::ss_pseudoreference.

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

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

Referenced by lestes::lang::cplus::sem::ss_pseudoreference::field_values_get(), and lestes::lang::cplus::sem::ss_reference::field_values_get().

00434 {
00435         ptr < field_list_list > result = ss_type::field_values_get();
00436         result->push_back( value_list::create() );
00437         result->back()->push_back( this->what );
00438         return result;
00439 }

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

Marking routine for class ss_referential.

Marking routine is used for garbage collection.

Author:
lsg

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

Reimplemented in lestes::lang::cplus::sem::ss_reference, and lestes::lang::cplus::sem::ss_pseudoreference.

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

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

Referenced by lestes::lang::cplus::sem::ss_pseudoreference::gc_mark(), and lestes::lang::cplus::sem::ss_reference::gc_mark().

00447 {
00448         ss_type::gc_mark();
00449 }


Member Data Documentation

srp< ss_type > lestes::lang::cplus::sem::ss_referential::what [private]

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

Referenced by is_void(), is_volatile(), what_get(), and what_set().

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

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

Reimplemented in lestes::lang::cplus::sem::ss_reference, and lestes::lang::cplus::sem::ss_pseudoreference.

Definition at line 407 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:30 2007 for lestes by doxygen 1.5.1-20070107