summaryrefslogtreecommitdiff
path: root/src/pim/Scanner.cpp
diff options
context:
space:
mode:
authorSimon Robertshaw <simon@hardwired.org.uk>2012-09-23 10:39:20 (GMT)
committer Simon Robertshaw <simon@hardwired.org.uk>2012-09-23 10:39:20 (GMT)
commit1905e497442bc39cf8896e54812718064a52d621 (patch)
treeca472ca41bbe8ebfb15e71deb62670141fb4369a /src/pim/Scanner.cpp
parent644c1307124dffd13268445d0aebaed13a090c78 (diff)
downloadpowder-1905e497442bc39cf8896e54812718064a52d621.zip
powder-1905e497442bc39cf8896e54812718064a52d621.tar.gz
Macros and property setting
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();