lestes::lang::cplus::lex::token_input Class Reference

Abstract input of tokens. More...

#include <token_input.hh>

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

Inheritance graph
[legend]
List of all members.

Public Member Functions

virtual ptr< pp_tokenpeek_front (void) override
 Returns front token.
virtual ptr< pp_tokenread_front (void) override
 Reads front token, squeezing whitespace.
virtual ptr< pp_tokenread_front_skip_ws (void) override
 Reads front token, skipping front whitespace, but not newline.
virtual bool skip_front_ws (void) override
 Skips front whitespace.

Protected Member Functions

 token_input (void)
 Creates object, initializes with no input.
 token_input (const ptr< pp_filter > &a_input)
 Creates object, initializes with input.

Private Member Functions

 token_input (const token_input &)
 Hides copy constructor.
token_inputoperator= (const token_input &)
 Hides assignment operator.

Detailed Description

Abstract input of tokens.

Represents abstract input of tokens, which also behaves as pp_filter. Provides sequential access at front and expansion of lines.


Constructor & Destructor Documentation

lestes::lang::cplus::lex::token_input::token_input ( void   )  [inline, protected]

Creates object, initializes with no input.

Creates the object, initializes with no input. Useful when the data is stored directly in the object.

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

Creates object, initializes with input.

Creates the object, initializes with input.

Precondition:
a_input != NULL
Parameters:
a_input The input to read from.

lestes::lang::cplus::lex::token_input::token_input ( const token_input  )  [private]

Hides copy constructor.


Member Function Documentation

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

Returns front token.

Implemented in lestes::lang::cplus::lex::token_sequence, and lestes::lang::cplus::lex::token_stream.

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

Reads front token, squeezing whitespace.

Implemented in lestes::lang::cplus::lex::token_sequence, and lestes::lang::cplus::lex::token_stream.

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

Reads front token, skipping front whitespace, but not newline.

Implemented in lestes::lang::cplus::lex::token_sequence, and lestes::lang::cplus::lex::token_stream.

virtual bool lestes::lang::cplus::lex::token_input::skip_front_ws ( void   )  [pure virtual]

Skips front whitespace.

Implemented in lestes::lang::cplus::lex::token_sequence, and lestes::lang::cplus::lex::token_stream.

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

Hides assignment operator.


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