mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Update grammar
This commit is contained in:
parent
538f593691
commit
73c1c481c3
@ -16,17 +16,20 @@ ContractPart = StateVariableDeclaration | UsingForDeclaration
|
|||||||
|
|
||||||
InheritanceSpecifier = UserDefinedTypeName ( '(' Expression ( ',' Expression )* ')' )?
|
InheritanceSpecifier = UserDefinedTypeName ( '(' Expression ( ',' Expression )* ')' )?
|
||||||
|
|
||||||
StateVariableDeclaration = TypeName ( 'public' | 'internal' | 'private' | 'constant' )* Identifier ('=' Expression)? ';'
|
StateVariableDeclaration = TypeName ( 'public' | 'internal' | 'private' | 'constant' | OverrideSpecifier )* Identifier ('=' Expression)? ';'
|
||||||
UsingForDeclaration = 'using' Identifier 'for' ('*' | TypeName) ';'
|
UsingForDeclaration = 'using' Identifier 'for' ('*' | TypeName) ';'
|
||||||
StructDefinition = 'struct' Identifier '{'
|
StructDefinition = 'struct' Identifier '{'
|
||||||
( VariableDeclaration ';' (VariableDeclaration ';')* ) '}'
|
( VariableDeclaration ';' (VariableDeclaration ';')* ) '}'
|
||||||
|
|
||||||
ModifierDefinition = 'modifier' Identifier ParameterList? Block
|
ModifierDefinition = 'modifier' Identifier ParameterList? ( 'virtual' | OverrideSpecifier )* Block
|
||||||
ModifierInvocation = Identifier ( '(' ExpressionList? ')' )?
|
ModifierInvocation = Identifier ( '(' ExpressionList? ')' )?
|
||||||
|
|
||||||
FunctionDefinition = 'function' Identifier? ParameterList
|
FunctionDefinition = 'function' Identifier? ParameterList
|
||||||
( ModifierInvocation | StateMutability | 'external' | 'public' | 'internal' | 'private' )*
|
( ModifierInvocation | StateMutability | 'external' | 'public' | 'internal' | 'private' | 'virtual' | OverrideSpecifier )*
|
||||||
( 'returns' ParameterList )? ( ';' | Block )
|
( 'returns' ParameterList )? ( ';' | Block )
|
||||||
|
|
||||||
|
OverrideSpecifier = 'override' ( '(' UserDefinedTypeName (',' UserDefinedTypeName)* ')' )?
|
||||||
|
|
||||||
EventDefinition = 'event' Identifier EventParameterList 'anonymous'? ';'
|
EventDefinition = 'event' Identifier EventParameterList 'anonymous'? ';'
|
||||||
|
|
||||||
EnumValue = Identifier
|
EnumValue = Identifier
|
||||||
@ -168,6 +171,7 @@ AssemblyStatement = AssemblyBlock
|
|||||||
| AssemblySwitch
|
| AssemblySwitch
|
||||||
| AssemblyForLoop
|
| AssemblyForLoop
|
||||||
| AssemblyBreakContinue
|
| AssemblyBreakContinue
|
||||||
|
| AssemblyLeave
|
||||||
AssemblyFunctionDefinition =
|
AssemblyFunctionDefinition =
|
||||||
'function' Identifier '(' AssemblyIdentifierList? ')'
|
'function' Identifier '(' AssemblyIdentifierList? ')'
|
||||||
( '->' AssemblyIdentifierList )? AssemblyBlock
|
( '->' AssemblyIdentifierList )? AssemblyBlock
|
||||||
@ -180,6 +184,7 @@ AssemblyCase = 'case' Literal AssemblyBlock
|
|||||||
AssemblyDefault = 'default' AssemblyBlock
|
AssemblyDefault = 'default' AssemblyBlock
|
||||||
AssemblyForLoop = 'for' AssemblyBlock AssemblyExpression AssemblyBlock AssemblyBlock
|
AssemblyForLoop = 'for' AssemblyBlock AssemblyExpression AssemblyBlock AssemblyBlock
|
||||||
AssemblyBreakContinue = 'break' | 'continue'
|
AssemblyBreakContinue = 'break' | 'continue'
|
||||||
|
AssemblyLeave = 'leave'
|
||||||
AssemblyFunctionCall = Identifier '(' ( AssemblyExpression ( ',' AssemblyExpression )* )? ')'
|
AssemblyFunctionCall = Identifier '(' ( AssemblyExpression ( ',' AssemblyExpression )* )? ')'
|
||||||
|
|
||||||
AssemblyIdentifierList = Identifier ( ',' Identifier )*
|
AssemblyIdentifierList = Identifier ( ',' Identifier )*
|
||||||
|
Loading…
Reference in New Issue
Block a user