You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@groovy.apache.org by su...@apache.org on 2017/06/24 09:35:06 UTC

groovy git commit: Refine the checking of EmptyStatement and EmptyExpression further

Repository: groovy
Updated Branches:
  refs/heads/master f0dcf82fd -> 73125b0ec


Refine the checking of EmptyStatement and EmptyExpression further


Project: http://git-wip-us.apache.org/repos/asf/groovy/repo
Commit: http://git-wip-us.apache.org/repos/asf/groovy/commit/73125b0e
Tree: http://git-wip-us.apache.org/repos/asf/groovy/tree/73125b0e
Diff: http://git-wip-us.apache.org/repos/asf/groovy/diff/73125b0e

Branch: refs/heads/master
Commit: 73125b0ec7edc729a3b5cc3a5cabf167bb29a1ed
Parents: f0dcf82
Author: sunlan <su...@apache.org>
Authored: Sat Jun 24 17:34:59 2017 +0800
Committer: sunlan <su...@apache.org>
Committed: Sat Jun 24 17:34:59 2017 +0800

----------------------------------------------------------------------
 .../groovy/ast/expr/EmptyExpression.java        | 20 +++++++++++---------
 .../groovy/ast/stmt/EmptyStatement.java         |  4 ++--
 .../groovy/ast/builder/AstAssert.groovy         |  2 +-
 3 files changed, 14 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/groovy/blob/73125b0e/src/main/org/codehaus/groovy/ast/expr/EmptyExpression.java
----------------------------------------------------------------------
diff --git a/src/main/org/codehaus/groovy/ast/expr/EmptyExpression.java b/src/main/org/codehaus/groovy/ast/expr/EmptyExpression.java
index 7b6d9e7..0f61025 100644
--- a/src/main/org/codehaus/groovy/ast/expr/EmptyExpression.java
+++ b/src/main/org/codehaus/groovy/ast/expr/EmptyExpression.java
@@ -37,7 +37,17 @@ import java.util.Map;
  * @see org.codehaus.groovy.ast.stmt.EmptyStatement
  */
 public class EmptyExpression extends Expression {
-    public static final EmptyExpression INSTANCE = new EmptyExpression() {
+    public static final EmptyExpression INSTANCE = new ImmutableEmptyExpression() ;
+
+    public Expression transformExpression(ExpressionTransformer transformer) {
+        return this;
+    }
+
+    public void visit(GroovyCodeVisitor visitor) {
+        return;
+    }
+
+    private static class ImmutableEmptyExpression extends EmptyExpression {
         @Override
         public void setType(ClassNode t) {
             throw createUnsupportedOperationException();
@@ -121,13 +131,5 @@ public class EmptyExpression extends Expression {
         private UnsupportedOperationException createUnsupportedOperationException() {
             return new UnsupportedOperationException("EmptyExpression.INSTANCE is immutable");
         }
-    };
-
-    public Expression transformExpression(ExpressionTransformer transformer) {
-        return this;
-    }
-
-    public void visit(GroovyCodeVisitor visitor) {
-        return;
     }
 }

http://git-wip-us.apache.org/repos/asf/groovy/blob/73125b0e/src/main/org/codehaus/groovy/ast/stmt/EmptyStatement.java
----------------------------------------------------------------------
diff --git a/src/main/org/codehaus/groovy/ast/stmt/EmptyStatement.java b/src/main/org/codehaus/groovy/ast/stmt/EmptyStatement.java
index 3f6aa93..660653cd 100644
--- a/src/main/org/codehaus/groovy/ast/stmt/EmptyStatement.java
+++ b/src/main/org/codehaus/groovy/ast/stmt/EmptyStatement.java
@@ -30,7 +30,7 @@ import java.util.Map;
  * @author <a href="mailto:james@coredevelopers.net">James Strachan</a>
  */
 public class EmptyStatement extends Statement {
-    public static final EmptyStatement INSTANCE = new ImmutableStatement();
+    public static final EmptyStatement INSTANCE = new ImmutableEmptyStatement();
     
     public void visit(GroovyCodeVisitor visitor) {
     }
@@ -39,7 +39,7 @@ public class EmptyStatement extends Statement {
         return true;
     }
 
-    public static class ImmutableStatement extends EmptyStatement {
+    private static class ImmutableEmptyStatement extends EmptyStatement {
         @Override
         public void setStatementLabel(String label) {
             throw createUnsupportedOperationException();

http://git-wip-us.apache.org/repos/asf/groovy/blob/73125b0e/src/test/org/codehaus/groovy/ast/builder/AstAssert.groovy
----------------------------------------------------------------------
diff --git a/src/test/org/codehaus/groovy/ast/builder/AstAssert.groovy b/src/test/org/codehaus/groovy/ast/builder/AstAssert.groovy
index af9fb27..98a3d6f 100644
--- a/src/test/org/codehaus/groovy/ast/builder/AstAssert.groovy
+++ b/src/test/org/codehaus/groovy/ast/builder/AstAssert.groovy
@@ -227,7 +227,7 @@ class AstAssert {
             EmptyStatement : { expected, actual ->
                 // always successful
             },
-            'EmptyStatement.ImmutableStatement' : { expected, actual ->
+            ImmutableEmptyStatement : { expected, actual ->
                 // always successful
             },