aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Beregszaszi <alex@rtfs.hu>2017-08-17 04:19:09 +0800
committerAlex Beregszaszi <alex@rtfs.hu>2017-08-17 04:19:09 +0800
commit47b6aa1f5b92dbc9d65de6e507d18b57c62ed35f (patch)
treebd0eabfe49b7c0aa3f9d9e3fa0c7190c48e84b18
parent83b90f3e8a3ee168ba00eff33c4443d00bbb8a57 (diff)
downloaddexon-solidity-47b6aa1f5b92dbc9d65de6e507d18b57c62ed35f.tar.gz
dexon-solidity-47b6aa1f5b92dbc9d65de6e507d18b57c62ed35f.tar.zst
dexon-solidity-47b6aa1f5b92dbc9d65de6e507d18b57c62ed35f.zip
Update grammar to reflect state mutability
-rw-r--r--docs/grammar.txt5
-rw-r--r--docs/types.rst2
2 files changed, 4 insertions, 3 deletions
diff --git a/docs/grammar.txt b/docs/grammar.txt
index a9838ccb..90dc12ac 100644
--- a/docs/grammar.txt
+++ b/docs/grammar.txt
@@ -25,7 +25,7 @@ ModifierDefinition = 'modifier' Identifier ParameterList? Block
ModifierInvocation = Identifier ( '(' ExpressionList? ')' )?
FunctionDefinition = 'function' Identifier? ParameterList
- ( ModifierInvocation | 'constant' | 'payable' | 'external' | 'public' | 'internal' | 'private' )*
+ ( ModifierInvocation | StateMutability | 'external' | 'public' | 'internal' | 'private' )*
( 'returns' ParameterList )? ( ';' | Block )
EventDefinition = 'event' Identifier IndexedParameterList 'anonymous'? ';'
@@ -50,9 +50,10 @@ UserDefinedTypeName = Identifier ( '.' Identifier )*
Mapping = 'mapping' '(' ElementaryTypeName '=>' TypeName ')'
ArrayTypeName = TypeName '[' Expression? ']'
-FunctionTypeName = 'function' TypeNameList ( 'internal' | 'external' | 'constant' | 'payable' )*
+FunctionTypeName = 'function' TypeNameList ( 'internal' | 'external' | StateMutability )*
( 'returns' TypeNameList )?
StorageLocation = 'memory' | 'storage'
+StateMutability = 'constant' | 'payable'
Block = '{' Statement* '}'
Statement = IfStatement | WhileStatement | ForStatement | Block | InlineAssemblyStatement |
diff --git a/docs/types.rst b/docs/types.rst
index abf8bb17..13c848c2 100644
--- a/docs/types.rst
+++ b/docs/types.rst
@@ -337,7 +337,7 @@ be passed via and returned from external function calls.
Function types are notated as follows::
- function (<parameter types>) {internal|external} [constant] [payable] [returns (<return types>)]
+ function (<parameter types>) {internal|external} [constant|payable] [returns (<return types>)]
In contrast to the parameter types, the return types cannot be empty - if the
function type should not return anything, the whole ``returns (<return types>)``