solparse
solparse copied to clipboard
Solidity Parser for Solium
https://github.com/duaraghav8/solparse/blob/master/solidity.pegjs#L1192 shouldn't be in a `start_version` & `end_version` format
``` pragma solidity 0.4.0; pragma solidity ^0.4.0; pragma solidity >= 0.4.0; pragma solidity 0.4.0; pragma solidity != 0.4.0; pragma solidity >=0.4.0 = 0.4; pragma solidity 0.4; pragma solidity != 0.4;...
A lot of definitions in the grammar are similar to ``` id:Identifier __ params:("(" __ InformalParameterList? __ ")")? ``` Notice that the first whitespace directive `__` should exist **inside** params...
http://solidity.readthedocs.io/en/develop/miscellaneous.html?highlight=grammar#language-grammar http://solidity.readthedocs.io/en/develop/assembly.html#parsing-grammar
Reproduced from https://github.com/duaraghav8/Solium/issues/34
`for (var (a, b, c) = (1, 2, 3); a < 10; (a, b, c) = (2, 3, 5)) {}` is accepted in solidity but solparse doesn't parse something like...
Because the semicolon after pragma statement is being parsed as empty statement and not as part of PragmaStatement
and also for ModifierDeclarations code = `contract Foo {\n\tmodifier bar () returns (string) {\n\t\treturn "Hello";\n\t}\n\n\n\tfunction baz () {}\n}` `a = sp.parse (code).body [0]` `code.slice (0,a.body [0].end)` returns `contract Foo {\n\tmodifier...
line 851 of pegjs file. Confirm if the triple shift >>> is part of solidity or not.