142 Commits

Author SHA1 Message Date
Clément Fournier
dd5afcfc90 Flesh out explicit constructor invoc API 2019-05-20 20:27:07 +02:00
Clément Fournier
ef7605ad6b Fix some nested lookeahead corner cases 2019-05-20 20:27:07 +02:00
Clément Fournier
592557e948 Fix constructor invocation ambiguity 2019-05-20 20:27:07 +02:00
Clément Fournier
dc4a0777e5 Use AnonymousClassDeclaration in enum constants too 2019-05-20 20:27:07 +02:00
Clément Fournier
a4533648bb Update jjt changelog 2019-05-20 20:25:05 +02:00
Clément Fournier
f2257efec7 Improve dsl 2019-05-20 20:25:05 +02:00
Clément Fournier
1966a7648c Cleanup grammar 2019-05-20 20:23:06 +02:00
Clément Fournier
5adccd362e Fix switch expression tests 2019-05-20 20:23:06 +02:00
Clément Fournier
b8d3225377 Improve dsl a bit 2019-05-20 20:23:06 +02:00
Clément Fournier
048a422e59 Remove useless stuff from grammar 2019-05-20 20:23:06 +02:00
Clément Fournier
7f2d3534cc Use LambdaParameter for lambda expressions 2019-05-20 20:23:06 +02:00
Clément Fournier
6ffa2f32b9 Simplify CastExpression Lookahead 2019-05-20 20:23:06 +02:00
Clément Fournier
8d8ef2ebf7 Make EqualityExpression same as ShiftExpr 2019-05-20 20:23:06 +02:00
Clément Fournier
6b97f8363d Stricter RelationalExpression parsing 2019-05-20 20:23:06 +02:00
Clément Fournier
c0eaa44540 Also make ShiftExpr like AdditiveExpr 2019-05-20 20:23:06 +02:00
Clément Fournier
8486825445 Do the same for MultiplicativExpr 2019-05-20 20:23:05 +02:00
Clément Fournier
614e083f01 Document 2019-05-20 20:23:05 +02:00
Clément Fournier
163529ccfd Left-recursive AdditiveExpr 2019-05-20 20:23:05 +02:00
Clément Fournier
a231d4761d Use ant replace instead of checking in JJTJavaParserState 2019-05-20 20:13:12 +02:00
Clément Fournier
d1f0c0fcd0 Test unary expressions 2019-05-20 20:13:12 +02:00
Clément Fournier
96915574dc Figure out Array alloc dims 2019-05-20 20:13:12 +02:00
Clément Fournier
7213a7d5d8 Get rid of AnnotatedType, reintroduce TypeBound
This is todo later
2019-05-20 20:13:12 +02:00
Clément Fournier
3e36c1621b Remove LateInitNode 2019-05-20 20:13:12 +02:00
Clément Fournier
9af293b694 Start removing LateInitNode w/ ArrayAccess 2019-05-20 20:13:12 +02:00
Clément Fournier
9fb592a0b0 Fix tests by unwrapping removed nodes 2019-05-20 20:13:12 +02:00
Clément Fournier
a9b5801650 Revert "Remove annotated type"
This reverts commit 6068851275447712a8d9ff08dae28f698b4b76e6.
2019-05-20 20:13:12 +02:00
Clément Fournier
90d4ce5fbd Remove annotated type 2019-05-20 20:13:12 +02:00
Clément Fournier
5e37483c63 Fix resource being a Name 2019-05-20 20:13:12 +02:00
Clément Fournier
2d83c9284e Make TypeBound #void 2019-05-20 20:13:12 +02:00
Clément Fournier
839698dc21 Make annotation an interface 2019-05-20 20:13:12 +02:00
Clément Fournier
ec5e1e43f8 Add way to make negative test cases 2019-05-20 20:13:12 +02:00
Clément Fournier
ae8bcb8b20 Intersection & wildcard types 2019-05-20 20:13:12 +02:00
Clément Fournier
f962d6e811 Replace Optional with nullable annots 2019-05-20 20:13:12 +02:00
Clément Fournier
87025463fe Fix compilation 2019-05-20 20:13:12 +02:00
Clément Fournier
a4216ea4e3 Deprecate VariableInitializer 2019-05-20 20:13:12 +02:00
Clément Fournier
b3e287ae2a Rename operator enums for consistency 2019-05-20 20:13:12 +02:00
Clément Fournier
a4bbc44773 Make variable initializer void 2019-05-20 20:13:12 +02:00
Clément Fournier
8e9d8ea08c Make LateInitNode an abstract class 2019-05-20 20:13:12 +02:00
Clément Fournier
0bb9f4f60f Super and this implement LateInitNode 2019-05-20 20:13:12 +02:00
Clément Fournier
e39c160f7c Document 2019-05-20 20:13:12 +02:00
Clément Fournier
beebb1f956 Use AmbiguousName in types 2019-05-20 20:13:12 +02:00
Clément Fournier
a650289c27 Figure out some disambiguation 2019-05-20 20:13:12 +02:00
Clément Fournier
800abc9d4a Add assignment expression 2019-05-20 20:13:12 +02:00
Clément Fournier
ea067cc676 Remove useless productions 2019-05-20 20:13:12 +02:00
Clément Fournier
56b2e6c420 Document 2019-05-20 20:13:12 +02:00
Clément Fournier
5a554101fd Split allocation expression 2019-05-20 20:13:12 +02:00
Clément Fournier
42de08d64e Do the same for method calls 2019-05-20 20:13:12 +02:00
Clément Fournier
9eb05f5e95 Do the same for field accesses 2019-05-20 20:13:12 +02:00
Clément Fournier
69f0507d44 Delete the name node in method references 2019-05-20 20:13:12 +02:00
Clément Fournier
55fe20667c Introduce LateInitNode to always perform full init 2019-05-20 20:13:12 +02:00