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
},