lestes::lang::cplus::lex::stream_source Class Reference

Stream data source. More...

#include <stream_source.hh>

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

Inheritance graph
[legend]
List of all members.

Public Member Functions

ptr< ucn_tokenread (void)
 Reads one token from file.

Static Public Member Functions

static ptr< stream_sourcecreate (const ptr< istream_wrapper > &a_wrapper)
 Returns new file source, initializes with input stream.

Protected Member Functions

 stream_source (const ptr< istream_wrapper > &a_wrapper)
 Creates new object, initializes with input stream.
virtual void gc_mark (void)
 Marks the object.

Private Member Functions

 stream_source (const stream_source &)
 Hides copy constructor.
stream_sourceoperator= (const stream_source &)
 Hides assignment operator.

Private Attributes

srp< istream_wrapper > wrapper
 Stream to read from.
::std::istream * stream
 Direct reference to the stream.

Detailed Description

Stream data source.

Represents data source reading from stream.


Constructor & Destructor Documentation

lestes::lang::cplus::lex::stream_source::stream_source ( const ptr< istream_wrapper > &  a_wrapper  )  [protected]

Creates new object, initializes with input stream.

Creates the object, initializes with wrapper.

Parameters:
a_wrapper The stream wrapper.

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

Hides copy constructor.


Member Function Documentation

ptr< ucn_token > lestes::lang::cplus::lex::stream_source::read ( void   )  [virtual]

Reads one token from file.

Reads next token from stream.

Returns:
The next token.

Implements lestes::lang::cplus::lex::ucn_filter.

ptr< stream_source > lestes::lang::cplus::lex::stream_source::create ( const ptr< istream_wrapper > &  a_wrapper  )  [static]

Returns new file source, initializes with input stream.

Returns new instance, initializes with stream and file info.

Parameters:
a_wrapper The stream wrapper.
Returns:
The new instance.

void lestes::lang::cplus::lex::stream_source::gc_mark ( void   )  [protected, virtual]

Marks the object.

Marks the object.

Reimplemented from lestes::lang::cplus::lex::ucn_filter.

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

Hides assignment operator.


Member Data Documentation

srp<istream_wrapper> lestes::lang::cplus::lex::stream_source::wrapper [private]

Stream to read from.

::std::istream* lestes::lang::cplus::lex::stream_source::stream [private]

Direct reference to the stream.


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