lestes::lang::cplus::lex::lex_literal Class Reference

Base class for literals. More...

#include <lex_literal.g.hh>

Inheritance diagram for lestes::lang::cplus::lex::lex_literal:

lestes::std::object lestes::std::mem::keystone lestes::lang::cplus::lex::lex_boolean_literal lestes::lang::cplus::lex::lex_character_literal lestes::lang::cplus::lex::lex_floating_literal lestes::lang::cplus::lex::lex_integral_literal lestes::lang::cplus::lex::lex_string_literal List of all members.

Public Member Functions

virtual void accept_lex_literal_visitor (ptr< lex_literal_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

 lex_literal ()
 Generated constructor for class lex_literal.
virtual void gc_mark ()
 Marking routine for class lex_literal.

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Base class for literals.

Represents abstract base for literal properties. The literal kind itself is represented by the inherited classes.

Definition at line 50 of file lex_literal.g.hh.


Constructor & Destructor Documentation

lestes::lang::cplus::lex::lex_literal::lex_literal (  )  [protected]

Generated constructor for class lex_literal.

Generated constructor for class lex_literal.

Author:
lsg

Definition at line 32 of file lex_literal.g.cc.

00033         : object()
00034 {}


Member Function Documentation

virtual void lestes::lang::cplus::lex::lex_literal::accept_lex_literal_visitor ( ptr< lex_literal_visitor v  )  [pure virtual]

Implemented in lestes::lang::cplus::lex::lex_integral_literal, lestes::lang::cplus::lex::lex_floating_literal, lestes::lang::cplus::lex::lex_character_literal, lestes::lang::cplus::lex::lex_string_literal, and lestes::lang::cplus::lex::lex_boolean_literal.

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

for purposes of dumping

Reimplemented from lestes::std::object.

Reimplemented in lestes::lang::cplus::lex::lex_integral_literal, lestes::lang::cplus::lex::lex_floating_literal, lestes::lang::cplus::lex::lex_character_literal, lestes::lang::cplus::lex::lex_string_literal, and lestes::lang::cplus::lex::lex_boolean_literal.

Definition at line 36 of file lex_literal.g.cc.

References lestes::std::list< T >::create(), reflection, and lestes::std::object::reflection_get().

Referenced by lestes::lang::cplus::lex::lex_boolean_literal::reflection_get(), lestes::lang::cplus::lex::lex_string_literal::reflection_get(), lestes::lang::cplus::lex::lex_character_literal::reflection_get(), lestes::lang::cplus::lex::lex_floating_literal::reflection_get(), and lestes::lang::cplus::lex::lex_integral_literal::reflection_get().

00037 {
00038         if (!reflection) {
00039                 typedef class_reflection::field_metadata md;
00040                 typedef class_reflection::field_metadata_list mdlist;
00041                 ptr<mdlist> mdl = mdlist::create();
00042                 reflection = reflection_list::create( ::lestes::std::object::reflection_get() );
00043                 reflection->push_back( class_reflection::create( "lex_literal", mdl ) );
00044         }
00045         return reflection;
00046 }

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

for purposes of dumping

Reimplemented from lestes::std::object.

Reimplemented in lestes::lang::cplus::lex::lex_integral_literal, lestes::lang::cplus::lex::lex_floating_literal, lestes::lang::cplus::lex::lex_character_literal, lestes::lang::cplus::lex::lex_string_literal, and lestes::lang::cplus::lex::lex_boolean_literal.

Definition at line 48 of file lex_literal.g.cc.

References lestes::std::object::field_values_get().

Referenced by lestes::lang::cplus::lex::lex_boolean_literal::field_values_get(), lestes::lang::cplus::lex::lex_string_literal::field_values_get(), lestes::lang::cplus::lex::lex_character_literal::field_values_get(), lestes::lang::cplus::lex::lex_floating_literal::field_values_get(), and lestes::lang::cplus::lex::lex_integral_literal::field_values_get().

00049 {
00050         ptr < field_list_list > result = ::lestes::std::object::field_values_get();
00051         return result;
00052 }

void lestes::lang::cplus::lex::lex_literal::gc_mark ( void   )  [protected, virtual]

Marking routine for class lex_literal.

Marking routine is used for garbage collection.

Author:
lsg

Reimplemented from lestes::std::mem::keystone.

Reimplemented in lestes::lang::cplus::lex::lex_integral_literal, lestes::lang::cplus::lex::lex_floating_literal, lestes::lang::cplus::lex::lex_character_literal, lestes::lang::cplus::lex::lex_string_literal, and lestes::lang::cplus::lex::lex_boolean_literal.

Definition at line 59 of file lex_literal.g.cc.

References lestes::std::mem::keystone::gc_mark().

Referenced by lestes::lang::cplus::lex::lex_boolean_literal::gc_mark(), lestes::lang::cplus::lex::lex_string_literal::gc_mark(), lestes::lang::cplus::lex::lex_character_literal::gc_mark(), lestes::lang::cplus::lex::lex_floating_literal::gc_mark(), and lestes::lang::cplus::lex::lex_integral_literal::gc_mark().

00060 {
00061 	::lestes::std::object::gc_mark();
00062 }


Member Data Documentation

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

Reimplemented from lestes::std::object.

Reimplemented in lestes::lang::cplus::lex::lex_integral_literal, lestes::lang::cplus::lex::lex_floating_literal, lestes::lang::cplus::lex::lex_character_literal, lestes::lang::cplus::lex::lex_string_literal, and lestes::lang::cplus::lex::lex_boolean_literal.

Definition at line 69 of file lex_literal.g.hh.

Referenced by reflection_get().


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