jdl::parser_stack< T > Class Template Reference

#include <parser_stack.hpp>

List of all members.

Public Member Functions

 parser_stack ()
void push (T val, bool new_activation=false)
void new_ar ()
vector< T > & pop ()
size_t size () const
top () const
void clear ()
void print (ostream &out) const
 ~parser_stack ()

Private Member Functions

void check_invariant () const

Private Attributes

vector< T > operand_stack
vector< int > index_stack


Detailed Description

template<class T>
class jdl::parser_stack< T >

Definition at line 26 of file parser_stack.hpp.


Constructor & Destructor Documentation

template<class T>
jdl::parser_stack< T >::parser_stack (  )  [inline]

Definition at line 32 of file parser_stack.hpp.

template<class T>
jdl::parser_stack< T >::~parser_stack (  )  [inline]

Definition at line 53 of file parser_stack.hpp.


Member Function Documentation

template<class T>
void jdl::parser_stack< T >::check_invariant (  )  const [inline, private]

Definition at line 60 of file parser_stack.hpp.

References jdl::parser_stack< T >::index_stack, and jdl::parser_stack< T >::operand_stack.

Referenced by jdl::parser_stack< T >::pop(), and jdl::parser_stack< T >::push().

template<class T>
void jdl::parser_stack< T >::push ( val,
bool  new_activation = false 
) [inline]

Definition at line 78 of file parser_stack.hpp.

References jdl::parser_stack< T >::check_invariant(), jdl::parser_stack< T >::index_stack, and jdl::parser_stack< T >::operand_stack.

template<class T>
void jdl::parser_stack< T >::new_ar (  )  [inline]

Definition at line 36 of file parser_stack.hpp.

template<class T>
vector< T > & jdl::parser_stack< T >::pop (  )  [inline]

Definition at line 65 of file parser_stack.hpp.

References jdl::parser_stack< T >::check_invariant(), jdl::parser_stack< T >::index_stack, jdl::parser_stack< T >::operand_stack, and jdl::parser_stack< T >::size().

template<class T>
size_t jdl::parser_stack< T >::size (  )  const [inline]

Definition at line 40 of file parser_stack.hpp.

Referenced by jdl::parser_stack< T >::pop(), and jdl::parser_stack< T >::print().

template<class T>
T jdl::parser_stack< T >::top (  )  const [inline]

Definition at line 42 of file parser_stack.hpp.

template<class T>
void jdl::parser_stack< T >::clear (  )  [inline]

Definition at line 44 of file parser_stack.hpp.

template<class T>
void jdl::parser_stack< T >::print ( ostream &  out  )  const [inline]

Definition at line 87 of file parser_stack.hpp.

References jdl::parser_stack< T >::index_stack, jdl::parser_stack< T >::operand_stack, and jdl::parser_stack< T >::size().


Member Data Documentation

template<class T>
vector<T> jdl::parser_stack< T >::operand_stack [private]

Definition at line 27 of file parser_stack.hpp.

Referenced by jdl::parser_stack< T >::check_invariant(), jdl::parser_stack< boost::shared_ptr< jdl::component > >::clear(), jdl::parser_stack< T >::pop(), jdl::parser_stack< T >::print(), jdl::parser_stack< T >::push(), jdl::parser_stack< boost::shared_ptr< jdl::component > >::size(), and jdl::parser_stack< boost::shared_ptr< jdl::component > >::top().

template<class T>
vector<int> jdl::parser_stack< T >::index_stack [private]

Definition at line 28 of file parser_stack.hpp.

Referenced by jdl::parser_stack< T >::check_invariant(), jdl::parser_stack< boost::shared_ptr< jdl::component > >::clear(), jdl::parser_stack< boost::shared_ptr< jdl::component > >::new_ar(), jdl::parser_stack< boost::shared_ptr< jdl::component > >::parser_stack(), jdl::parser_stack< T >::pop(), jdl::parser_stack< T >::print(), and jdl::parser_stack< T >::push().


The documentation for this class was generated from the following file:
Generated on Sun Feb 17 16:55:50 2008 for JDLParser by  doxygen 1.5.3