lestes::lang::cplus::lex::pp_filter Class Reference

Token filter. More...

#include <pp_filter.hh>

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

Inheritance graph
[legend]
List of all members.

Public Member Functions

virtual ptr< pp_filterinput_get (void) const
 Returns input coming into filter.
virtual ptr< pp_tokenread (void) override
 Reads single token from the filter.
virtual void gc_mark (void)
 Marks the object.

Protected Member Functions

 pp_filter (void)
 Creates new object, initializes with no input.
 pp_filter (const ptr< pp_filter > &a_input)
 Creates new object, initializes with input.
ptr< pp_tokeninput_read (void)
 Reads single token from input.

Private Member Functions

 pp_filter (const pp_filter &copy)
 Hides copy constructor.
pp_filteroperator= (const pp_filter &rhs)
 Hides assignment operator.

Private Attributes

srp< pp_filterinput
 Input into this filter.

Detailed Description

Token filter.

Represents filter of preprocessing tokens.


Constructor & Destructor Documentation

lestes::lang::cplus::lex::pp_filter::pp_filter ( void   )  [protected]

Creates new object, initializes with no input.

Creates new filter with no input.

Postcondition:
input == NULL

lestes::lang::cplus::lex::pp_filter::pp_filter ( const ptr< pp_filter > &  a_input  )  [protected]

Creates new object, initializes with input.

Creates new filter with input.

Precondition:
a_input != NULL
Parameters:
a_input The input for the filter.

lestes::lang::cplus::lex::pp_filter::pp_filter ( const pp_filter copy  )  [private]

Hides copy constructor.


Member Function Documentation

ptr< pp_filter > lestes::lang::cplus::lex::pp_filter::input_get ( void   )  const [virtual]

Returns input coming into filter.

Returns current input into the filter.

Returns:
The current input.

virtual ptr<pp_token> lestes::lang::cplus::lex::pp_filter::read ( void   )  [pure virtual]

Reads single token from the filter.

Implemented in lestes::lang::cplus::lex::evaluator, lestes::lang::cplus::lex::space_remover, lestes::lang::cplus::lex::string_joiner, lestes::lang::cplus::lex::string_translator, lestes::lang::cplus::lex::token_sequence, lestes::lang::cplus::lex::token_stream, and lestes::lang::cplus::lex::unit_part.

void lestes::lang::cplus::lex::pp_filter::gc_mark ( void   )  [virtual]

Marks the object.

Marks the object.

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

Reimplemented in lestes::lang::cplus::lex::evaluator, lestes::lang::cplus::lex::string_joiner, lestes::lang::cplus::lex::token_sequence, lestes::lang::cplus::lex::token_stream, and lestes::lang::cplus::lex::unit_part.

ptr< pp_token > lestes::lang::cplus::lex::pp_filter::input_read ( void   )  [protected]

Reads single token from input.

Reads next token from input into this filter.

Precondition:
input != NULL
Returns:
Next token from input.

pp_filter& lestes::lang::cplus::lex::pp_filter::operator= ( const pp_filter rhs  )  [private]

Hides assignment operator.


Member Data Documentation

srp<pp_filter> lestes::lang::cplus::lex::pp_filter::input [private]

Input into this filter.

Reimplemented in lestes::lang::cplus::lex::evaluator.


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