diff options
author | rnveach <rveach02@gmail.com> | 2016-06-12 09:21:29 -0400 |
---|---|---|
committer | Roman Ivanov <romani@users.noreply.github.com> | 2016-06-12 06:21:29 -0700 |
commit | c7834c28ce1c55e053062dd7a21785d9e161414a (patch) | |
tree | 2e6689682a1d9a1d5959bb1aaf8b7ca637fe98df /src/test | |
parent | bca44e516ea063983ad64fffb4e1b7d37ce3f11b (diff) | |
download | checkstyle-c7834c28ce1c55e053062dd7a21785d9e161414a.tar.gz |
Issue #3239: added receiver parameter to java grammar (#3260)
Diffstat (limited to 'src/test')
4 files changed, 495 insertions, 373 deletions
diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/grammars/java8/ReceiverParameterTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/grammars/java8/ReceiverParameterTest.java new file mode 100644 index 000000000..33df1841e --- /dev/null +++ b/src/test/java/com/puppycrawl/tools/checkstyle/grammars/java8/ReceiverParameterTest.java @@ -0,0 +1,47 @@ +//////////////////////////////////////////////////////////////////////////////// +// checkstyle: Checks Java source code for adherence to a set of rules. +// Copyright (C) 2001-2016 the original author or authors. +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +//////////////////////////////////////////////////////////////////////////////// + +package com.puppycrawl.tools.checkstyle.grammars.java8; + +import java.io.File; +import java.io.IOException; + +import org.junit.Test; + +import com.puppycrawl.tools.checkstyle.BaseCheckTestSupport; +import com.puppycrawl.tools.checkstyle.DefaultConfiguration; +import com.puppycrawl.tools.checkstyle.checks.naming.MemberNameCheck; +import com.puppycrawl.tools.checkstyle.utils.CommonUtils; + +public class ReceiverParameterTest extends BaseCheckTestSupport { + @Override + protected String getPath(String filename) throws IOException { + return super.getPath("grammars" + File.separator + + "java8" + File.separator + filename); + } + + @Test + public void testCanParse() + throws Exception { + final DefaultConfiguration checkConfig = + createCheckConfig(MemberNameCheck.class); + final String[] expected = CommonUtils.EMPTY_STRING_ARRAY; + verify(checkConfig, getPath("InputReceiverParameter.java"), expected); + } +} diff --git a/src/test/resources/com/puppycrawl/tools/checkstyle/grammars/InputRegressionJava8Class1.java b/src/test/resources/com/puppycrawl/tools/checkstyle/grammars/InputRegressionJava8Class1.java index 5e4f369ed..cac287930 100644 --- a/src/test/resources/com/puppycrawl/tools/checkstyle/grammars/InputRegressionJava8Class1.java +++ b/src/test/resources/com/puppycrawl/tools/checkstyle/grammars/InputRegressionJava8Class1.java @@ -23,6 +23,8 @@ public class InputRegressionJava8Class1 { void m1() throws @Nullable Exception {} public static <T> void m2(T @Nullable [] array) {} public void m3() throws NullPointerException, @Nullable ArrayIndexOutOfBoundsException {} + public void m4(InputRegressionJava8Class1 this) {} + public void m5(@Nullable InputRegressionJava8Class1 this) {} { List<String> vlist = new ArrayList<String>(); @@ -57,6 +59,10 @@ public class InputRegressionJava8Class1 { } static final Comparator<?> f = (Comparator<?>) (dateTime1, dateTime2) -> { return 0; }; + + private class Inner { + public Inner(InputRegressionJava8Class1 InputRegressionJava8Class1.this) {} + } } ; class InputRegressionJava8TypeParam <@Nullable T> { diff --git a/src/test/resources/com/puppycrawl/tools/checkstyle/grammars/InputRegressionJava8Class1Ast.txt b/src/test/resources/com/puppycrawl/tools/checkstyle/grammars/InputRegressionJava8Class1Ast.txt index b1e1f344d..c0c519928 100644 --- a/src/test/resources/com/puppycrawl/tools/checkstyle/grammars/InputRegressionJava8Class1Ast.txt +++ b/src/test/resources/com/puppycrawl/tools/checkstyle/grammars/InputRegressionJava8Class1Ast.txt @@ -258,388 +258,447 @@ CLASS_DEF -> CLASS_DEF [17:0] | | `--IDENT -> ArrayIndexOutOfBoundsException [25:60] | `--SLIST -> { [25:91] | `--RCURLY -> } [25:92] - |--INSTANCE_INIT -> INSTANCE_INIT [27:4] - | `--SLIST -> { [27:4] - | |--VARIABLE_DEF -> VARIABLE_DEF [28:8] - | | |--MODIFIERS -> MODIFIERS [28:8] - | | |--TYPE -> TYPE [28:8] - | | | |--IDENT -> List [28:8] - | | | `--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [28:12] - | | | |--GENERIC_START -> < [28:12] - | | | |--TYPE_ARGUMENT -> TYPE_ARGUMENT [28:13] - | | | | `--IDENT -> String [28:13] - | | | `--GENERIC_END -> > [28:19] - | | |--IDENT -> vlist [28:21] - | | `--ASSIGN -> = [28:27] - | | `--EXPR -> EXPR [28:29] - | | `--LITERAL_NEW -> new [28:29] - | | |--IDENT -> ArrayList [28:33] - | | |--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [28:42] - | | | |--GENERIC_START -> < [28:42] - | | | |--TYPE_ARGUMENT -> TYPE_ARGUMENT [28:43] - | | | | `--IDENT -> String [28:43] - | | | `--GENERIC_END -> > [28:49] - | | |--LPAREN -> ( [28:50] - | | |--ELIST -> ELIST [28:51] - | | `--RPAREN -> ) [28:51] - | |--SEMI -> ; [28:52] - | `--RCURLY -> } [29:4] - |--METHOD_DEF -> METHOD_DEF [31:4] - | |--MODIFIERS -> MODIFIERS [31:4] - | | `--LITERAL_PUBLIC -> public [31:4] - | |--TYPE -> TYPE [31:11] - | | `--LITERAL_VOID -> void [31:11] - | |--IDENT -> instructions [31:16] - | |--LPAREN -> ( [31:28] - | |--PARAMETERS -> PARAMETERS [31:29] - | |--RPAREN -> ) [31:29] - | `--SLIST -> { [31:31] - | |--VARIABLE_DEF -> VARIABLE_DEF [33:8] - | | |--MODIFIERS -> MODIFIERS [33:8] - | | |--TYPE -> TYPE [33:8] - | | | `--LITERAL_BOOLEAN -> boolean [33:8] - | | |--IDENT -> b [33:16] - | | `--ASSIGN -> = [33:18] - | | `--EXPR -> EXPR [33:34] - | | `--GT -> > [33:34] - | | |--METHOD_CALL -> ( [33:31] - | | | |--DOT -> . [33:24] - | | | | |--IDENT -> Math [33:20] - | | | | `--IDENT -> random [33:25] - | | | |--ELIST -> ELIST [33:32] - | | | `--RPAREN -> ) [33:32] - | | `--NUM_INT -> 0 [33:36] - | |--SEMI -> ; [33:37] + |--METHOD_DEF -> METHOD_DEF [26:4] + | |--MODIFIERS -> MODIFIERS [26:4] + | | `--LITERAL_PUBLIC -> public [26:4] + | |--TYPE -> TYPE [26:11] + | | `--LITERAL_VOID -> void [26:11] + | |--IDENT -> m4 [26:16] + | |--LPAREN -> ( [26:18] + | |--PARAMETERS -> PARAMETERS [26:19] + | | `--PARAMETER_DEF -> PARAMETER_DEF [26:19] + | | |--MODIFIERS -> MODIFIERS [26:19] + | | |--TYPE -> TYPE [26:19] + | | | `--IDENT -> InputRegressionJava8Class1 [26:19] + | | `--LITERAL_THIS -> this [26:46] + | |--RPAREN -> ) [26:50] + | `--SLIST -> { [26:52] + | `--RCURLY -> } [26:53] + |--METHOD_DEF -> METHOD_DEF [27:4] + | |--MODIFIERS -> MODIFIERS [27:4] + | | `--LITERAL_PUBLIC -> public [27:4] + | |--TYPE -> TYPE [27:11] + | | `--LITERAL_VOID -> void [27:11] + | |--IDENT -> m5 [27:16] + | |--LPAREN -> ( [27:18] + | |--PARAMETERS -> PARAMETERS [27:19] + | | `--PARAMETER_DEF -> PARAMETER_DEF [27:19] + | | |--MODIFIERS -> MODIFIERS [27:19] + | | | `--ANNOTATION -> ANNOTATION [27:19] + | | | |--AT -> @ [27:19] + | | | `--IDENT -> Nullable [27:20] + | | |--TYPE -> TYPE [27:29] + | | | `--IDENT -> InputRegressionJava8Class1 [27:29] + | | `--LITERAL_THIS -> this [27:56] + | |--RPAREN -> ) [27:60] + | `--SLIST -> { [27:62] + | `--RCURLY -> } [27:63] + |--INSTANCE_INIT -> INSTANCE_INIT [29:4] + | `--SLIST -> { [29:4] + | |--VARIABLE_DEF -> VARIABLE_DEF [30:8] + | | |--MODIFIERS -> MODIFIERS [30:8] + | | |--TYPE -> TYPE [30:8] + | | | |--IDENT -> List [30:8] + | | | `--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [30:12] + | | | |--GENERIC_START -> < [30:12] + | | | |--TYPE_ARGUMENT -> TYPE_ARGUMENT [30:13] + | | | | `--IDENT -> String [30:13] + | | | `--GENERIC_END -> > [30:19] + | | |--IDENT -> vlist [30:21] + | | `--ASSIGN -> = [30:27] + | | `--EXPR -> EXPR [30:29] + | | `--LITERAL_NEW -> new [30:29] + | | |--IDENT -> ArrayList [30:33] + | | |--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [30:42] + | | | |--GENERIC_START -> < [30:42] + | | | |--TYPE_ARGUMENT -> TYPE_ARGUMENT [30:43] + | | | | `--IDENT -> String [30:43] + | | | `--GENERIC_END -> > [30:49] + | | |--LPAREN -> ( [30:50] + | | |--ELIST -> ELIST [30:51] + | | `--RPAREN -> ) [30:51] + | |--SEMI -> ; [30:52] + | `--RCURLY -> } [31:4] + |--METHOD_DEF -> METHOD_DEF [33:4] + | |--MODIFIERS -> MODIFIERS [33:4] + | | `--LITERAL_PUBLIC -> public [33:4] + | |--TYPE -> TYPE [33:11] + | | `--LITERAL_VOID -> void [33:11] + | |--IDENT -> instructions [33:16] + | |--LPAREN -> ( [33:28] + | |--PARAMETERS -> PARAMETERS [33:29] + | |--RPAREN -> ) [33:29] + | `--SLIST -> { [33:31] | |--VARIABLE_DEF -> VARIABLE_DEF [35:8] | | |--MODIFIERS -> MODIFIERS [35:8] | | |--TYPE -> TYPE [35:8] - | | | `--LITERAL_INT -> int [35:8] - | | `--IDENT -> vint [35:12] - | |--SEMI -> ; [35:16] - | |--VARIABLE_DEF -> VARIABLE_DEF [36:8] - | | |--MODIFIERS -> MODIFIERS [36:8] - | | |--TYPE -> TYPE [36:8] - | | | `--IDENT -> Object [36:8] - | | |--IDENT -> o [36:15] - | | `--ASSIGN -> = [36:17] - | | `--EXPR -> EXPR [36:19] - | | `--LITERAL_NULL -> null [36:19] - | |--SEMI -> ; [36:23] + | | | `--LITERAL_BOOLEAN -> boolean [35:8] + | | |--IDENT -> b [35:16] + | | `--ASSIGN -> = [35:18] + | | `--EXPR -> EXPR [35:34] + | | `--GT -> > [35:34] + | | |--METHOD_CALL -> ( [35:31] + | | | |--DOT -> . [35:24] + | | | | |--IDENT -> Math [35:20] + | | | | `--IDENT -> random [35:25] + | | | |--ELIST -> ELIST [35:32] + | | | `--RPAREN -> ) [35:32] + | | `--NUM_INT -> 0 [35:36] + | |--SEMI -> ; [35:37] | |--VARIABLE_DEF -> VARIABLE_DEF [37:8] | | |--MODIFIERS -> MODIFIERS [37:8] | | |--TYPE -> TYPE [37:8] - | | | |--IDENT -> List [37:8] - | | | `--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [37:12] - | | | |--GENERIC_START -> < [37:12] - | | | |--TYPE_ARGUMENT -> TYPE_ARGUMENT [37:13] - | | | | `--IDENT -> String [37:13] - | | | `--GENERIC_END -> > [37:19] - | | `--IDENT -> vlist [37:21] - | |--SEMI -> ; [37:26] - | |--EXPR -> EXPR [38:14] - | | `--ASSIGN -> = [38:14] - | | |--IDENT -> vlist [38:8] - | | `--LITERAL_NEW -> new [38:16] - | | |--IDENT -> ArrayList [38:20] - | | |--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [38:29] - | | | |--GENERIC_START -> < [38:29] - | | | |--TYPE_ARGUMENT -> TYPE_ARGUMENT [38:30] - | | | | `--IDENT -> String [38:30] - | | | `--GENERIC_END -> > [38:36] - | | |--LPAREN -> ( [38:37] - | | |--ELIST -> ELIST [38:38] - | | `--RPAREN -> ) [38:38] - | |--SEMI -> ; [38:39] + | | | `--LITERAL_INT -> int [37:8] + | | `--IDENT -> vint [37:12] + | |--SEMI -> ; [37:16] + | |--VARIABLE_DEF -> VARIABLE_DEF [38:8] + | | |--MODIFIERS -> MODIFIERS [38:8] + | | |--TYPE -> TYPE [38:8] + | | | `--IDENT -> Object [38:8] + | | |--IDENT -> o [38:15] + | | `--ASSIGN -> = [38:17] + | | `--EXPR -> EXPR [38:19] + | | `--LITERAL_NULL -> null [38:19] + | |--SEMI -> ; [38:23] | |--VARIABLE_DEF -> VARIABLE_DEF [39:8] | | |--MODIFIERS -> MODIFIERS [39:8] | | |--TYPE -> TYPE [39:8] - | | | |--IDENT -> Supplier [39:8] - | | | `--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [39:16] - | | | |--GENERIC_START -> < [39:16] - | | | |--TYPE_ARGUMENT -> TYPE_ARGUMENT [39:17] - | | | | `--WILDCARD_TYPE -> ? [39:17] - | | | `--GENERIC_END -> > [39:18] - | | `--IDENT -> s [39:20] - | |--SEMI -> ; [39:21] - | |--VARIABLE_DEF -> VARIABLE_DEF [42:11] - | | |--MODIFIERS -> MODIFIERS [42:11] - | | |--TYPE -> TYPE [42:11] - | | | `--DOT -> . [42:11] - | | | |--IDENT -> Map [42:8] - | | | |--ANNOTATIONS -> ANNOTATIONS [42:12] - | | | | `--ANNOTATION -> ANNOTATION [42:12] - | | | | |--AT -> @ [42:12] - | | | | `--IDENT -> Nullable [42:13] - | | | `--IDENT -> Entry [42:22] - | | `--IDENT -> e [42:28] - | |--SEMI -> ; [42:29] - | |--VARIABLE_DEF -> VARIABLE_DEF [43:8] - | | |--MODIFIERS -> MODIFIERS [43:8] - | | |--TYPE -> TYPE [43:8] - | | | `--IDENT -> String [43:8] - | | |--IDENT -> str [43:15] - | | `--ASSIGN -> = [43:19] - | | `--EXPR -> EXPR [43:21] - | | `--TYPECAST -> ( [43:21] - | | |--TYPE -> TYPE [43:22] - | | | |--ANNOTATIONS -> ANNOTATIONS [43:22] - | | | | `--ANNOTATION -> ANNOTATION [43:22] - | | | | |--AT -> @ [43:22] - | | | | `--IDENT -> Nullable [43:23] - | | | `--IDENT -> String [43:32] - | | |--RPAREN -> ) [43:38] - | | `--STRING_LITERAL -> "" [43:40] - | |--SEMI -> ; [43:42] - | |--EXPR -> EXPR [44:42] - | | `--METHOD_CALL -> ( [44:42] - | | |--DOT -> . [44:22] - | | | |--LPAREN -> ( [44:8] - | | | |--LITERAL_NEW -> new [44:9] - | | | | |--IDENT -> Inner3 [44:13] - | | | | |--LPAREN -> ( [44:19] - | | | | |--ELIST -> ELIST [44:20] - | | | | `--RPAREN -> ) [44:20] - | | | |--RPAREN -> ) [44:21] - | | | |--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [44:23] - | | | | |--GENERIC_START -> < [44:23] - | | | | |--TYPE_ARGUMENT -> TYPE_ARGUMENT [44:24] - | | | | | |--ANNOTATIONS -> ANNOTATIONS [44:24] - | | | | | | `--ANNOTATION -> ANNOTATION [44:24] - | | | | | | |--AT -> @ [44:24] - | | | | | | `--IDENT -> Nullable [44:25] - | | | | | `--IDENT -> String [44:34] - | | | | `--GENERIC_END -> > [44:40] - | | | `--IDENT -> m [44:41] - | | |--ELIST -> ELIST [44:43] - | | `--RPAREN -> ) [44:43] - | |--SEMI -> ; [44:44] - | |--VARIABLE_DEF -> VARIABLE_DEF [47:8] - | | |--MODIFIERS -> MODIFIERS [47:8] - | | |--TYPE -> TYPE [47:8] - | | | `--IDENT -> IntBinaryOperator [47:8] - | | |--IDENT -> ibo [47:26] - | | `--ASSIGN -> = [47:30] - | | `--EXPR -> EXPR [47:36] - | | `--METHOD_REF -> :: [47:36] - | | |--IDENT -> Math [47:32] - | | `--IDENT -> max [47:38] - | |--SEMI -> ; [47:41] - | |--EXPR -> EXPR [48:10] - | | `--ASSIGN -> = [48:10] - | | |--IDENT -> s [48:8] - | | `--METHOD_REF -> :: [48:38] - | | |--IDENT -> InputRegressionJava8Class1 [48:12] - | | `--LITERAL_NEW -> new [48:40] - | |--SEMI -> ; [48:43] - | |--EXPR -> EXPR [49:10] - | | `--ASSIGN -> = [49:10] - | | |--IDENT -> s [49:8] - | | `--METHOD_REF -> :: [49:33] - | | |--DOT -> . [49:18] - | | | |--IDENT -> Inner1 [49:12] - | | | |--IDENT -> Inner2 [49:19] - | | | `--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [49:25] - | | | |--GENERIC_START -> < [49:25] - | | | |--TYPE_ARGUMENT -> TYPE_ARGUMENT [49:26] - | | | | `--IDENT -> String [49:26] - | | | `--GENERIC_END -> > [49:32] - | | `--LITERAL_NEW -> new [49:35] - | |--SEMI -> ; [49:38] - | |--VARIABLE_DEF -> VARIABLE_DEF [52:8] - | | |--MODIFIERS -> MODIFIERS [52:8] - | | |--TYPE -> TYPE [52:8] - | | | `--IDENT -> Runnable [52:8] - | | |--IDENT -> r1 [52:17] - | | `--ASSIGN -> = [52:20] - | | `--LAMBDA -> -> [52:25] - | | |--LPAREN -> ( [52:22] - | | |--PARAMETERS -> PARAMETERS [52:23] - | | |--RPAREN -> ) [52:23] - | | `--EXPR -> EXPR [52:29] - | | `--METHOD_CALL -> ( [52:29] - | | |--IDENT -> m [52:28] - | | |--ELIST -> ELIST [52:30] - | | `--RPAREN -> ) [52:30] - | |--SEMI -> ; [52:31] - | |--VARIABLE_DEF -> VARIABLE_DEF [53:8] - | | |--MODIFIERS -> MODIFIERS [53:8] - | | |--TYPE -> TYPE [53:8] - | | | `--IDENT -> Runnable [53:8] - | | |--IDENT -> r2 [53:17] - | | `--ASSIGN -> = [53:20] - | | `--LAMBDA -> -> [53:25] - | | |--LPAREN -> ( [53:22] - | | |--PARAMETERS -> PARAMETERS [53:23] - | | |--RPAREN -> ) [53:23] - | | `--SLIST -> { [53:28] - | | |--EXPR -> EXPR [53:31] - | | | `--METHOD_CALL -> ( [53:31] - | | | |--IDENT -> m [53:30] - | | | |--ELIST -> ELIST [53:32] - | | | `--RPAREN -> ) [53:32] - | | |--SEMI -> ; [53:33] - | | `--RCURLY -> } [53:35] - | |--SEMI -> ; [53:37] - | |--EXPR -> EXPR [54:24] - | | `--METHOD_CALL -> ( [54:24] - | | |--DOT -> . [54:19] - | | | |--IDENT -> Collections [54:8] - | | | `--IDENT -> sort [54:20] - | | |--ELIST -> ELIST [54:25] - | | | |--EXPR -> EXPR [54:25] - | | | | `--IDENT -> vlist [54:25] - | | | |--COMMA -> , [54:30] - | | | `--LAMBDA -> -> [54:40] - | | | |--LPAREN -> ( [54:32] - | | | |--PARAMETERS -> PARAMETERS [54:33] - | | | | |--PARAMETER_DEF -> PARAMETER_DEF [54:33] - | | | | | |--MODIFIERS -> MODIFIERS [54:33] - | | | | | |--TYPE -> TYPE [54:33] - | | | | | `--IDENT -> l [54:33] - | | | | |--COMMA -> , [54:34] - | | | | `--PARAMETER_DEF -> PARAMETER_DEF [54:37] - | | | | |--MODIFIERS -> MODIFIERS [54:37] - | | | | |--TYPE -> TYPE [54:37] - | | | | `--IDENT -> r [54:37] - | | | |--RPAREN -> ) [54:38] - | | | `--EXPR -> EXPR [54:50] - | | | `--QUESTION -> ? [54:50] - | | | |--EQUAL -> == [54:45] - | | | | |--IDENT -> l [54:43] - | | | | `--IDENT -> r [54:48] - | | | |--NUM_INT -> 0 [54:52] - | | | |--COLON -> : [54:54] - | | | `--NUM_INT -> 1 [54:56] - | | `--RPAREN -> ) [54:57] - | |--SEMI -> ; [54:58] + | | | |--IDENT -> List [39:8] + | | | `--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [39:12] + | | | |--GENERIC_START -> < [39:12] + | | | |--TYPE_ARGUMENT -> TYPE_ARGUMENT [39:13] + | | | | `--IDENT -> String [39:13] + | | | `--GENERIC_END -> > [39:19] + | | `--IDENT -> vlist [39:21] + | |--SEMI -> ; [39:26] + | |--EXPR -> EXPR [40:14] + | | `--ASSIGN -> = [40:14] + | | |--IDENT -> vlist [40:8] + | | `--LITERAL_NEW -> new [40:16] + | | |--IDENT -> ArrayList [40:20] + | | |--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [40:29] + | | | |--GENERIC_START -> < [40:29] + | | | |--TYPE_ARGUMENT -> TYPE_ARGUMENT [40:30] + | | | | `--IDENT -> String [40:30] + | | | `--GENERIC_END -> > [40:36] + | | |--LPAREN -> ( [40:37] + | | |--ELIST -> ELIST [40:38] + | | `--RPAREN -> ) [40:38] + | |--SEMI -> ; [40:39] + | |--VARIABLE_DEF -> VARIABLE_DEF [41:8] + | | |--MODIFIERS -> MODIFIERS [41:8] + | | |--TYPE -> TYPE [41:8] + | | | |--IDENT -> Supplier [41:8] + | | | `--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [41:16] + | | | |--GENERIC_START -> < [41:16] + | | | |--TYPE_ARGUMENT -> TYPE_ARGUMENT [41:17] + | | | | `--WILDCARD_TYPE -> ? [41:17] + | | | `--GENERIC_END -> > [41:18] + | | `--IDENT -> s [41:20] + | |--SEMI -> ; [41:21] + | |--VARIABLE_DEF -> VARIABLE_DEF [44:11] + | | |--MODIFIERS -> MODIFIERS [44:11] + | | |--TYPE -> TYPE [44:11] + | | | `--DOT -> . [44:11] + | | | |--IDENT -> Map [44:8] + | | | |--ANNOTATIONS -> ANNOTATIONS [44:12] + | | | | `--ANNOTATION -> ANNOTATION [44:12] + | | | | |--AT -> @ [44:12] + | | | | `--IDENT -> Nullable [44:13] + | | | `--IDENT -> Entry [44:22] + | | `--IDENT -> e [44:28] + | |--SEMI -> ; [44:29] + | |--VARIABLE_DEF -> VARIABLE_DEF [45:8] + | | |--MODIFIERS -> MODIFIERS [45:8] + | | |--TYPE -> TYPE [45:8] + | | | `--IDENT -> String [45:8] + | | |--IDENT -> str [45:15] + | | `--ASSIGN -> = [45:19] + | | `--EXPR -> EXPR [45:21] + | | `--TYPECAST -> ( [45:21] + | | |--TYPE -> TYPE [45:22] + | | | |--ANNOTATIONS -> ANNOTATIONS [45:22] + | | | | `--ANNOTATION -> ANNOTATION [45:22] + | | | | |--AT -> @ [45:22] + | | | | `--IDENT -> Nullable [45:23] + | | | `--IDENT -> String [45:32] + | | |--RPAREN -> ) [45:38] + | | `--STRING_LITERAL -> "" [45:40] + | |--SEMI -> ; [45:42] + | |--EXPR -> EXPR [46:42] + | | `--METHOD_CALL -> ( [46:42] + | | |--DOT -> . [46:22] + | | | |--LPAREN -> ( [46:8] + | | | |--LITERAL_NEW -> new [46:9] + | | | | |--IDENT -> Inner3 [46:13] + | | | | |--LPAREN -> ( [46:19] + | | | | |--ELIST -> ELIST [46:20] + | | | | `--RPAREN -> ) [46:20] + | | | |--RPAREN -> ) [46:21] + | | | |--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [46:23] + | | | | |--GENERIC_START -> < [46:23] + | | | | |--TYPE_ARGUMENT -> TYPE_ARGUMENT [46:24] + | | | | | |--ANNOTATIONS -> ANNOTATIONS [46:24] + | | | | | | `--ANNOTATION -> ANNOTATION [46:24] + | | | | | | |--AT -> @ [46:24] + | | | | | | `--IDENT -> Nullable [46:25] + | | | | | `--IDENT -> String [46:34] + | | | | `--GENERIC_END -> > [46:40] + | | | `--IDENT -> m [46:41] + | | |--ELIST -> ELIST [46:43] + | | `--RPAREN -> ) [46:43] + | |--SEMI -> ; [46:44] + | |--VARIABLE_DEF -> VARIABLE_DEF [49:8] + | | |--MODIFIERS -> MODIFIERS [49:8] + | | |--TYPE -> TYPE [49:8] + | | | `--IDENT -> IntBinaryOperator [49:8] + | | |--IDENT -> ibo [49:26] + | | `--ASSIGN -> = [49:30] + | | `--EXPR -> EXPR [49:36] + | | `--METHOD_REF -> :: [49:36] + | | |--IDENT -> Math [49:32] + | | `--IDENT -> max [49:38] + | |--SEMI -> ; [49:41] + | |--EXPR -> EXPR [50:10] + | | `--ASSIGN -> = [50:10] + | | |--IDENT -> s [50:8] + | | `--METHOD_REF -> :: [50:38] + | | |--IDENT -> InputRegressionJava8Class1 [50:12] + | | `--LITERAL_NEW -> new [50:40] + | |--SEMI -> ; [50:43] + | |--EXPR -> EXPR [51:10] + | | `--ASSIGN -> = [51:10] + | | |--IDENT -> s [51:8] + | | `--METHOD_REF -> :: [51:33] + | | |--DOT -> . [51:18] + | | | |--IDENT -> Inner1 [51:12] + | | | |--IDENT -> Inner2 [51:19] + | | | `--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [51:25] + | | | |--GENERIC_START -> < [51:25] + | | | |--TYPE_ARGUMENT -> TYPE_ARGUMENT [51:26] + | | | | `--IDENT -> String [51:26] + | | | `--GENERIC_END -> > [51:32] + | | `--LITERAL_NEW -> new [51:35] + | |--SEMI -> ; [51:38] + | |--VARIABLE_DEF -> VARIABLE_DEF [54:8] + | | |--MODIFIERS -> MODIFIERS [54:8] + | | |--TYPE -> TYPE [54:8] + | | | `--IDENT -> Runnable [54:8] + | | |--IDENT -> r1 [54:17] + | | `--ASSIGN -> = [54:20] + | | `--LAMBDA -> -> [54:25] + | | |--LPAREN -> ( [54:22] + | | |--PARAMETERS -> PARAMETERS [54:23] + | | |--RPAREN -> ) [54:23] + | | `--EXPR -> EXPR [54:29] + | | `--METHOD_CALL -> ( [54:29] + | | |--IDENT -> m [54:28] + | | |--ELIST -> ELIST [54:30] + | | `--RPAREN -> ) [54:30] + | |--SEMI -> ; [54:31] | |--VARIABLE_DEF -> VARIABLE_DEF [55:8] | | |--MODIFIERS -> MODIFIERS [55:8] | | |--TYPE -> TYPE [55:8] - | | | |--IDENT -> Predicate [55:8] - | | | `--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [55:17] - | | | |--GENERIC_START -> < [55:17] - | | | |--TYPE_ARGUMENT -> TYPE_ARGUMENT [55:18] - | | | | `--WILDCARD_TYPE -> ? [55:18] - | | | `--GENERIC_END -> > [55:19] - | | |--IDENT -> t [55:21] - | | `--ASSIGN -> = [55:23] - | | `--EXPR -> EXPR [55:29] - | | `--QUESTION -> ? [55:29] - | | |--LPAREN -> ( [55:25] - | | |--IDENT -> b [55:26] - | | |--RPAREN -> ) [55:27] - | | |--LITERAL_NULL -> null [55:31] - | | |--COLON -> : [55:36] - | | `--LAMBDA -> -> [55:45] - | | |--IDENT -> object [55:38] - | | `--EXPR -> EXPR [55:56] - | | `--METHOD_CALL -> ( [55:56] - | | |--DOT -> . [55:49] - | | | |--IDENT -> o [55:48] - | | | `--IDENT -> equals [55:50] - | | |--ELIST -> ELIST [55:57] - | | | `--EXPR -> EXPR [55:57] - | | | `--IDENT -> object [55:57] - | | `--RPAREN -> ) [55:63] - | |--SEMI -> ; [55:64] - | |--VARIABLE_DEF -> VARIABLE_DEF [56:8] - | | |--MODIFIERS -> MODIFIERS [56:8] - | | |--TYPE -> TYPE [56:8] - | | | `--IDENT -> Double [56:8] - | | |--IDENT -> mPi [56:15] - | | `--ASSIGN -> = [56:19] - | | `--EXPR -> EXPR [56:25] - | | `--DOT -> . [56:25] - | | |--IDENT -> Math [56:21] - | | `--IDENT -> PI [56:26] - | |--SEMI -> ; [56:28] - | `--RCURLY -> } [57:4] - |--VARIABLE_DEF -> VARIABLE_DEF [59:4] - | |--MODIFIERS -> MODIFIERS [59:4] - | | |--LITERAL_STATIC -> static [59:4] - | | `--FINAL -> final [59:11] - | |--TYPE -> TYPE [59:17] - | | |--IDENT -> Comparator [59:17] - | | `--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [59:27] - | | |--GENERIC_START -> < [59:27] - | | |--TYPE_ARGUMENT -> TYPE_ARGUMENT [59:28] - | | | `--WILDCARD_TYPE -> ? [59:28] - | | `--GENERIC_END -> > [59:29] - | |--IDENT -> f [59:31] - | |--ASSIGN -> = [59:33] - | | `--EXPR -> EXPR [59:35] - | | `--TYPECAST -> ( [59:35] - | | |--TYPE -> TYPE [59:36] - | | | |--IDENT -> Comparator [59:36] - | | | `--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [59:46] - | | | |--GENERIC_START -> < [59:46] - | | | |--TYPE_ARGUMENT -> TYPE_ARGUMENT [59:47] - | | | | `--WILDCARD_TYPE -> ? [59:47] - | | | `--GENERIC_END -> > [59:48] - | | |--RPAREN -> ) [59:49] - | | `--LAMBDA -> -> [59:74] - | | |--LPAREN -> ( [59:51] - | | |--PARAMETERS -> PARAMETERS [59:52] - | | | |--PARAMETER_DEF -> PARAMETER_DEF [59:52] - | | | | |--MODIFIERS -> MODIFIERS [59:52] - | | | | |--TYPE -> TYPE [59:52] - | | | | `--IDENT -> dateTime1 [59:52] - | | | |--COMMA -> , [59:61] - | | | `--PARAMETER_DEF -> PARAMETER_DEF [59:63] - | | | |--MODIFIERS -> MODIFIERS [59:63] - | | | |--TYPE -> TYPE [59:63] - | | | `--IDENT -> dateTime2 [59:63] - | | |--RPAREN -> ) [59:72] - | | `--SLIST -> { [59:77] - | | |--LITERAL_RETURN -> return [59:79] - | | | |--EXPR -> EXPR [59:86] - | | | | `--NUM_INT -> 0 [59:86] - | | | `--SEMI -> ; [59:87] - | | `--RCURLY -> } [59:89] - | `--SEMI -> ; [59:90] - `--RCURLY -> } [60:0] -SEMI -> ; [61:0] -CLASS_DEF -> CLASS_DEF [62:0] -|--MODIFIERS -> MODIFIERS [62:0] -|--LITERAL_CLASS -> class [62:0] -|--IDENT -> InputRegressionJava8TypeParam [62:6] -|--TYPE_PARAMETERS -> TYPE_PARAMETERS [62:36] -| |--GENERIC_START -> < [62:36] -| |--TYPE_PARAMETER -> TYPE_PARAMETER [62:37] -| | |--ANNOTATIONS -> ANNOTATIONS [62:37] -| | | `--ANNOTATION -> ANNOTATION [62:37] -| | | |--AT -> @ [62:37] -| | | `--IDENT -> Nullable [62:38] -| | `--IDENT -> T [62:47] -| `--GENERIC_END -> > [62:48] -`--OBJBLOCK -> OBJBLOCK [62:50] - |--LCURLY -> { [62:50] - `--RCURLY -> } [63:0] -ANNOTATION_DEF -> ANNOTATION_DEF [64:0] -|--MODIFIERS -> MODIFIERS [64:0] -| |--ANNOTATION -> ANNOTATION [64:0] -| | |--AT -> @ [64:0] -| | |--IDENT -> Retention [64:1] -| | |--LPAREN -> ( [64:10] -| | |--EXPR -> EXPR [64:26] -| | | `--DOT -> . [64:26] -| | | |--IDENT -> RetentionPolicy [64:11] -| | | `--IDENT -> CLASS [64:27] -| | `--RPAREN -> ) [64:32] -| `--ANNOTATION -> ANNOTATION [65:0] -| |--AT -> @ [65:0] -| |--IDENT -> Target [65:1] -| |--LPAREN -> ( [65:7] -| |--ANNOTATION_ARRAY_INIT -> { [65:8] -| | |--EXPR -> EXPR [65:21] -| | | `--DOT -> . [65:21] -| | | |--IDENT -> ElementType [65:10] -| | | `--IDENT -> TYPE_USE [65:22] -| | `--RCURLY -> } [65:31] -| `--RPAREN -> ) [65:32] -|--AT -> @ [66:0] -|--LITERAL_INTERFACE -> interface [66:1] -|--IDENT -> Nullable [66:11] -`--OBJBLOCK -> OBJBLOCK [66:20] - |--LCURLY -> { [66:20] - `--RCURLY -> } [67:0] + | | | `--IDENT -> Runnable [55:8] + | | |--IDENT -> r2 [55:17] + | | `--ASSIGN -> = [55:20] + | | `--LAMBDA -> -> [55:25] + | | |--LPAREN -> ( [55:22] + | | |--PARAMETERS -> PARAMETERS [55:23] + | | |--RPAREN -> ) [55:23] + | | `--SLIST -> { [55:28] + | | |--EXPR -> EXPR [55:31] + | | | `--METHOD_CALL -> ( [55:31] + | | | |--IDENT -> m [55:30] + | | | |--ELIST -> ELIST [55:32] + | | | `--RPAREN -> ) [55:32] + | | |--SEMI -> ; [55:33] + | | `--RCURLY -> } [55:35] + | |--SEMI -> ; [55:37] + | |--EXPR -> EXPR [56:24] + | | `--METHOD_CALL -> ( [56:24] + | | |--DOT -> . [56:19] + | | | |--IDENT -> Collections [56:8] + | | | `--IDENT -> sort [56:20] + | | |--ELIST -> ELIST [56:25] + | | | |--EXPR -> EXPR [56:25] + | | | | `--IDENT -> vlist [56:25] + | | | |--COMMA -> , [56:30] + | | | `--LAMBDA -> -> [56:40] + | | | |--LPAREN -> ( [56:32] + | | | |--PARAMETERS -> PARAMETERS [56:33] + | | | | |--PARAMETER_DEF -> PARAMETER_DEF [56:33] + | | | | | |--MODIFIERS -> MODIFIERS [56:33] + | | | | | |--TYPE -> TYPE [56:33] + | | | | | `--IDENT -> l [56:33] + | | | | |--COMMA -> , [56:34] + | | | | `--PARAMETER_DEF -> PARAMETER_DEF [56:37] + | | | | |--MODIFIERS -> MODIFIERS [56:37] + | | | | |--TYPE -> TYPE [56:37] + | | | | `--IDENT -> r [56:37] + | | | |--RPAREN -> ) [56:38] + | | | `--EXPR -> EXPR [56:50] + | | | `--QUESTION -> ? [56:50] + | | | |--EQUAL -> == [56:45] + | | | | |--IDENT -> l [56:43] + | | | | `--IDENT -> r [56:48] + | | | |--NUM_INT -> 0 [56:52] + | | | |--COLON -> : [56:54] + | | | `--NUM_INT -> 1 [56:56] + | | `--RPAREN -> ) [56:57] + | |--SEMI -> ; [56:58] + | |--VARIABLE_DEF -> VARIABLE_DEF [57:8] + | | |--MODIFIERS -> MODIFIERS [57:8] + | | |--TYPE -> TYPE [57:8] + | | | |--IDENT -> Predicate [57:8] + | | | `--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [57:17] + | | | |--GENERIC_START -> < [57:17] + | | | |--TYPE_ARGUMENT -> TYPE_ARGUMENT [57:18] + | | | | `--WILDCARD_TYPE -> ? [57:18] + | | | `--GENERIC_END -> > [57:19] + | | |--IDENT -> t [57:21] + | | `--ASSIGN -> = [57:23] + | | `--EXPR -> EXPR [57:29] + | | `--QUESTION -> ? [57:29] + | | |--LPAREN -> ( [57:25] + | | |--IDENT -> b [57:26] + | | |--RPAREN -> ) [57:27] + | | |--LITERAL_NULL -> null [57:31] + | | |--COLON -> : [57:36] + | | `--LAMBDA -> -> [57:45] + | | |--IDENT -> object [57:38] + | | `--EXPR -> EXPR [57:56] + | | `--METHOD_CALL -> ( [57:56] + | | |--DOT -> . [57:49] + | | | |--IDENT -> o [57:48] + | | | `--IDENT -> equals [57:50] + | | |--ELIST -> ELIST [57:57] + | | | `--EXPR -> EXPR [57:57] + | | | `--IDENT -> object [57:57] + | | `--RPAREN -> ) [57:63] + | |--SEMI -> ; [57:64] + | |--VARIABLE_DEF -> VARIABLE_DEF [58:8] + | | |--MODIFIERS -> MODIFIERS [58:8] + | | |--TYPE -> TYPE [58:8] + | | | `--IDENT -> Double [58:8] + | | |--IDENT -> mPi [58:15] + | | `--ASSIGN -> = [58:19] + | | `--EXPR -> EXPR [58:25] + | | `--DOT -> . [58:25] + | | |--IDENT -> Math [58:21] + | | `--IDENT -> PI [58:26] + | |--SEMI -> ; [58:28] + | `--RCURLY -> } [59:4] + |--VARIABLE_DEF -> VARIABLE_DEF [61:4] + | |--MODIFIERS -> MODIFIERS [61:4] + | | |--LITERAL_STATIC -> static [61:4] + | | `--FINAL -> final [61:11] + | |--TYPE -> TYPE [61:17] + | | |--IDENT -> Comparator [61:17] + | | `--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [61:27] + | | |--GENERIC_START -> < [61:27] + | | |--TYPE_ARGUMENT -> TYPE_ARGUMENT [61:28] + | | | `--WILDCARD_TYPE -> ? [61:28] + | | `--GENERIC_END -> > [61:29] + | |--IDENT -> f [61:31] + | |--ASSIGN -> = [61:33] + | | `--EXPR -> EXPR [61:35] + | | `--TYPECAST -> ( [61:35] + | | |--TYPE -> TYPE [61:36] + | | | |--IDENT -> Comparator [61:36] + | | | `--TYPE_ARGUMENTS -> TYPE_ARGUMENTS [61:46] + | | | |--GENERIC_START -> < [61:46] + | | | |--TYPE_ARGUMENT -> TYPE_ARGUMENT [61:47] + | | | | `--WILDCARD_TYPE -> ? [61:47] + | | | `--GENERIC_END -> > [61:48] + | | |--RPAREN -> ) [61:49] + | | `--LAMBDA -> -> [61:74] + | | |--LPAREN -> ( [61:51] + | | |--PARAMETERS -> PARAMETERS [61:52] + | | | |--PARAMETER_DEF -> PARAMETER_DEF [61:52] + | | | | |--MODIFIERS -> MODIFIERS [61:52] + | | | | |--TYPE -> TYPE [61:52] + | | | | `--IDENT -> dateTime1 [61:52] + | | | |--COMMA -> , [61:61] + | | | `--PARAMETER_DEF -> PARAMETER_DEF [61:63] + | | | |--MODIFIERS -> MODIFIERS [61:63] + | | | |--TYPE -> TYPE [61:63] + | | | `--IDENT -> dateTime2 [61:63] + | | |--RPAREN -> ) [61:72] + | | `--SLIST -> { [61:77] + | | |--LITERAL_RETURN -> return [61:79] + | | | |--EXPR -> EXPR [61:86] + | | | | `--NUM_INT -> 0 [61:86] + | | | `--SEMI -> ; [61:87] + | | `--RCURLY -> } [61:89] + | `--SEMI -> ; [61:90] + |--CLASS_DEF -> CLASS_DEF [63:4] + | |--MODIFIERS -> MODIFIERS [63:4] + | | `--LITERAL_PRIVATE -> private [63:4] + | |--LITERAL_CLASS -> class [63:12] + | |--IDENT -> Inner [63:18] + | `--OBJBLOCK -> OBJBLOCK [63:24] + | |--LCURLY -> { [63:24] + | |--CTOR_DEF -> CTOR_DEF [64:8] + | | |--MODIFIERS -> MODIFIERS [64:8] + | | | `--LITERAL_PUBLIC -> public [64:8] + | | |--IDENT -> Inner [64:15] + | | |--LPAREN -> ( [64:20] + | | |--PARAMETERS -> PARAMETERS [64:21] + | | | `--PARAMETER_DEF -> PARAMETER_DEF [64:21] + | | | |--MODIFIERS -> MODIFIERS [64:21] + | | | |--TYPE -> TYPE [64:21] + | | | | `--IDENT -> InputRegressionJava8Class1 [64:21] + | | | `--DOT -> . [64:74] + | | | |--IDENT -> InputRegressionJava8Class1 [64:48] + | | | `--LITERAL_THIS -> this [64:75] + | | |--RPAREN -> ) [64:79] + | | `--SLIST -> { [64:81] + | | `--RCURLY -> } [64:82] + | `--RCURLY -> } [65:4] + `--RCURLY -> } [66:0] +SEMI -> ; [67:0] +CLASS_DEF -> CLASS_DEF [68:0] +|--MODIFIERS -> MODIFIERS [68:0] +|--LITERAL_CLASS -> class [68:0] +|--IDENT -> InputRegressionJava8TypeParam [68:6] +|--TYPE_PARAMETERS -> TYPE_PARAMETERS [68:36] +| |--GENERIC_START -> < [68:36] +| |--TYPE_PARAMETER -> TYPE_PARAMETER [68:37] +| | |--ANNOTATIONS -> ANNOTATIONS [68:37] +| | | `--ANNOTATION -> ANNOTATION [68:37] +| | | |--AT -> @ [68:37] +| | | `--IDENT -> Nullable [68:38] +| | `--IDENT -> T [68:47] +| `--GENERIC_END -> > [68:48] +`--OBJBLOCK -> OBJBLOCK [68:50] + |--LCURLY -> { [68:50] + `--RCURLY -> } [69:0] +ANNOTATION_DEF -> ANNOTATION_DEF [70:0] +|--MODIFIERS -> MODIFIERS [70:0] +| |--ANNOTATION -> ANNOTATION [70:0] +| | |--AT -> @ [70:0] +| | |--IDENT -> Retention [70:1] +| | |--LPAREN -> ( [70:10] +| | |--EXPR -> EXPR [70:26] +| | | `--DOT -> . [70:26] +| | | |--IDENT -> RetentionPolicy [70:11] +| | | `--IDENT -> CLASS [70:27] +| | `--RPAREN -> ) [70:32] +| `--ANNOTATION -> ANNOTATION [71:0] +| |--AT -> @ [71:0] +| |--IDENT -> Target [71:1] +| |--LPAREN -> ( [71:7] +| |--ANNOTATION_ARRAY_INIT -> { [71:8] +| | |--EXPR -> EXPR [71:21] +| | | `--DOT -> . [71:21] +| | | |--IDENT -> ElementType [71:10] +| | | `--IDENT -> TYPE_USE [71:22] +| | `--RCURLY -> } [71:31] +| `--RPAREN -> ) [71:32] +|--AT -> @ [72:0] +|--LITERAL_INTERFACE -> interface [72:1] +|--IDENT -> Nullable [72:11] +`--OBJBLOCK -> OBJBLOCK [72:20] + |--LCURLY -> { [72:20] + `--RCURLY -> } [73:0] diff --git a/src/test/resources/com/puppycrawl/tools/checkstyle/grammars/java8/InputReceiverParameter.java b/src/test/resources/com/puppycrawl/tools/checkstyle/grammars/java8/InputReceiverParameter.java new file mode 100644 index 000000000..c5f5ef391 --- /dev/null +++ b/src/test/resources/com/puppycrawl/tools/checkstyle/grammars/java8/InputReceiverParameter.java @@ -0,0 +1,10 @@ +//Compilable with Java8 +package com.puppycrawl.tools.checkstyle.grammars.java8; + +public class InputReceiverParameter { + public void m4(InputReceiverParameter this) {} + + private class Inner { + public Inner(InputReceiverParameter InputReceiverParameter.this) {} + } +}
\ No newline at end of file |