lestes::lang::cplus::sem::ss_var_ref_by_qname Class Reference

Class for variable references by qualified name. More...

#include <ss_expression.g.hh>

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

lestes::lang::cplus::sem::ss_var_ref_abstract 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_decl_seqcontained_in_get () const
 The method contained_in_get returns the value of the field ss_var_ref_by_qname::contained_in.
void contained_in_set (const ptr< ss_decl_seq > &)
 The method contained_in_set sets the field ss_var_ref_by_qname::contained_in to the given value.
ptr< ss_declaration_timedecl_time_get () const
 The method decl_time_get returns the value of the field ss_var_ref_by_qname::decl_time.
void decl_time_set (const ptr< ss_declaration_time > &)
 The method decl_time_set sets the field ss_var_ref_by_qname::decl_time to the given value.
ptr< as_namequalified_name_get () const
 The method qualified_name_get returns the value of the field ss_var_ref_by_qname::qualified_name.
void qualified_name_set (const ptr< as_name > &)
 The method qualified_name_set sets the field ss_var_ref_by_qname::qualified_name 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_var_ref_by_qnamecreate (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_decl_seq > a__ss_var_ref_by_qname__contained_in, ptr< ss_declaration_time > a__ss_var_ref_by_qname__decl_time, ptr< as_name > a__ss_var_ref_by_qname__qualified_name)
 First generated factory method for class ss_var_ref_by_qname.

Protected Member Functions

 ss_var_ref_by_qname (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_decl_seq > a__ss_var_ref_by_qname__contained_in, ptr< ss_declaration_time > a__ss_var_ref_by_qname__decl_time, ptr< as_name > a__ss_var_ref_by_qname__qualified_name)
 Generated constructor for class ss_var_ref_by_qname.
virtual void gc_mark ()
 Marking routine for class ss_var_ref_by_qname.

Private Attributes

srp< ss_decl_seqcontained_in
srp< ss_declaration_timedecl_time
srp< as_namequalified_name
 This field represents qualified name.

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Class for variable references by qualified name.

This class is for accessing variables in templates ( X::static_variable ). Since there is no implementation of templates now, processing with this class will cause lassert.

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


Constructor & Destructor Documentation

lestes::lang::cplus::sem::ss_var_ref_by_qname::ss_var_ref_by_qname ( 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_decl_seq a__ss_var_ref_by_qname__contained_in,
ptr< ss_declaration_time a__ss_var_ref_by_qname__decl_time,
ptr< as_name a__ss_var_ref_by_qname__qualified_name 
) [protected]

Generated constructor for class ss_var_ref_by_qname.

Generated constructor for class ss_var_ref_by_qname.

Author:
lsg

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

Referenced by create().

00572         : ss_var_ref_abstract(a__ss_base_with_location__location,
00573                 a__ss_expression__type,
00574                 a__ss_expression__psp,
00575                 a__ss_expression__nsp), contained_in(checked(a__ss_var_ref_by_qname__contained_in)), decl_time(checked(a__ss_var_ref_by_qname__decl_time)), qualified_name(checked(a__ss_var_ref_by_qname__qualified_name))
00576 {}


Member Function Documentation

ptr< ss_decl_seq > lestes::lang::cplus::sem::ss_var_ref_by_qname::contained_in_get (  )  const

The method contained_in_get returns the value of the field ss_var_ref_by_qname::contained_in.

Returns:
The value of ss_var_ref_by_qname::contained_in.
Author:
lsg

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

References contained_in.

00486 {
00487         return contained_in;
00488 }

void lestes::lang::cplus::sem::ss_var_ref_by_qname::contained_in_set ( const ptr< ss_decl_seq > &  x  ) 

The method contained_in_set sets the field ss_var_ref_by_qname::contained_in to the given value.

Parameters:
[in] x The new value to set ss_var_ref_by_qname::contained_in to.
Author:
lsg

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

References contained_in.

00495 {
00496         ss_var_ref_by_qname::contained_in = x;
00497 }

ptr< ss_declaration_time > lestes::lang::cplus::sem::ss_var_ref_by_qname::decl_time_get (  )  const

The method decl_time_get returns the value of the field ss_var_ref_by_qname::decl_time.

Returns:
The value of ss_var_ref_by_qname::decl_time.
Author:
lsg

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

References decl_time.

00504 {
00505         return decl_time;
00506 }

void lestes::lang::cplus::sem::ss_var_ref_by_qname::decl_time_set ( const ptr< ss_declaration_time > &  x  ) 

