diff options
Diffstat (limited to 'src/pim/Scanner.cpp')
| -rw-r--r-- | src/pim/Scanner.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/pim/Scanner.cpp b/src/pim/Scanner.cpp index 7aba994..b56d2b6 100644 --- a/src/pim/Scanner.cpp +++ b/src/pim/Scanner.cpp @@ -86,6 +86,21 @@ namespace pim return Token(Token::DecimalConstant, cToken, cLine); return Token(Token::IntegerConstant, cToken, cLine); } + else if(cChar == '[') + { + cToken.clear(); + nextCharacter(); + while(std::isalpha(cChar) || std::isdigit(cChar) || cChar == '_' || cChar == '-') + { + cToken.push_back(cChar); + nextCharacter(); + } + nextCharacter(); + + std::transform(cToken.begin(), cToken.end(), cToken.begin(), ::toupper); + + return Token(Token::RTMacro, cToken, cLine); + } else if(cChar == '=') { nextCharacter(); |
