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 2021/08/07 19:35:54 UTC
[groovy] branch master updated: Trivial refactoring: extract
`Sealed` type constant
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 9bb74fa Trivial refactoring: extract `Sealed` type constant
9bb74fa is described below
commit 9bb74fab33aacb224c22c81374bd7dbc074c9874
Author: Daniel Sun <su...@apache.org>
AuthorDate: Sun Aug 8 03:35:39 2021 +0800
Trivial refactoring: extract `Sealed` type constant
---
src/main/java/org/codehaus/groovy/ast/ClassHelper.java | 2 ++
src/main/java/org/codehaus/groovy/ast/ClassNode.java | 4 +---
.../java/org/codehaus/groovy/ast/decompiled/DecompiledClassNode.java | 4 ----
src/main/java/org/codehaus/groovy/classgen/Verifier.java | 3 +--
.../org/codehaus/groovy/transform/trait/TraitASTTransformation.java | 3 +--
5 files changed, 5 insertions(+), 11 deletions(-)
diff --git a/src/main/java/org/codehaus/groovy/ast/ClassHelper.java b/src/main/java/org/codehaus/groovy/ast/ClassHelper.java
index 9f2db6f..c60b400 100644
--- a/src/main/java/org/codehaus/groovy/ast/ClassHelper.java
+++ b/src/main/java/org/codehaus/groovy/ast/ClassHelper.java
@@ -46,6 +46,7 @@ import groovy.lang.Tuple6;
import groovy.lang.Tuple7;
import groovy.lang.Tuple8;
import groovy.lang.Tuple9;
+import groovy.transform.Sealed;
import org.apache.groovy.util.Maps;
import org.apache.groovy.util.concurrent.ManagedIdentityConcurrentMap;
import org.codehaus.groovy.classgen.asm.util.TypeUtil;
@@ -139,6 +140,7 @@ public class ClassHelper {
AUTOCLOSEABLE_TYPE = makeCached(AutoCloseable.class),
SERIALIZABLE_TYPE = makeCached(Serializable.class),
SERIALIZEDLAMBDA_TYPE = makeCached(SerializedLambda.class),
+ SEALED_TYPE = makeCached(Sealed.class),
// uncached constants
MAP_TYPE = makeWithoutCaching(Map.class),
diff --git a/src/main/java/org/codehaus/groovy/ast/ClassNode.java b/src/main/java/org/codehaus/groovy/ast/ClassNode.java
index a7be838..87b278f 100644
--- a/src/main/java/org/codehaus/groovy/ast/ClassNode.java
+++ b/src/main/java/org/codehaus/groovy/ast/ClassNode.java
@@ -18,7 +18,6 @@
*/
package org.codehaus.groovy.ast;
-import groovy.transform.Sealed;
import org.apache.groovy.ast.tools.ClassNodeUtils;
import org.codehaus.groovy.GroovyBugError;
import org.codehaus.groovy.ast.expr.BinaryExpression;
@@ -52,10 +51,10 @@ import java.util.stream.Collectors;
import static java.util.Arrays.stream;
import static org.apache.groovy.ast.tools.MethodNodeUtils.getCodeAsBlock;
+import static org.codehaus.groovy.ast.ClassHelper.SEALED_TYPE;
import static org.codehaus.groovy.ast.ClassHelper.isObjectType;
import static org.codehaus.groovy.ast.ClassHelper.isPrimitiveBoolean;
import static org.codehaus.groovy.ast.ClassHelper.isPrimitiveVoid;
-import static org.codehaus.groovy.ast.ClassHelper.make;
import static org.objectweb.asm.Opcodes.ACC_ABSTRACT;
import static org.objectweb.asm.Opcodes.ACC_ANNOTATION;
import static org.objectweb.asm.Opcodes.ACC_ENUM;
@@ -144,7 +143,6 @@ public class ClassNode extends AnnotatedNode {
public static final ClassNode[] EMPTY_ARRAY = new ClassNode[0];
public static final ClassNode THIS = new ClassNode(Object.class);
public static final ClassNode SUPER = new ClassNode(Object.class);
- private static final ClassNode SEALED_TYPE = make(Sealed.class);
private String name;
private int modifiers;
diff --git a/src/main/java/org/codehaus/groovy/ast/decompiled/DecompiledClassNode.java b/src/main/java/org/codehaus/groovy/ast/decompiled/DecompiledClassNode.java
index a967110..f6a81ff 100644
--- a/src/main/java/org/codehaus/groovy/ast/decompiled/DecompiledClassNode.java
+++ b/src/main/java/org/codehaus/groovy/ast/decompiled/DecompiledClassNode.java
@@ -18,7 +18,6 @@
*/
package org.codehaus.groovy.ast.decompiled;
-import groovy.transform.Sealed;
import org.codehaus.groovy.ast.AnnotatedNode;
import org.codehaus.groovy.ast.AnnotationNode;
import org.codehaus.groovy.ast.ClassNode;
@@ -35,8 +34,6 @@ import java.lang.reflect.Modifier;
import java.util.List;
import java.util.function.Supplier;
-import static org.codehaus.groovy.ast.ClassHelper.make;
-
/**
* A {@link ClassNode} kind representing the classes coming from *.class files decompiled using ASM.
*
@@ -47,7 +44,6 @@ public class DecompiledClassNode extends ClassNode {
private final AsmReferenceResolver resolver;
private volatile boolean supersInitialized;
private volatile boolean membersInitialized;
- private static final ClassNode SEALED_TYPE = make(Sealed.class);
public DecompiledClassNode(ClassStub data, AsmReferenceResolver resolver) {
super(data.className, getFullModifiers(data), null, null, MixinNode.EMPTY_ARRAY);
diff --git a/src/main/java/org/codehaus/groovy/classgen/Verifier.java b/src/main/java/org/codehaus/groovy/classgen/Verifier.java
index 96dac02..5425c24 100644
--- a/src/main/java/org/codehaus/groovy/classgen/Verifier.java
+++ b/src/main/java/org/codehaus/groovy/classgen/Verifier.java
@@ -103,11 +103,11 @@ import static org.apache.groovy.ast.tools.MethodNodeUtils.getCodeAsBlock;
import static org.apache.groovy.ast.tools.MethodNodeUtils.getPropertyName;
import static org.apache.groovy.ast.tools.MethodNodeUtils.methodDescriptorWithoutReturnType;
import static org.codehaus.groovy.ast.AnnotationNode.METHOD_TARGET;
+import static org.codehaus.groovy.ast.ClassHelper.SEALED_TYPE;
import static org.codehaus.groovy.ast.ClassHelper.isObjectType;
import static org.codehaus.groovy.ast.ClassHelper.isPrimitiveBoolean;
import static org.codehaus.groovy.ast.ClassHelper.isPrimitiveDouble;
import static org.codehaus.groovy.ast.ClassHelper.isPrimitiveLong;
-import static org.codehaus.groovy.ast.ClassHelper.make;
import static org.codehaus.groovy.ast.tools.GeneralUtils.binX;
import static org.codehaus.groovy.ast.tools.GeneralUtils.block;
import static org.codehaus.groovy.ast.tools.GeneralUtils.bytecodeX;
@@ -159,7 +159,6 @@ public class Verifier implements GroovyClassVisitor, Opcodes {
private static final Class<?> GENERATED_ANNOTATION = Generated.class;
private static final Class<?> INTERNAL_ANNOTATION = Internal.class;
private static final Class<?> TRANSIENT_ANNOTATION = Transient.class;
- private static final ClassNode SEALED_TYPE = make(Sealed.class);
// NOTE: timeStamp constants shouldn't belong to Verifier but kept here for binary compatibility
public static final String __TIMESTAMP = "__timeStamp";
diff --git a/src/main/java/org/codehaus/groovy/transform/trait/TraitASTTransformation.java b/src/main/java/org/codehaus/groovy/transform/trait/TraitASTTransformation.java
index 3463b3e..2e46106 100644
--- a/src/main/java/org/codehaus/groovy/transform/trait/TraitASTTransformation.java
+++ b/src/main/java/org/codehaus/groovy/transform/trait/TraitASTTransformation.java
@@ -19,7 +19,6 @@
package org.codehaus.groovy.transform.trait;
import groovy.transform.CompilationUnitAware;
-import groovy.transform.Sealed;
import org.codehaus.groovy.ast.ASTNode;
import org.codehaus.groovy.ast.AnnotatedNode;
import org.codehaus.groovy.ast.AnnotationNode;
@@ -105,7 +104,7 @@ public class TraitASTTransformation extends AbstractASTTransformation implements
private static final ClassNode INVOKERHELPER_CLASSNODE = ClassHelper.make(InvokerHelper.class);
private static final ClassNode OVERRIDE_CLASSNODE = ClassHelper.make(Override.class);
- private static final ClassNode SEALED_CLASSNODE = ClassHelper.make(Sealed.class);
+ private static final ClassNode SEALED_CLASSNODE = ClassHelper.SEALED_TYPE;
private SourceUnit sourceUnit;
private CompilationUnit compilationUnit;