Inheritance diagram for lestes::lang::cplus::syn::one_hinter:

Public Member Functions | |
| void | push_state () |
| Copies current state and pushed in onto the stack (which makes it current). | |
| void | pop_state () |
| void | qual_scope_set (const ptr< ss_decl_seq > &s) |
| void | elab_spec_set (const ptr< elab_spec_key > &es) |
| void | namespace_mode_set (bool b) |
| ptr< ss_decl_seq > | qual_scope_get () const |
| ptr< elab_spec_key > | elab_spec_get () const |
| bool | namespace_mode_get () const |
Static Public Member Functions | |
| static ptr< one_hinter > | create () |
Protected Member Functions | |
| one_hinter () | |
| void | gc_mark () |
Private Attributes | |
| srp< list< srp< state_type > > > | state_stack |
Classes | |
| class | state_type |
Definition at line 77 of file hinter.cc.
| lestes::lang::cplus::syn::one_hinter::one_hinter | ( | ) | [inline, protected] |
Definition at line 153 of file hinter.cc.
00153 : state_stack( list< srp<state_type> >::create() ) 00154 { 00155 state_stack->push_back( state_type::create() ); 00156 }
| void lestes::lang::cplus::syn::one_hinter::gc_mark | ( | void | ) | [inline, protected] |
Definition at line 157 of file hinter.cc.
00158 { 00159 state_stack.gc_mark(); 00160 object::gc_mark(); 00161 }
| static ptr<one_hinter> lestes::lang::cplus::syn::one_hinter::create | ( | void | ) | [inline, static] |
Definition at line 163 of file hinter.cc.
Referenced by lestes::lang::cplus::syn::hinter::init(), and lestes::lang::cplus::syn::spawn_hinter_action::run().
00164 { 00165 return new one_hinter(); 00166 }
| void lestes::lang::cplus::syn::one_hinter::push_state | ( | ) | [inline] |
Copies current state and pushed in onto the stack (which makes it current).
Definition at line 169 of file hinter.cc.
00170 { 00171 state_stack->push_back( state_type::create( state_stack->back() ) ); 00172 }
| void lestes::lang::cplus::syn::one_hinter::pop_state | ( | ) | [inline] |
Definition at line 173 of file hinter.cc.
References lassert.
00174 { 00175 lassert( !state_stack->empty() ); 00176 state_stack->pop_back(); 00177 lassert( !state_stack->empty() ); 00178 }
| void lestes::lang::cplus::syn::one_hinter::qual_scope_set | ( | const ptr< ss_decl_seq > & | s | ) | [inline] |
Definition at line 185 of file hinter.cc.
References lassert.
00186 { 00187 lassert( !state_stack->empty() ); 00188 state_stack->back()->qual_scope_set( s ); 00189 }
| void lestes::lang::cplus::syn::one_hinter::elab_spec_set | ( | const ptr< elab_spec_key > & | es | ) | [inline] |
Definition at line 190 of file hinter.cc.
References lassert.
00191 { 00192 lassert( !state_stack->empty() ); 00193 state_stack->back()->elab_spec_set( es ); 00194 }
| void lestes::lang::cplus::syn::one_hinter::namespace_mode_set | ( | bool | b | ) | [inline] |
Definition at line 195 of file hinter.cc.
References lassert.
00196 { 00197 lassert( !state_stack->empty() ); 00198 state_stack->back()->namespace_mode_set( b ); 00199 }
| ptr<ss_decl_seq> lestes::lang::cplus::syn::one_hinter::qual_scope_get | ( | ) | const [inline] |
Definition at line 206 of file hinter.cc.
References lassert.
00207 { 00208 lassert( !state_stack->empty() ); 00209 return state_stack->back()->qual_scope_get(); 00210 }
| ptr<elab_spec_key> lestes::lang::cplus::syn::one_hinter::elab_spec_get | ( | ) | const [inline] |
Definition at line 211 of file hinter.cc.
References lassert.
00212 { 00213 lassert( !state_stack->empty() ); 00214 return state_stack->back()->elab_spec_get(); 00215 }
| bool lestes::lang::cplus::syn::one_hinter::namespace_mode_get | ( | ) | const [inline] |
Definition at line 216 of file hinter.cc.
References lassert.
00217 { 00218 lassert( !state_stack->empty() ); 00219 return state_stack->back()->namespace_mode_get(); 00220 }
srp< list< srp<state_type> > > lestes::lang::cplus::syn::one_hinter::state_stack [private] |
1.5.1-20070107