aboutsummaryrefslogtreecommitdiffstats
path: root/Parser.h
diff options
context:
space:
mode:
authorLefteris Karapetsas <lefteris@refu.co>2014-12-16 00:45:18 +0800
committerLefteris Karapetsas <lefteris@refu.co>2014-12-17 07:03:30 +0800
commitf7029726be3bbf119548a83696402512374d809d (patch)
tree4ba52a22a933d3f2779c8b0301f097b6ffde7ffa /Parser.h
parent5b802b685e794832bf8834183bf6c9604e513bbf (diff)
downloaddexon-solidity-f7029726be3bbf119548a83696402512374d809d.tar.gz
dexon-solidity-f7029726be3bbf119548a83696402512374d809d.tar.zst
dexon-solidity-f7029726be3bbf119548a83696402512374d809d.zip
Adding a ForStatement solidity AST Node.
- Adding ForStatement node - Implemented Parsing for ForStatement - A simple parsing test for the ForStatement - Work in progress
Diffstat (limited to 'Parser.h')
-rw-r--r--Parser.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/Parser.h b/Parser.h
index 52a374e0..343a85c0 100644
--- a/Parser.h
+++ b/Parser.h
@@ -59,6 +59,8 @@ private:
ASTPointer<Statement> parseStatement();
ASTPointer<IfStatement> parseIfStatement();
ASTPointer<WhileStatement> parseWhileStatement();
+ ASTPointer<ForStatement> parseForStatement();
+ ASTPointer<ASTNode> parseVardefOrExprstatement();
ASTPointer<VariableDefinition> parseVariableDefinition();
ASTPointer<ExpressionStatement> parseExpressionStatement();
ASTPointer<Expression> parseExpression();
@@ -72,6 +74,10 @@ private:
///@{
///@name Helper functions
+ /// Peeks ahead in the scanner to determine if an expression statement
+ /// could be a variable definition
+ bool peekVariableDefinition();
+
/// If current token value is not _value, throw exception otherwise advance token.
void expectToken(Token::Value _value);
Token::Value expectAssignmentOperator();