summaryrefslogtreecommitdiff
path: root/src/pim/Scanner.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/pim/Scanner.cpp')
-rw-r--r--src/pim/Scanner.cpp15
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();