diff options
| author | Mike Buland <mike@xagasoft.com> | 2013-04-23 11:47:01 -0600 |
|---|---|---|
| committer | Mike Buland <mike@xagasoft.com> | 2013-04-23 11:47:01 -0600 |
| commit | 04f56c12e82ea5228b2b65e68c46ed7f4563182b (patch) | |
| tree | 89a8db02dae8aaafd70f91bb15f21209cd1fa0ed /src/parser.h | |
| parent | 9f138260dafeb5a1b541fff8dd577422439feb0b (diff) | |
| download | clic-04f56c12e82ea5228b2b65e68c46ed7f4563182b.tar.gz clic-04f56c12e82ea5228b2b65e68c46ed7f4563182b.tar.bz2 clic-04f56c12e82ea5228b2b65e68c46ed7f4563182b.tar.xz clic-04f56c12e82ea5228b2b65e68c46ed7f4563182b.zip | |
Variables work.
Diffstat (limited to 'src/parser.h')
| -rw-r--r-- | src/parser.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/parser.h b/src/parser.h index 5563613..2b1a4af 100644 --- a/src/parser.h +++ b/src/parser.h | |||
| @@ -2,7 +2,9 @@ | |||
| 2 | #define PARSER_H | 2 | #define PARSER_H |
| 3 | 3 | ||
| 4 | #include <bu/list.h> | 4 | #include <bu/list.h> |
| 5 | #include <bu/hash.h> | ||
| 5 | #include "token.h" | 6 | #include "token.h" |
| 7 | #include "number.h" | ||
| 6 | 8 | ||
| 7 | namespace Bu | 9 | namespace Bu |
| 8 | { | 10 | { |
| @@ -23,13 +25,17 @@ private: | |||
| 23 | void unwind(); | 25 | void unwind(); |
| 24 | int reqTokens( Token::Type eType ); | 26 | int reqTokens( Token::Type eType ); |
| 25 | int getPriority( Token::Type eType ); | 27 | int getPriority( Token::Type eType ); |
| 28 | Number &deref( Token &t ); | ||
| 26 | 29 | ||
| 27 | private: | 30 | private: |
| 28 | Lexer &lex; | 31 | Lexer &lex; |
| 29 | Bu::Stream &rOut; | 32 | Bu::Stream &rOut; |
| 30 | typedef Bu::List<Token> TokenStack; | 33 | typedef Bu::List<Token> TokenStack; |
| 34 | typedef Bu::Hash<Bu::String, Number> VarHash; | ||
| 31 | TokenStack tsTerminal; | 35 | TokenStack tsTerminal; |
| 32 | TokenStack tsNonTerminal; | 36 | TokenStack tsNonTerminal; |
| 37 | Number nZero; | ||
| 38 | VarHash hVars; | ||
| 33 | }; | 39 | }; |
| 34 | 40 | ||
| 35 | #endif | 41 | #endif |