The method decl_time_set sets the field ss_var_ref_by_qname::decl_time to the given value.

Parameters:
[in] x The new value to set ss_var_ref_by_qname::decl_time to.
Author:
lsg

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

References decl_time.

00513 {
00514         ss_var_ref_by_qname::decl_time = x;
00515 }

ptr< as_name > lestes::lang::cplus::sem::ss_var_ref_by_qname::qualified_name_get (  )  const

The method qualified_name_get returns the value of the field ss_var_ref_by_qname::qualified_name.

Returns:
The value of ss_var_ref_by_qname::qualified_name.
Author:
lsg

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

References qualified_name.

00522 {
00523         return qualified_name;
00524 }

void lestes::lang::cplus::sem::ss_var_ref_by_qname::qualified_name_set ( const ptr< as_name > &  x  ) 

The method qualified_name_set sets the field ss_var_ref_by_qname::qualified_name to the given value.

Parameters:
[in] x The new value to set ss_var_ref_by_qname::qualified_name to.
Author:
lsg

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

References qualified_name.

00531 {
00532         ss_var_ref_by_qname::qualified_name = x;
00533 }

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

Implements lestes::lang::cplus::sem::ss_var_ref_abstract.

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

00536 {
00537         return v->visit_ss_var_ref_by_qname( this );
00538 }

ptr< ss_var_ref_by_qname > lestes::lang::cplus::sem::ss_var_ref_by_qname::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_decl_seq a__ss_var_ref_by_qname__contained_in,
ptr< ss_declaration_time a__ss_var_ref_by_qname__decl_time,
ptr< as_name a__ss_var_ref_by_qname__qualified_name 
) [static]

First generated factory method for class ss_var_ref_by_qname.

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

Author:
lsg

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

References ss_var_ref_by_qname().

00551 {
00552         return ptr< ss_var_ref_by_qname > ( new ss_var_ref_by_qname(a__ss_base_with_location__location,
00553                 a__ss_expression__type,
00554                 a__ss_expression__psp,
00555                 a__ss_expression__nsp,
00556                 a__ss_var_ref_by_qname__contained_in,
00557                 a__ss_var_ref_by_qname__decl_time,
00558                 a__ss_var_ref_by_qname__qualified_name) );
00559 }

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

for purposes of dumping

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

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

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

00579 {
00580         if (!reflection) {
00581                 typedef class_reflection::field_metadata md;
00582                 typedef class_reflection::field_metadata_list mdlist;
00583                 ptr<mdlist> mdl = mdlist::create();
00584                 mdl->push_back( md::create( "contained_in", "ss_decl_seq" ) );
00585                 mdl->push_back( md::create( "decl_time", "ss_declaration_time" ) );
00586                 mdl->push_back( md::create( "qualified_name", "as_name" ) );
00587                 reflection = reflection_list::create( ss_var_ref_abstract::reflection_get() );
00588                 reflection->push_back( class_reflection::create( "ss_var_ref_by_qname", mdl ) );
00589         }
00590         return reflection;
00591 }

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

for purposes of dumping

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

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

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

00594 {
00595         ptr < field_list_list > result = ss_var_ref_abstract::field_values_get();
00596         result->push_back( value_list::create() );
00597         result->back()->push_back( this->contained_in );
00598         result->push_back( value_list::create() );
00599         result->back()->push_back( this->decl_time );
00600         result->push_back( value_list::create() );
00601         result->back()->push_back( this->qualified_name );
00602         return result;
00603 }

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

Marking routine for class ss_var_ref_by_qname.

Marking routine is used for garbage collection.

Author:
lsg

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

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

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

00611 {
00612         ss_var_ref_abstract::gc_mark();
00613 }


Member Data Documentation

srp< ss_decl_seq > lestes::lang::cplus::sem::ss_var_ref_by_qname::contained_in [private]

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

Referenced by contained_in_get(), and contained_in_set().

srp< ss_declaration_time > lestes::lang::cplus::sem::ss_var_ref_by_qname::decl_time [private]

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

Referenced by decl_time_get(), and decl_time_set().

srp< as_name > lestes::lang::cplus::sem::ss_var_ref_by_qname::qualified_name [private]

This field represents qualified name.

Since we dont know the type before template initialization happens, there is no obvious standard ss_type representing this name. To convert current as type to ss type, we will wait for instantiation.

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

Referenced by qualified_name_get(), and qualified_name_set().

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

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

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