On Tue, 20 Oct 2020 12:03:39 GMT, Jan Lahoda <jlah...@openjdk.org> wrote:
>> This is the current proposed patch for the upcoming JEP 394, for pattern >> matching for instanceof. >> >> A summary of changes: >> -making the feature permanent (non-preview) >> -making the binding variables non-final (as per current specification >> proposal) >> -producing a compile-time error for the case where the expression's type is >> a subtype of the type test pattern's type >> (as per current specification proposal) >> -changing the AST structure so that the binding variable has a VariableTree >> in the AST. BindingPatternTree is preserved >> and encloses the VariableTree. The reason is better consistency in the API, >> with nodes like CatchTree, EnhancedForLoop >> Tree, etc. >> >> This change will not be integrated until JEP 394 is targetted. > > Jan Lahoda has updated the pull request with a new target base due to a merge > or a rebase. The incremental webrev > excludes the unrelated changes brought in by the merge/rebase. The pull > request contains 15 additional commits since > the last revision: > - Cleanup: using a null instead of List.of() as a parameter to > JavaCompiler.getTask > - Merge branch 'master' into patterns-instanceof3 > - Fixing more tests. > - Correcting positions. > - Improve the AST model. > - Merge branch 'master' into patterns-instanceof3 > - Updating @since tags. > - Merge branch 'master' into patterns-instanceof3 > - Cleaning up preview comments in javadoc. > - Merge branch 'master' into patterns-instanceof3 > - ... and 5 more: > https://git.openjdk.java.net/jdk/compare/3b3bcc2a...5978bca0 src/jdk.compiler/share/classes/com/sun/source/tree/BindingPatternTree.java line 48: > 46: * @deprecated Use getVariable().getType() > 47: */ > 48: @Deprecated shouldn't we use `@Deprecated(since=versionNumber)` ------------- PR: https://git.openjdk.java.net/jdk/pull/559