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 2022/09/05 16:18:18 UTC
[groovy] branch master updated: Trivial refactoring: eliminate redundant checks for `CloneNotSupportedException`
This is an automated email from the ASF dual-hosted git repository.
sunlan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/groovy.git
The following commit(s) were added to refs/heads/master by this push:
new f11444838f Trivial refactoring: eliminate redundant checks for `CloneNotSupportedException`
f11444838f is described below
commit f11444838fced17b0f682707adda47c90cb48703
Author: Daniel Sun <su...@apache.org>
AuthorDate: Tue Sep 6 00:17:08 2022 +0800
Trivial refactoring: eliminate redundant checks for `CloneNotSupportedException`
---
.../java/groovy/transform/options/ImmutablePropertyHandler.java | 9 ++-------
1 file changed, 2 insertions(+), 7 deletions(-)
diff --git a/src/main/java/groovy/transform/options/ImmutablePropertyHandler.java b/src/main/java/groovy/transform/options/ImmutablePropertyHandler.java
index 2b5fac14e6..4fe8b11569 100644
--- a/src/main/java/groovy/transform/options/ImmutablePropertyHandler.java
+++ b/src/main/java/groovy/transform/options/ImmutablePropertyHandler.java
@@ -82,7 +82,6 @@ import static org.codehaus.groovy.ast.tools.GeneralUtils.varX;
public class ImmutablePropertyHandler extends PropertyHandler {
private static final ClassNode CLONEABLE_TYPE = make(Cloneable.class);
- private static final ClassNode CLONENOTSUPPORTED_TYPE = make(CloneNotSupportedException.class);
private static final ClassNode COLLECTION_TYPE = makeWithoutCaching(Collection.class, false);
private static final ClassNode DGM_TYPE = make(DefaultGroovyMethods.class);
private static final ClassNode SELF_TYPE = make(ImmutableASTTransformation.class);
@@ -293,17 +292,13 @@ public class ImmutablePropertyHandler extends PropertyHandler {
assignStmt = ifElseS(
equalsNullX(param),
shouldNullCheck ? NullCheckASTTransformation.makeThrowStmt(fNode.getName()) : assignNullS(fieldExpr),
- ifElseS(isInstanceOfX(param, CLONEABLE_TYPE),
- assignStmt,
- throwS(ctorX(CLONENOTSUPPORTED_TYPE))));
+ assignStmt);
final Statement assignInit;
final Expression initExpr = fNode.getInitialValueExpression();
if (initExpr == null || (initExpr instanceof ConstantExpression && ((ConstantExpression) initExpr).isNullExpression())) {
assignInit = shouldNullCheck ? NullCheckASTTransformation.makeThrowStmt(fNode.getName()) : assignNullS(fieldExpr);
} else {
- assignInit = ifElseS(isInstanceOfX(initExpr, CLONEABLE_TYPE),
- assignS(fieldExpr, cloneArrayOrCloneableExpr(initExpr, fieldType)),
- throwS(ctorX(CLONENOTSUPPORTED_TYPE)));
+ assignInit = assignS(fieldExpr, cloneArrayOrCloneableExpr(initExpr, fieldType));
}
return assignFieldWithDefault(namedArgsMap, fNode, assignStmt, assignInit);
}