lestes::lang::cplus::sem::ss_compound_literal_info Class Reference

Represents compound literal. More...

#include <ss_literal_info.g.hh>

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

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

Public Member Functions

ptr< ::lestes::std::list<
srp< ss_literal_info > > > 
constituents_get () const
 The method constituents_get returns the value of the field ss_compound_literal_info::constituents.
virtual void accept_ss_literal_info_visitor (ptr< ss_literal_info_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_compound_literal_infocreate (ptr< ss_type > a__ss_literal_info__type, ptr< ::lestes::std::list< srp< ss_literal_info > > > a__ss_compound_literal_info__constituents)
 First generated factory method for class ss_compound_literal_info.

Protected Member Functions

 ss_compound_literal_info (ptr< ss_type > a__ss_literal_info__type, ptr< ::lestes::std::list< srp< ss_literal_info > > > a__ss_compound_literal_info__constituents)
 Generated constructor for class ss_compound_literal_info.
virtual void gc_mark ()
 Marking routine for class ss_compound_literal_info.

Private Attributes

srp< ::lestes::std::list<
srp< ss_literal_info > > > 
constituents
 Constituents of the compound literal in their lexical order.

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Represents compound literal.

Compound literals are literals specified as { ... } initializers

Definition at line 219 of file ss_literal_info.g.hh.


Constructor & Destructor Documentation

lestes::lang::cplus::sem::ss_compound_literal_info::ss_compound_literal_info ( ptr< ss_type a__ss_literal_info__type,
ptr< ::lestes::std::list< srp< ss_literal_info > > >  a__ss_compound_literal_info__constituents 
) [protected]

Generated constructor for class ss_compound_literal_info.

Generated constructor for class ss_compound_literal_info.

Author:
lsg

Definition at line 432 of file ss_literal_info.g.cc.

Referenced by create().

00434         : ss_literal_info(a__ss_literal_info__type), constituents(checked(a__ss_compound_literal_info__constituents))
00435 {}


Member Function Documentation

ptr<::lestes::std::list< srp< ss_literal_info > > > lestes::lang::cplus::sem::ss_compound_literal_info::constituents_get (  )  const

The method constituents_get returns the value of the field ss_compound_literal_info::constituents.

Returns:
The value of ss_compound_literal_info::constituents.
Author:
lsg

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

References constituents.

00408 {
00409         return constituents;
00410 }

void lestes::lang::cplus::sem::ss_compound_literal_info::accept_ss_literal_info_visitor ( ptr< ss_literal_info_visitor v  )  [virtual]

Implements lestes::lang::cplus::sem::ss_literal_info.

Definition at line 412 of file ss_literal_info.g.cc.

00413 {
00414         return v->visit_ss_compound_literal_info( this );
00415 }

ptr< ss_compound_literal_info > lestes::lang::cplus::sem::ss_compound_literal_info::create ( ptr< ss_type a__ss_literal_info__type,
ptr< ::lestes::std::list< srp< ss_literal_info > > >  a__ss_compound_literal_info__constituents 
) [static]

First generated factory method for class ss_compound_literal_info.

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

Author:
lsg

Definition at line 421 of file ss_literal_info.g.cc.

References ss_compound_literal_info().

00423 {
00424         return ptr< ss_compound_literal_info > ( new ss_compound_literal_info(a__ss_literal_info__type,
00425                 a__ss_compound_literal_info__constituents) );
00426 }

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

for purposes of dumping

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

Definition at line 437 of file ss_literal_info.g.cc.

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

00438 {
00439         if (!reflection) {
00440                 typedef class_reflection::field_metadata md;
00441                 typedef class_reflection::field_metadata_list mdlist;
00442                 ptr<mdlist> mdl = mdlist::create();
00443                 mdl->push_back( md::create( "constituents", "list&lt; srp&lt; ss_literal_info &gt; &gt;" ) );
00444                 reflection = reflection_list::create( ss_literal_info::reflection_get() );
00445                 reflection->push_back( class_reflection::create( "ss_compound_literal_info", mdl ) );
00446         }
00447         return reflection;
00448 }

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

for purposes of dumping

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

Definition at line 450 of file ss_literal_info.g.cc.

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

00451 {
00452         ptr < field_list_list > result = ss_literal_info::field_values_get();
00453         result->push_back( value_list::create() );
00454         result->back()->push_back( this->constituents );
00455         return result;
00456 }

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

Marking routine for class ss_compound_literal_info.

Marking routine is used for garbage collection.

Author:
lsg

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

Definition at line 463 of file ss_literal_info.g.cc.

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

00464 {
00465         ss_literal_info::gc_mark();
00466 }


Member Data Documentation

srp< ::lestes::std::list< srp< ss_literal_info > > > lestes::lang::cplus::sem::ss_compound_literal_info::constituents [private]

Constituents of the compound literal in their lexical order.

Definition at line 249 of file ss_literal_info.g.hh.

Referenced by constituents_get().

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

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

Definition at line 250 of file ss_literal_info.g.hh.

Referenced by reflection_get().


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