aboutsummaryrefslogtreecommitdiffstats
path: root/Parser.h
diff options
context:
space:
mode:
authorChristian <c@ethdev.com>2015-01-29 21:35:28 +0800
committerChristian <c@ethdev.com>2015-01-30 04:26:11 +0800
commit4a6ed84386ed7bc3abd2b4cf2441b29a5af38816 (patch)
treea4428b3bd31d3b05383b61e060cd768c4a7604db /Parser.h
parent3701543ae8dd8ffbfd58e5648d45699468f10a55 (diff)
downloaddexon-solidity-4a6ed84386ed7bc3abd2b4cf2441b29a5af38816.tar.gz
dexon-solidity-4a6ed84386ed7bc3abd2b4cf2441b29a5af38816.tar.zst
dexon-solidity-4a6ed84386ed7bc3abd2b4cf2441b29a5af38816.zip
Parsing of events.
Diffstat (limited to 'Parser.h')
-rw-r--r--Parser.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/Parser.h b/Parser.h
index d3bff67e..69478c81 100644
--- a/Parser.h
+++ b/Parser.h
@@ -45,6 +45,14 @@ private:
/// End position of the current token
int getEndPosition() const;
+ struct VarDeclParserOptions {
+ VarDeclParserOptions() {}
+ bool allowVar = false;
+ bool isPublic = false;
+ bool isStateVariable = false;
+ bool allowIndexed = false;
+ };
+
///@{
///@name Parsing functions for the AST nodes
ASTPointer<ImportDirective> parseImportDirective();
@@ -52,13 +60,14 @@ private:
ASTPointer<InheritanceSpecifier> parseInheritanceSpecifier();
ASTPointer<FunctionDefinition> parseFunctionDefinition(bool _isPublic, ASTString const* _contractName);
ASTPointer<StructDefinition> parseStructDefinition();
- ASTPointer<VariableDeclaration> parseVariableDeclaration(bool _allowVar, bool _isPublic = false, bool _isStateVar = false);
+ ASTPointer<VariableDeclaration> parseVariableDeclaration(VarDeclParserOptions const& _options = VarDeclParserOptions());
ASTPointer<ModifierDefinition> parseModifierDefinition();
+ ASTPointer<EventDefinition> parseEventDefinition();
ASTPointer<ModifierInvocation> parseModifierInvocation();
ASTPointer<Identifier> parseIdentifier();
ASTPointer<TypeName> parseTypeName(bool _allowVar);
ASTPointer<Mapping> parseMapping();
- ASTPointer<ParameterList> parseParameterList(bool _allowEmpty = true);
+ ASTPointer<ParameterList> parseParameterList(bool _allowEmpty = true, bool _allowIndexed = false);
ASTPointer<Block> parseBlock();
ASTPointer<Statement> parseStatement();
ASTPointer<IfStatement> parseIfStatement();