1 #ifndef COMPILER_SCANNER_H_INCLUDED
2 #define COMPILER_SCANNER_H_INCLUDED
90 bool scanFloat (
const std::string& intValue,
Parser& parser,
bool& cont);
Definition: scanner.hpp:58
bool scanSpecial(char c, Parser &parser, bool &cont)
Definition: scanner.cpp:397
Definition: scanner.hpp:69
Definition: scanner.hpp:69
putback_type mPutback
Definition: scanner.hpp:34
Definition: scanner.hpp:68
Definition: scanner.hpp:51
Definition: scanner.hpp:25
Definition: scanner.hpp:68
Definition: scanner.hpp:48
TokenLoc mLoc
Definition: scanner.hpp:30
float mPutbackFloat
Definition: scanner.hpp:37
void listKeywords(std::vector< std::string > &keywords)
Append all known keywords to keywords.
Definition: scanner.cpp:652
Definition: scanner.hpp:50
bool scanInt(char c, Parser &parser, bool &cont)
Definition: scanner.cpp:166
bool scanName(char c, Parser &parser, bool &cont)
Definition: scanner.cpp:283
void enableStrictKeywords()
Definition: scanner.cpp:666
Definition: scanner.hpp:68
void putbackName(const std::string &name, const TokenLoc &loc)
put back a name token
Definition: scanner.cpp:638
Location of a token in a source file.
Definition: tokenloc.hpp:10
Scanner & operator=(const Scanner &)
Definition: scanner.hpp:58
void enableIgnoreNewlines()
Definition: scanner.cpp:661
Definition: scanner.hpp:51
Definition: scanner.hpp:66
keyword
Definition: scanner.hpp:46
Definition: scanner.hpp:26
Definition: scanner.hpp:48
Definition: scanner.hpp:25
Definition: scanner.hpp:61
Definition: scanner.hpp:50
Definition: scanner.hpp:59
TokenLoc mPutbackLoc
Definition: scanner.hpp:39
Definition: scanner.hpp:50
Definition: scanner.hpp:69
bool mStrictKeywords
Definition: scanner.hpp:40
Error handling.
Definition: errorhandler.hpp:14
Definition: scanner.hpp:69
special
Definition: scanner.hpp:64
Definition: scanner.hpp:68
Collection of compiler extensions.
Definition: extensions.hpp:39
Definition: scanner.hpp:25
std::istream & mStream
Definition: scanner.hpp:32
void putbackSpecial(int code, const TokenLoc &loc)
put back a special token
Definition: scanner.cpp:617
Definition: scanner.hpp:55
Definition: scanner.hpp:61
Definition: scanner.hpp:58
Definition: scanner.hpp:71
Definition: scanner.hpp:26
Definition: scanner.hpp:61
std::string mPutbackName
Definition: scanner.hpp:38
void putback(char c)
Definition: scanner.cpp:44
Definition: scanner.hpp:60
Definition: scanner.hpp:68
Definition: scanner.hpp:70
Definition: scanner.hpp:67
bool scanToken(Parser &parser)
Definition: scanner.cpp:50
Definition: scanner.hpp:56
int code
Definition: crashcatcher.cpp:78
ErrorHandler & mErrorHandler
Definition: scanner.hpp:29
Definition: scanner.hpp:67
putback_type
Definition: scanner.hpp:23
void enableTolerantNames()
Definition: scanner.cpp:671
Definition: scanner.hpp:49
Definition: scanner.hpp:49
Definition: scanner.hpp:49
bool isStringCharacter(char c, bool lookAhead=true)
Definition: scanner.cpp:586
Definition: scanner.hpp:54
int mPutbackCode
Definition: scanner.hpp:35
Parser base class.
Definition: parser.hpp:17
Definition: scanner.hpp:25
void putbackFloat(float value, const TokenLoc &loc)
put back a float token
Definition: scanner.cpp:631
Definition: scanner.hpp:68
void putbackInt(int value, const TokenLoc &loc)
put back an integer token
Definition: scanner.cpp:624
Definition: scanner.hpp:54
Definition: scanner.hpp:50
static bool isWhitespace(char c)
Definition: scanner.cpp:597
void scan(Parser &parser)
Scan a token and deliver it to the parser.
Definition: scanner.cpp:612
Definition: scanner.hpp:52
Definition: scanner.hpp:53
int mPutbackInteger
Definition: scanner.hpp:36
void putbackKeyword(int keyword, const TokenLoc &loc)
put back a keyword token
Definition: scanner.cpp:645
bool scanFloat(const std::string &intValue, Parser &parser, bool &cont)
Definition: scanner.cpp:224
bool mIgnoreNewline
Definition: scanner.hpp:42
const Extensions * mExtensions
Definition: scanner.hpp:33
Definition: scanner.hpp:57
bool mTolerantNames
Definition: scanner.hpp:41
Scanner.
Definition: scanner.hpp:21
TokenLoc mPrevLoc
Definition: scanner.hpp:31
const char * name
Definition: crashcatcher.cpp:67
Definition: scanner.hpp:72