FlexScanner Class Reference

Inheritance diagram for FlexScanner:

Inheritance graph
[legend]
Collaboration diagram for FlexScanner:

Collaboration graph
[legend]

List of all members.


Detailed Description

Note:
RAII object

Definition at line 82 of file scanner.cc.


Public Member Functions

 FlexScanner (std::istream &input, string fileName)
virtual ~FlexScanner ()
virtual bool readNext (Token &token)
virtual bool hasError () const

Private Attributes

PrivateFlexLexerflex_
 superior (flex based) scanner

Constructor & Destructor Documentation

FlexScanner ( std::istream &  input,
string  fileName 
) [inline]

Definition at line 84 of file scanner.cc.

References flex_.

virtual ~FlexScanner (  )  [inline, virtual]

Definition at line 87 of file scanner.cc.

References flex_.


Member Function Documentation

bool readNext ( Token token  )  [virtual]

read next token

Parameters:
token Where to store token to.
Returns:
Return true if token is read, false on EOF.

Implements IScanner.

Definition at line 303 of file scanner.cc.

References ETOKEN_ID, ETOKEN_NUMBER_DOUBLE, ETOKEN_NUMBER_INT, ETOKEN_STRING, flex_, Token::lineno, Token::numberDouble, Token::numberInt, PrivateFlexLexer::postError(), PrivateFlexLexer::readNext(), readNumber(), readString(), Token::text, and Token::type.

Here is the call graph for this function:

virtual bool hasError (  )  const [inline, virtual]

Return true if any error was detected.

Implements IErrorSensitive.

Definition at line 91 of file scanner.cc.

References flex_, and PrivateFlexLexer::hasError().

Here is the call graph for this function:


Member Data Documentation

PrivateFlexLexer* flex_ [private]

superior (flex based) scanner

Definition at line 95 of file scanner.cc.

Referenced by FlexScanner(), hasError(), readNext(), and ~FlexScanner().


The documentation for this class was generated from the following file:
Generated on Sat Jul 4 18:33:12 2009 for vyp08 (compiler and interpreter of VYP08 language) by  doxygen 1.5.4