Lexical Analysis implementation. More...
#include <jaula_lexan.h>
Public Member Functions | |
| Lexan_Error const * | getErrorReport (void) const |
| Retrieves details for the last error detected. | |
| std::string const & | getTokenData (void) const |
| Retrieves last token associated data. | |
| Lexan (std::istream &in_stream, bool comments_allowed=false) | |
| Constructor. | |
| virtual void | LexerError (const char *detail) |
| Error report. | |
| virtual int | yylex () |
| Retrieves tokens from the input. | |
| virtual | ~Lexan () |
| Destructor. | |
Private Attributes | |
| bool | commented |
| Flag for extending language to accept # comments. | |
| Lexan_Error * | pErrorReport |
| Pointer to the last exception detected. | |
| std::string | tokenData |
| Container for the token associated data. | |
Lexical Analysis implementation.
| JAULA::Lexan::Lexan | ( | std::istream & | in_stream, | |
| bool | comments_allowed = false | |||
| ) |
Constructor.
| in_stream | stream for the input data to analyze | |
| comments_allowed | flag to extend basic format and allow for hash symbol '#' starting comments in input. |
| virtual JAULA::Lexan::~Lexan | ( | ) | [virtual] |
Destructor.
| Lexan_Error const* JAULA::Lexan::getErrorReport | ( | void | ) | const |
Retrieves details for the last error detected.
| std::string const& JAULA::Lexan::getTokenData | ( | void | ) | const |
Retrieves last token associated data.
| virtual void JAULA::Lexan::LexerError | ( | const char * | detail | ) | [virtual] |
Error report.
| detail | Text for the error received |
| virtual int JAULA::Lexan::yylex | ( | ) | [virtual] |
Retrieves tokens from the input.
Referenced by JAULA::Parser::parseStream().
bool JAULA::Lexan::commented [private] |
Flag for extending language to accept # comments.
Lexan_Error* JAULA::Lexan::pErrorReport [private] |
Pointer to the last exception detected.
std::string JAULA::Lexan::tokenData [private] |
Container for the token associated data.
Copyright (c) 2007, 2008, 2009 Kombo Morongo.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".