diff options
| author | Mike Buland <eichlan@xagasoft.com> | 2016-12-01 09:31:45 -0700 | 
|---|---|---|
| committer | Mike Buland <eichlan@xagasoft.com> | 2016-12-01 09:31:45 -0700 | 
| commit | 3015ea4677201060777435cf76815e898d221f8c (patch) | |
| tree | 8415fcef57ed5456ec03b2ea115ebd3789fd8c10 /src/token.cpp | |
| parent | 5b8df4e1ab3faffe5c010222ff3f8ce3a4ff810c (diff) | |
| download | clic-3015ea4677201060777435cf76815e898d221f8c.tar.gz clic-3015ea4677201060777435cf76815e898d221f8c.tar.bz2 clic-3015ea4677201060777435cf76815e898d221f8c.tar.xz clic-3015ea4677201060777435cf76815e898d221f8c.zip | |
The parser works.
There's still more to do, however.  It doesn't do math anymore, it produces
a script that can then be executed.  Now we have to capture that script and
execute it.
Diffstat (limited to '')
| -rw-r--r-- | src/token.cpp | 12 | 
1 files changed, 12 insertions, 0 deletions
| diff --git a/src/token.cpp b/src/token.cpp index 1eaa92a..0c7bda1 100644 --- a/src/token.cpp +++ b/src/token.cpp | |||
| @@ -100,8 +100,20 @@ Bu::Formatter &operator<<( Bu::Formatter &f, Token::Type eType ) | |||
| 100 | case Token::tEndOfLine: return f << "eol"; | 100 | case Token::tEndOfLine: return f << "eol"; | 
| 101 | case Token::tEndOfInput: return f << "eoi"; | 101 | case Token::tEndOfInput: return f << "eoi"; | 
| 102 | case Token::tNegate: return f << "neg"; | 102 | case Token::tNegate: return f << "neg"; | 
| 103 | case Token::tUninitialized: return f << "<->"; | ||
| 104 | case Token::tComputedValue: return f << "cmp"; | ||
| 103 | 105 | ||
| 104 | default: return f << "???"; | 106 | default: return f << "???"; | 
| 105 | } | 107 | } | 
| 106 | } | 108 | } | 
| 107 | 109 | ||
| 110 | Bu::Formatter &operator<<( Bu::Formatter &f, const Token &t ) | ||
| 111 | { | ||
| 112 | f << t.eType; | ||
| 113 | if( t.eType == Token::tNumber ) | ||
| 114 | f << "(" << (t.nVal?t.nVal->toString():"<null>") << ")"; | ||
| 115 | else if( t.eType == Token::tString || t.eType == Token::tVariable ) | ||
| 116 | f << "(" << (t.sVal?*(t.sVal):"<null>") << ")"; | ||
| 117 | return f; | ||
| 118 | } | ||
| 119 | |||
