#include <lex_literal.g.hh>
Inheritance diagram for lestes::lang::cplus::lex::lex_integral_literal:

Public Types | |
| enum | base_type { DECIMAL, OCTAL, HEXADECIMAL } |
| Base type. More... | |
| enum | suffix_type { NONE, UNSIGNED, LONG, UNSIGNED_LONG } |
| Suffix type. More... | |
Public Member Functions | |
| base_type | base_get () const |
| The method base_get returns the value of the field lex_integral_literal::base. | |
| void | base_set (base_type) |
| The method base_set sets the field lex_integral_literal::base to the given value. | |
| suffix_type | suffix_get () const |
| The method suffix_get returns the value of the field lex_integral_literal::suffix. | |
| void | suffix_set (suffix_type) |
| The method suffix_set sets the field lex_integral_literal::suffix to the given value. | |
| ulint | start_get () const |
| The method start_get returns the value of the field lex_integral_literal::start. | |
| void | start_set (ulint) |
| The method start_set sets the field lex_integral_literal::start to the given value. | |
| ulint | end_get () const |
| The method end_get returns the value of the field lex_integral_literal::end. | |
| void | end_set (ulint) |
| The method end_set sets the field lex_integral_literal::end to the given value. | |
| virtual void | accept_lex_literal_visitor (ptr< lex_literal_visitor > v) |
| virtual ptr< reflection_list > | reflection_get () const |
| for purposes of dumping | |
| virtual ptr< field_list_list > | field_values_get () const |
| for purposes of dumping | |
Static Public Member Functions | |
| static ptr< lex_integral_literal > | create (base_type a__lex_integral_literal__base, suffix_type a__lex_integral_literal__suffix, ulint a__lex_integral_literal__start, ulint a__lex_integral_literal__end) |
| First generated factory method for class lex_integral_literal. | |
Protected Member Functions | |
| lex_integral_literal (base_type a__lex_integral_literal__base, suffix_type a__lex_integral_literal__suffix, ulint a__lex_integral_literal__start, ulint a__lex_integral_literal__end) | |
| Generated constructor for class lex_integral_literal. | |
| virtual void | gc_mark () |
| Marking routine for class lex_integral_literal. | |
Private Attributes | |
| base_type | base |
| Base. | |
| suffix_type | suffix |
| Suffix. | |
| ulint | start |
| Start of value. | |
| ulint | end |
| End of value. | |
Static Private Attributes | |
| static ptr< reflection_list > | reflection = reflection |
Represents integral literal properties necessary to determine the data type and numeric value. The associated value is the original number in the specified base with suffixes.
Definition at line 82 of file lex_literal.g.hh.
Base type.
Definition at line 85 of file lex_literal.g.hh.
00085 { 00086 DECIMAL, 00087 OCTAL, 00088 HEXADECIMAL 00089 };
Suffix type.
Types of literal suffix.
Definition at line 94 of file lex_literal.g.hh.
00094 { 00095 NONE, 00096 UNSIGNED, 00097 LONG, 00098 UNSIGNED_LONG 00099 };
| lestes::lang::cplus::lex::lex_integral_literal::lex_integral_literal | ( | base_type | a__lex_integral_literal__base, | |
| suffix_type | a__lex_integral_literal__suffix, | |||
| ulint | a__lex_integral_literal__start, | |||
| ulint | a__lex_integral_literal__end | |||
| ) | [protected] |
Generated constructor for class lex_integral_literal.
Generated constructor for class lex_integral_literal.
Definition at line 164 of file lex_literal.g.cc.
Referenced by create().
00168 : lex_literal(), base(a__lex_integral_literal__base), suffix(a__lex_integral_literal__suffix), start(a__lex_integral_literal__start), end(a__lex_integral_literal__end) 00169 {}
| lex_integral_literal::base_type lestes::lang::cplus::lex::lex_integral_literal::base_get | ( | ) | const |
The method base_get returns the value of the field lex_integral_literal::base.
Definition at line 72 of file lex_literal.g.cc.
References base.
00073 { 00074 return base; 00075 }
| void lestes::lang::cplus::lex::lex_integral_literal::base_set | ( | base_type | x | ) |
The method base_set sets the field lex_integral_literal::base to the given value.
| [in] | x | The new value to set lex_integral_literal::base to. |
Definition at line 81 of file lex_literal.g.cc.
References base.
00082 { 00083 lex_integral_literal::base = x; 00084 }
| lex_integral_literal::suffix_type lestes::lang::cplus::lex::lex_integral_literal::suffix_get | ( | ) | const |
The method suffix_get returns the value of the field lex_integral_literal::suffix.
Definition at line 90 of file lex_literal.g.cc.
References suffix.
00091 { 00092 return suffix; 00093 }
| void lestes::lang::cplus::lex::lex_integral_literal::suffix_set | ( | suffix_type | x | ) |
The method suffix_set sets the field lex_integral_literal::suffix to the given value.
| [in] | x | The new value to set lex_integral_literal::suffix to. |
Definition at line 99 of file lex_literal.g.cc.
References suffix.
00100 { 00101 lex_integral_literal::suffix = x; 00102 }
| ulint lestes::lang::cplus::lex::lex_integral_literal::start_get | ( | ) | const |
The method start_get returns the value of the field lex_integral_literal::start.
Definition at line 108 of file lex_literal.g.cc.
References start.
00109 { 00110 return start; 00111 }
| void lestes::lang::cplus::lex::lex_integral_literal::start_set | ( | ulint | x | ) |
The method start_set sets the field lex_integral_literal::start to the given value.
| [in] | x | The new value to set lex_integral_literal::start to. |
Definition at line 117 of file lex_literal.g.cc.
References start.
00118 { 00119 lex_integral_literal::start = x; 00120 }
| ulint lestes::lang::cplus::lex::lex_integral_literal::end_get | ( | ) | const |
The method end_get returns the value of the field lex_integral_literal::end.
Definition at line 126 of file lex_literal.g.cc.
References end.
00127 { 00128 return end; 00129 }
| void lestes::lang::cplus::lex::lex_integral_literal::end_set | ( | ulint | x | ) |
The method end_set sets the field lex_integral_literal::end to the given value.
| [in] | x | The new value to set lex_integral_literal::end to. |
Definition at line 135 of file lex_literal.g.cc.
References end.
00136 { 00137 lex_integral_literal::end = x; 00138 }
| void lestes::lang::cplus::lex::lex_integral_literal::accept_lex_literal_visitor | ( | ptr< lex_literal_visitor > | v | ) | [virtual] |
| ptr< lex_integral_literal > lestes::lang::cplus::lex::lex_integral_literal::create | ( | base_type | a__lex_integral_literal__base, | |
| suffix_type | a__lex_integral_literal__suffix, | |||
| ulint | a__lex_integral_literal__start, | |||
| ulint | a__lex_integral_literal__end | |||
| ) | [static] |
First generated factory method for class lex_integral_literal.
This factory method for class lex_integral_literal takes values of all fields as arguments.
Definition at line 149 of file lex_literal.g.cc.
References lex_integral_literal().
Referenced by lestes::lang::cplus::lex::preprocessor::classify_number(), and lestes::lang::cplus::lex::preprocessor::read().
00153 { 00154 return ptr< lex_integral_literal > ( new lex_integral_literal(a__lex_integral_literal__base, 00155 a__lex_integral_literal__suffix, 00156 a__lex_integral_literal__start, 00157 a__lex_integral_literal__end) ); 00158 }
| ptr< object::reflection_list > lestes::lang::cplus::lex::lex_integral_literal::reflection_get | ( | ) | const [virtual] |
for purposes of dumping
Reimplemented from lestes::lang::cplus::lex::lex_literal.
Definition at line 171 of file lex_literal.g.cc.
References lestes::std::list< T >::create(), reflection, and lestes::lang::cplus::lex::lex_literal::reflection_get().
00172 { 00173 if (!reflection) { 00174 typedef class_reflection::field_metadata md; 00175 typedef class_reflection::field_metadata_list mdlist; 00176 ptr<mdlist> mdl = mdlist::create(); 00177 mdl->push_back( md::create( "base", "base_type" ) ); 00178 mdl->push_back( md::create( "suffix", "suffix_type" ) ); 00179 mdl->push_back( md::create( "start", "ulint" ) ); 00180 mdl->push_back( md::create( "end", "ulint" ) ); 00181 reflection = reflection_list::create( lex_literal::reflection_get() ); 00182 reflection->push_back( class_reflection::create( "lex_integral_literal", mdl ) ); 00183 } 00184 return reflection; 00185 }
| ptr< object::field_list_list > lestes::lang::cplus::lex::lex_integral_literal::field_values_get | ( | ) | const [virtual] |
for purposes of dumping
Reimplemented from lestes::lang::cplus::lex::lex_literal.
Definition at line 187 of file lex_literal.g.cc.
References lestes::std::list< T >::create(), and lestes::lang::cplus::lex::lex_literal::field_values_get().
00188 { 00189 ptr < field_list_list > result = lex_literal::field_values_get(); 00190 result->push_back( value_list::create() ); 00191 result->back()->push_back( objectize< base_type > ::create( this->base ) ); 00192 result->push_back( value_list::create() ); 00193 result->back()->push_back( objectize< suffix_type > ::create( this->suffix ) ); 00194 result->push_back( value_list::create() ); 00195 result->back()->push_back( objectize< ulint > ::create( this->start ) ); 00196 result->push_back( value_list::create() ); 00197 result->back()->push_back( objectize< ulint > ::create( this->end ) ); 00198 return result; 00199 }
| void lestes::lang::cplus::lex::lex_integral_literal::gc_mark | ( | void | ) | [protected, virtual] |
Marking routine for class lex_integral_literal.
Marking routine is used for garbage collection.
Reimplemented from lestes::lang::cplus::lex::lex_literal.
Definition at line 206 of file lex_literal.g.cc.
References lestes::lang::cplus::lex::lex_literal::gc_mark().
00207 { 00208 lex_literal::gc_mark(); 00209 }
Base.
The numerical base of the literal.
Definition at line 157 of file lex_literal.g.hh.
Referenced by base_get(), and base_set().
Suffix.
Suffix of the literal.
Definition at line 162 of file lex_literal.g.hh.
Referenced by suffix_get(), and suffix_set().
ulint lestes::lang::cplus::lex::lex_integral_literal::start [private] |
Start of value.
Index pointing at the first digit of the value.
Definition at line 167 of file lex_literal.g.hh.
Referenced by start_get(), and start_set().
ulint lestes::lang::cplus::lex::lex_integral_literal::end [private] |
ptr< object::reflection_list > lestes::lang::cplus::lex::lex_integral_literal::reflection = reflection [static, private] |
Reimplemented from lestes::lang::cplus::lex::lex_literal.
Definition at line 170 of file lex_literal.g.hh.
Referenced by reflection_get().
1.5.1-20070107