Repository: groovy Updated Branches: refs/heads/GROOVY_2_6_X 1fe9730bc -> c5e07972e
Minor refactoring (cherry picked from commit 90b3a87) Project: http://git-wip-us.apache.org/repos/asf/groovy/repo Commit: http://git-wip-us.apache.org/repos/asf/groovy/commit/c5e07972 Tree: http://git-wip-us.apache.org/repos/asf/groovy/tree/c5e07972 Diff: http://git-wip-us.apache.org/repos/asf/groovy/diff/c5e07972 Branch: refs/heads/GROOVY_2_6_X Commit: c5e07972ebff81c41627c8915dd15649b6963cda Parents: 1fe9730 Author: sunlan <[email protected]> Authored: Thu Sep 28 16:29:47 2017 +0800 Committer: sunlan <[email protected]> Committed: Thu Sep 28 16:30:13 2017 +0800 ---------------------------------------------------------------------- src/antlr/GroovyParser.g4 | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/groovy/blob/c5e07972/src/antlr/GroovyParser.g4 ---------------------------------------------------------------------- diff --git a/src/antlr/GroovyParser.g4 b/src/antlr/GroovyParser.g4 index 7854496..801e1e1 100644 --- a/src/antlr/GroovyParser.g4 +++ b/src/antlr/GroovyParser.g4 @@ -1013,12 +1013,16 @@ locals[ boolean isInsideClosure ] : nls // AT: foo.@bar selects the field (or attribute), not property - ( SPREAD_DOT nls (AT | nonWildcardTypeArguments)? // Spread operator: x*.y === x?.collect{it.y} - | SAFE_DOT nls (AT | nonWildcardTypeArguments)? // Optional-null operator: x?.y === (x==null)?null:x.y - | SAFE_CHAIN_DOT nls (AT | nonWildcardTypeArguments)? // Optional-null chain operator: x??.y.z === x?.y?.z - | METHOD_POINTER nls // Method pointer operator: foo.&y == foo.metaClass.getMethodPointer(foo, "y") - | METHOD_REFERENCE nls // Method reference: System.out::println - | DOT nls (AT | nonWildcardTypeArguments)? // The all-powerful dot. + ( + ( DOT // The all-powerful dot. + | SPREAD_DOT // Spread operator: x*.y === x?.collect{it.y} + | SAFE_DOT // Optional-null operator: x?.y === (x==null)?null:x.y + | SAFE_CHAIN_DOT // Optional-null chain operator: x??.y.z === x?.y?.z + ) nls (AT | nonWildcardTypeArguments)? + | + METHOD_POINTER nls // Method pointer operator: foo.&y == foo.metaClass.getMethodPointer(foo, "y") + | + METHOD_REFERENCE nls // Method reference: System.out::println ) namePart { $t = 1; }
