Clément Fournier
d815c5d173
Update grammar changelog
2021-03-05 11:48:05 +01:00
Clément Fournier
24587163c9
Merge branch 'master' into pr/3159
2021-03-05 11:46:59 +01:00
Andreas Dangel
4bfd72e658
[java] Infinite loop when parsing invalid code nested in lambdas
...
- fixes #3117
- backports part of StatementExpression production from pmd7
2021-03-05 09:58:29 +01:00
Clément Fournier
a0e8107249
Fix #3145 - parse exception with local records
2021-03-04 07:48:39 +01:00
Andreas Dangel
7187e1d451
Apply suggestions from code review
...
Co-authored-by: Clément Fournier <clement.fournier76@gmail.com>
2021-02-19 09:18:31 +01:00
Andreas Dangel
2ec77ad02f
[java] Remove support for Java 14 preview
2021-02-15 19:58:55 +01:00
Andreas Dangel
3b151e31c4
[java] JEP 397: Sealed Classes (Second Preview) for Java16 Preview
2021-02-15 19:33:36 +01:00
Andreas Dangel
8bc26f95aa
[java] JEP 395: Records for Java16
...
- Renamed ASTRecordConstructorDeclaration to
ASTCompactConstructorDeclaration to align naming to JLS
- ASTRecordDeclaration, ASTRecordComponentList, ASTRecordComponent,
ASTRecordBody, ASTCompactConstructorDeclaration are not
longer @Experimental
2021-02-14 19:42:59 +01:00
Andreas Dangel
64b501e0f4
[java] Rename ASTTypeTestPattern -> ASTTypePattern, remove @Experimental
...
With JEP 394 / Java16, this production has been renamed.
Pattern Matching for Instanceof is now a standard feature,
therefore the AST node is not experimental anymore.
2021-02-12 12:54:06 +01:00
Andreas Dangel
8c755fabe2
[java] JEP 394: Pattern Matching for instanceof for Java16
...
The TypePattern now allows the final keyword
and Annotations. Pattern variables are now only
effectively final.
2021-02-12 12:44:08 +01:00
Clément Fournier
3c1b0afcf6
Fix #2783
2020-09-16 15:40:45 +02:00
Clément Fournier
fc759db5ca
Fix #2767
...
Problem was the stack is empty if the local var declaration
is the first node of the compilation unit to be pushed.
2020-09-10 12:24:03 +02:00
XenoAmess
244a39db0f
fix typos.
2020-08-27 11:47:11 +08:00
Clément Fournier
2e1e0ed3a4
Rename PermittedSubclasses to PermitsList
2020-08-22 19:30:38 +02:00
Andreas Dangel
67b37de334
[java] Rework BlockStatement to allow local interfaces, enums, ...
2020-08-16 21:42:36 +02:00
Andreas Dangel
fceb474df0
[java] Remove "non-sealed" token and use semantic lookahead instead
2020-08-16 18:22:45 +02:00
Andreas Dangel
0d9b5a7c3b
[java] Support Sealed Classes with Java 15 Preview
2020-08-14 22:16:41 +02:00
Andreas Dangel
cda155891a
[java] Add ugly lookahead for local record declarations
...
so that it can be distinguished from local var decl or other
statements.
2020-08-14 20:56:26 +02:00
Andreas Dangel
4d2853ccc4
[java] Add support for local records (Java 15 Preview)
2020-08-14 18:55:00 +02:00
Andreas Dangel
e51519c5fd
[java] Support Records with Java 15 Preview
2020-08-13 20:42:08 +02:00
Andreas Dangel
e596a67297
[java] Support Pattern Matching for instanceof with Java 15 Preview.
2020-08-13 20:11:25 +02:00
Andreas Dangel
40f0eedf88
[java] Text Blocks are now a permanent language feature with JDK 15
2020-08-13 20:05:54 +02:00
Andreas Dangel
02a78f5bea
[java] Add versions 15 (new default) and 15-preview, remove 13-preview
2020-08-13 19:15:02 +02:00
Andreas Dangel
69ed0464a7
Merge branch 'pr-2385'
...
[java] Make yield statements more conditional #2385
Fixes #2319
2020-04-04 18:20:49 +02:00
Clément Fournier
e1a4b8ae97
Forbid type params for record ctors
2020-03-28 11:43:20 +01:00
Clément Fournier
b01d4dc0d7
Test
2020-03-28 11:36:42 +01:00
Clément Fournier
9e9c370a4a
Make yield more conditional
...
Refs #2319
2020-03-28 11:36:38 +01:00
Clément Fournier
f698a2e7aa
Small API improvements for records
2020-03-02 22:24:44 +01:00
Clément Fournier
18cc6a3e4e
Disallow throws clause on record constructor
2020-03-02 20:46:40 +01:00
Clément Fournier
fc0b437ad7
Fix record ctor with throws
2020-03-02 19:00:59 +01:00
Andreas Dangel
f1fe8ce5e1
[java] Remove version java 12 preview
...
Keep the tests and move them to java 14
except for the break expression
2020-02-28 19:37:13 +01:00
Andreas Dangel
ee211d42b1
[java] Remove unneccessary annotation parsing
2020-02-28 19:07:03 +01:00
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