00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef _ConfigParserLexer_incl_
00020 #define _ConfigParserLexer_incl_
00021
00022 #include <iostream>
00023 #include <string>
00024
00025 #ifndef nodefine_rel_FlexLexer
00026
00027 #undef yyFlexLexer
00028 #define yyFlexLexer rel_FlexLexer
00029 #include <FlexLexer.h>
00030 #undef yyFlexLexer
00031
00032 #endif // nodefine_rel_FlexLexer
00033
00034 namespace rel
00035 {
00036
00037 class ConfigParserLexer : public rel_FlexLexer
00038 {
00039 public:
00040 ConfigParserLexer(std::istream *input);
00041 virtual ~ConfigParserLexer();
00042
00043 int yylex(const char *&stringResult);
00044
00045 public:
00046
00047 int readBuffer(char *output, int maxSize);
00048
00049 virtual void processComment(const char *text);
00050
00051 int lineNum;
00052 std::string literal;
00053 std::istream *input;
00054 const char *lval;
00055 };
00056
00057
00058 }
00059
00060
00061 #endif
00062