diff options
| author | Simon 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) |
| commit | 1905e497442bc39cf8896e54812718064a52d621 (patch) | |
| tree | ca472ca41bbe8ebfb15e71deb62670141fb4369a /src/pim/Scanner.cpp | |
| parent | 644c1307124dffd13268445d0aebaed13a090c78 (diff) | |
| download | powder-1905e497442bc39cf8896e54812718064a52d621.zip powder-1905e497442bc39cf8896e54812718064a52d621.tar.gz | |
Macros and property setting
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(); |
