96 Commits

Author SHA1 Message Date
Andreas Dangel
7d3df99134 [java] RecordBody - test with more annotation and use deep lookahead
Record constructors are not allowed to throw exceptions.
2020-02-28 18:41:22 +01:00
Andreas Dangel
0ecd1da200 [java] Get rid of RecordBodyDeclaration node 2020-02-28 18:32:33 +01:00
Andreas Dangel
fa28aa7e23 [java] Test annotations with RecordComponents 2020-02-28 17:59:39 +01:00
Andreas Dangel
e017def280 [java] Support vararg/array in RecordComponent and empty components 2020-02-28 17:35:44 +01:00
Andreas Dangel
5f43e198d5 [java] RecordConstructorDeclaration - do not use Name() 2020-02-28 17:01:57 +01:00
Andreas Dangel
9917e3f422 [java] RecordComponents -> RecordComponentList 2020-02-28 16:56:43 +01:00
Andreas Dangel
e2d84d6741 [java] Add grammar jdoc for new Record types 2020-02-28 16:50:57 +01:00
Andreas Dangel
8a224462fd [java] Add initial support for Java 14 Preview record types 2020-02-28 14:58:52 +01:00
Andreas Dangel
adfb2ab129 [java] Update grammar 2020-02-28 10:51:38 +01:00
Andreas Dangel
9a80f13164 [java] Fix new escape sequence "\s" detection 2020-02-27 21:23:33 +01:00
Andreas Dangel
d16751d136 [java] Add support for TextBlocks in Java14
* New escape sequence "\s" added
* Added experimental ASTLiteral::getTextBlockContent to retrieve
  the text block with stripped indentation
