lestes::lang::cplus::sem::ss_literal Class Reference

Class for literal value. More...

#include <ss_expression.g.hh>

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

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_literal_infovalue_get () const
 The method value_get returns the value of the field ss_literal::value.
void value_set (const ptr< ss_literal_info > &)
 The method value_set sets the field ss_literal::value 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_literalcreate (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_literal_info > a__ss_literal__value)
 First generated factory method for class ss_literal.

Protected Member Functions

 ss_literal (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_literal_info > a__ss_literal__value)
 Generated constructor for class ss_literal.
virtual void gc_mark ()
 Marking routine for class ss_literal.

Private Attributes

srp< ss_literal_infovalue

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Class for literal value.

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


Constructor & Destructor Documentation

lestes::lang::cplus::sem::ss_literal::ss_literal ( 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_literal_info a__ss_literal__value 
) [protected]

Generated constructor for class ss_literal.

Generated constructor for class ss_literal.

Author:
lsg

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

Referenced by create().

00256         : ss_expression(a__ss_base_with_location__location,
00257                 a__ss_expression__type,
00258                 a__ss_expression__psp,
00259                 a__ss_expression__nsp), value(checked(a__ss_literal__value))
00260 {}


Member Function Documentation

ptr< ss_literal_info > lestes::lang::cplus::sem::ss_literal::value_get ( void   )  const

The method value_get returns the value of the field ss_literal::value.

Returns:
The value of ss_literal::value.
Author:
lsg

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

References value.

00212 {
00213         return value;
00214 }

void lestes::lang::cplus::sem::ss_literal::value_set ( const ptr< ss_literal_info > &  x  ) 

The method value_set sets the field ss_literal::value to the given value.

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

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

References value.

00221 {
00222         ss_literal::value = x;
00223 }

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

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

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

00226 {
00227         return v->visit_ss_literal( this );
00228 }

ptr< ss_literal > lestes::lang::cplus::sem::ss_literal::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_literal_info a__ss_literal__value 
) [static]

First generated factory method for class ss_literal.

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

Author:
lsg

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

References ss_literal().

00239 {
00240         return ptr< ss_literal > ( new ss_literal(a__ss_base_with_location__location,
00241                 a__ss_expression__type,
00242                 a__ss_expression__psp,
00243                 a__ss_expression__nsp,
00244                 a__ss_literal__value) );
00245 }

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

for purposes of dumping

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

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

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

00263 {
00264         if (!reflection) {
00265                 typedef class_reflection::field_metadata md;
00266                 typedef class_reflection::field_metadata_list mdlist;
00267                 ptr<mdlist> mdl = mdlist::create();
00268                 mdl->push_back( md::create( "value", "ss_literal_info" ) );
00269                 reflection = reflection_list::create( ss_expression::reflection_get() );
00270                 reflection->push_back( class_reflection::create( "ss_literal", mdl ) );
00271         }
00272         return reflection;
00273 }

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

for purposes of dumping

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

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

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

00276 {
00277         ptr < field_list_list > result = ss_expression::field_values_get();
00278         result->push_back( value_list::create() );
00279         result->back()->push_back( this->value );
00280         return result;
00281 }

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

Marking routine for class ss_literal.

Marking routine is used for garbage collection.

Author:
lsg

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

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

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

00289 {
00290         ss_expression::gc_mark();
00291 }


Member Data Documentation

srp< ss_literal_info > lestes::lang::cplus::sem::ss_literal::value [private]

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

Referenced by value_get(), and value_set().

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

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

Definition at line 212 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