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);
     }