2020-02-27 21:11:02 +01:00
Andreas Dangel
9d5b7554f0 [java] Make sure, SwitchExpressions with yield work with java14
Add additional tests for java14, so that we can later simply remove
the java13 preview tests
2020-02-27 18:30:39 +01:00
Clément Fournier
ad023e8fa6 Support type test patterns 2020-02-09 00:10:50 +01:00
Clément Fournier
d91e626a0b Format idents in java grammar 2020-01-25 10:59:57 +01:00
Andreas Dangel
eba98b3898 Fixes from review, refs #1973 2019-09-12 20:22:45 +02:00
Andreas Dangel
970c86f557 [java] Introduce language version 12-preview and 13-preview 2019-09-11 20:36:29 +02:00
Andreas Dangel
09a183702c Revert "[java] Remove java12 break-with-expression support"
This reverts commit 2ba142274717238ee0862eed4aa2df3de2070218.
2019-09-07 10:13:02 +02:00
Andreas Dangel
f3e4a77105 [java] Adjust grammar for text blocks
Refs #1973
2019-09-06 15:21:08 +02:00
Andreas Dangel
2ba1422747 [java] Remove java12 break-with-expression support
This preview language feature has been replaced with
the yield statement in java 13.
2019-08-13 20:48:06 +02:00
Andreas Dangel
b110186ed7 [java] Add Java 13 support
* Add text block literal
2019-08-13 20:00:40 +02:00
Andreas Dangel
969972214c [java] Add Java 13 support
* Java 13 is the new default
* New yield statement
2019-08-13 18:42:40 +02:00
Clément Fournier
94afed80df Fix ambiguity with switch 2019-05-30 15:48:55 +02:00
Clément Fournier
39921f40b4 Add to grammar changelog 2019-05-30 15:06:50 +02:00
Clément Fournier
10158751d2 Fix local class modifiers being forgotten 2019-05-30 14:53:16 +02:00
Clément Fournier
ae8ba5128b Fix annotated module declaration 2019-05-25 07:27:59 +02:00
Andreas Dangel
ec68c2979c [java] avoid most lookaheads for SwitchStatements 2019-03-31 10:33:02 +02:00
Andreas Dangel
f8652fbf9a [java] Add SwitchLabeledRule interface, remove SwitchBlockGroup 2019-03-31 00:21:34 +01:00
Andreas Dangel
65b2990ad1 Fix break statement 2019-03-17 10:22:11 +01:00
Andreas Dangel
e103ef4869 [java] Rename SwitchLabeledRule -> SwitchBlockGroup
The plan is with PMD, that also the switch block statements
are grouped together with the switch label, like the switch rules
2019-03-17 10:22:06 +01:00
Andreas Dangel
d7aa1b1742 Support Expression in break statements 2019-03-16 11:55:38 +01:00
Clément Fournier
2793c3e029 Remove arbitrary lookahead 2019-03-16 11:55:38 +01:00
Andreas Dangel
65cac51445 [java] Add Java12 support 2019-03-16 11:55:38 +01:00
Andreas Dangel
8949019da6 [java] Add Java12 support 2019-03-16 11:55:38 +01:00
Rohit Kumar
874b528da8 Adding test cases and fixing review comments 2018-11-12 17:35:29 +05:30
Rohit Kumar
6fb8b6b1b6 Adding the fix for #1440 2018-11-12 01:56:35 +05:30
Clément Fournier
40ce9313ae Deprecate R[UN]SIGNEDSHIFT
No usages to report
2018-08-20 18:08:21 +02:00
Andreas Dangel
c362f5a77f [java] Prepare for Java 11 2018-07-19 22:00:34 +02:00
Clément Fournier
07516ee8ac Deprecate isTernary on ConditionalExpression 2018-07-03 02:13:22 +02:00
Clément Fournier
80e27d049a Add doc to some AST nodes 2018-06-26 12:21:22 +02:00
Andreas Dangel
a46288547d Rework "var" support for java10 using void production for LocalVariableType 2018-05-28 21:18:59 +02:00
Andreas Dangel
0b0479d7c0 Prevent using "var" as type name, annotation name or enum with Java 10 2018-05-28 20:07:10 +02:00
Andreas Dangel
8f4b2647c4 Merge branch 'master' into java10-basic-support 2018-05-21 10:07:05 +02:00
Andreas Dangel
93347719b3 [java] Rename ASTType.isVarType to ASTType.isTypeInferred 2018-05-11 16:17:00 +02:00
Juan Martín Sotuyo Dodero
5de405d23f [java] Fix scoping inconsistencies
- Reduce LocalScope creations. Method parameters and method locals have
the same visibility / reachability, so they should be in the same scope.
 - Fix the grammar `assert` lookahead. There is no need to use `(`
 - Fix illegal test code (shadowing of parameters is illegal)
 - Update Scope tests to deal with changes
 - Fixes #1051
2018-05-06 20:42:33 -03:00
Andreas Dangel
18dfba939c [java] First step for java10 local variable type inference 2018-05-01 17:14:06 +02:00
Juan Martín Sotuyo Dodero
32af9cabf2 [java] Update valid identifiers
- Newer Java versions have allowed for a lot more tokens in identifiers
2018-02-18 04:44:27 -03:00
Clément Fournier
22596e5176 Add ghost production for TypeAnnotation to cleanup the grammar
Type annotations can be nearly everywhere since Java 8, which makes the grammar
really hard to read when the check for correct jdk version is repeated all over
the place.
2018-02-16 23:53:37 +01:00
Juan Martín Sotuyo Dodero
f9df6ed01e [java] Fix grammar for <> in Java 1.8
- Fixes #888
 - Allow the contents of an anonymous class to use diamong notation, but
the anonymous class itself can't use it
2018-01-29 14:10:40 -03:00
Andreas Dangel
109f458dbf Fixes #793 [java] Parser error with private method in nested classes in interfaces
*   Remember old state to allow nesting
*   Fix ASTMethodDeclaration.isInterfaceMember
*   Extended tests
2017-12-22 12:03:20 +01:00
Andreas Dangel
64b862eef9 Fixes #793 [java] Parser error with private method in nested classes in interfaces 2017-12-20 22:42:34 +01:00