Commit Graph

52 Commits

Author SHA1 Message Date
Christian Parpart
d67322a186 Introduce namespace langutil in liblangutil directory.
Also:
- Use {}-style list initialisation for SourceLocation construction
- Introduce new system includes
- Changes the API of the Scanner to take source as value (with move) as opposed to as a reference
2018-11-21 19:13:44 +00:00
Christian Parpart
87821c53c3 Isolating files shared between Yul- and Solidity language frontend. 2018-11-21 18:58:12 +00:00
Christian Parpart
f112377dd4
Refactor solidity::Token into an enum class with TokenTraits helper namespace 2018-10-22 17:00:51 +02:00
Lazaridis
4bcd89105c provide general hex-literal error message, fixes #1802
dummy
2018-10-09 06:51:19 +03:00
Daniel Kirchner
1ce3581a52 Accept `address payable` during parsing. 2018-09-11 14:52:23 +02:00
Erik Kundt
182a0a9551 Disallows old constructor syntax. 2018-07-18 14:29:01 +02:00
Daniel Kirchner
e4b7b2160e Add new reserved keywords. 2018-06-12 16:02:53 +02:00
Erik Kundt
2e9f5d1c98 Introduces emit token and removes identifier workaround. 2018-06-11 21:21:22 +01:00
mingchuan
b7cafcbdf9
Allow using calldata keyword to specify data location 2018-05-30 18:05:55 +08:00
Alex Beregszaszi
252bde8542 Introduce Token::friendlyName() helper 2018-05-04 13:11:23 +01:00
Alex Beregszaszi
5668377c72 Introduce pure specifier on functions 2017-08-24 13:46:18 +01:00
Alex Beregszaszi
efe4d68a7b Introduce view (and keep constant as an alias) 2017-08-22 18:24:22 +01:00
Alex Beregszaszi
2a9ba937ba Replace constant/payable with StateMutability in AST 2017-08-14 14:21:47 +01:00
Alex Beregszaszi
3b41cd3c23 Rename Token::Const to Token::Constant 2017-08-09 12:50:53 +01:00
Alex Beregszaszi
b615b01449 Move UndefMacros from libdevcore to libsolidity/parsing 2017-07-02 00:09:46 +01:00
Alex Beregszaszi
d5f8ce90c7 Merge interface/Exceptions and interface/Utils 2017-06-22 11:25:07 +01:00
Alex Beregszaszi
54230d2d5d Support interface (contract) keyword in the parser 2017-03-17 16:27:04 +00:00
Yoichi Hirai
43b56a61aa
parsing: default and null are reserved keywords 2016-12-02 11:52:11 +01:00
VoR0220
3f9f725737 Fix licensing headers
Signed-off-by: VoR0220 <rj@erisindustries.com>
2016-11-23 12:22:33 +01:00
chriseth
462fc84e53 Merge pull request #1016 from ethereum/reserved
Report the usage of reserved keywords more nicely
2016-09-06 15:52:44 +02:00
Alex Beregszaszi
cfb6dfc35e Introduce isReservedKeyword() 2016-09-06 12:01:02 +01:00
Alex Beregszaszi
496b7ea1d2 Reserve view and pure as keywords 2016-09-06 11:37:00 +01:00
Alex Beregszaszi
a34f2f1a31 Support payable keyword for functions 2016-09-05 21:28:18 +02:00
chriseth
3c412ed2f6 Version pragma. 2016-09-01 00:02:51 +02:00
Alex Beregszaszi
ec3298535e Introduce hex literals (#832)
* Introduce hex keyword token

* Support hex literals

* Include tests for hex literals

* Document hex literals
2016-08-16 16:31:23 +02:00
Alex Beregszaszi
970260bf0f Reserved keywords update (#833)
* Reserve abstract, interface and payable keywords

* Keywords as and using aren't reserved anymore - they're used

* Reserve the static keyword
2016-08-16 16:28:45 +02:00
Denton Liu
cab8e63a0e Revert "Change After to a deprecated token"
This reverts commit 91c97f73b50fc87662b5490b2fe6de1c6ef376c7.
2016-08-11 10:15:59 -04:00
Denton Liu
be98d3db51 Change After to a deprecated token 2016-08-11 10:15:59 -04:00
Denton Liu
0988eba4fe Remove after from Token.h 2016-08-11 10:15:59 -04:00
Denton Liu
8fbe994075 Fix isCompareOp() 2016-07-20 17:05:24 -04:00
Denton Liu
827208d1d6 Move in as a keyword to reserved word section 2016-07-20 15:42:18 -04:00
Alex Beregszaszi
f8ccf3eebf Fix Token::isBitOp to exclude shift operators 2016-06-07 19:39:05 +01:00
chriseth
6f54b13d7a Remove log.h from solidity. 2016-04-12 01:03:46 +02:00
VoR0220
1b39d3b5d4 solAsserts added and some changes rolled back. 2016-03-30 13:15:54 -05:00
VoR0220
6c61e28dc2 Got it working exactly like you wanted ;) 2016-03-30 11:54:00 -05:00
chriseth
9b00290d74 Remove timestamp again and some fixes for ufixed parsing. 2016-03-11 17:50:09 +01:00
RJ Catalano
d0054a8d29 added keyword type and some tests, changes in lexical cast 2016-03-11 17:50:09 +01:00
RJ Catalano
b8bcb706e9 stylistic change, and got lexical cast to work with an iterator range 2016-03-11 17:49:32 +01:00
LianaHus
58e07151e3 - inline and assembly keywords added
- some style fixes
2016-03-11 17:49:32 +01:00
RJ Catalano
67793f1aed changed documentation and using lexical cast 2016-03-11 17:49:32 +01:00
RJ Catalano
9f5c3977fb changed extractUnsigned to handle iterators rather than a string 2016-03-11 17:49:32 +01:00
RJ Catalano
2738f4066a changed 1 to 0 in invalid argument catch block 2016-03-11 17:49:32 +01:00
RJ Catalano
93114949a3 needed this one string of notation 2016-03-11 17:49:32 +01:00
RJ Catalano
953e92b6f5 added from identifier or keyword handling of fixed types 2016-03-11 17:49:32 +01:00
RJ Catalano
29b74be413 fixed keyword added in for token type 2016-03-11 17:49:32 +01:00
RJ Catalano
9b67969fd6 further optimization, splitting function into pieces
generating strings on the fly, changed name, and added two tests
2016-02-18 11:23:00 -06:00
RJ Catalano
d2c0712f36 added const correctness to extract functions in Token
optimizations added in

more elegant solution created for m declaration

ubuntu wants to get rid of 0 <= first statement...so I will

change returnToken to token
2016-02-18 11:22:58 -06:00
RJ Catalano
84f2eb461b added two functions in Token to handle long identifiers, redid fromIdentifierOrKeyword, and made complementary changes in scanner and parser 2016-02-18 11:22:58 -06:00
RJ Catalano
f4da126018 tests added and changes made
fixed some silly problems in Token.cpp

windows error fix
2016-02-18 11:22:56 -06:00
RJ Catalano
7b918a7bc7 changes to redefine the token list, the scanner, and the parser and how they pass around variable types of different sizes
not ready for change to FixedPoint just yet

made this more const correct and added a switch statement for easier reading
2016-02-18 11:22:52 -06:00