You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@groovy.apache.org by em...@apache.org on 2022/03/21 15:30:54 UTC
[groovy] 02/02: minor edits
This is an automated email from the ASF dual-hosted git repository.
emilles pushed a commit to branch GROOVY_3_0_X
in repository https://gitbox.apache.org/repos/asf/groovy.git
commit f2991ba9ee210ca00c1e79eed0efbb6d1d435124
Author: Eric Milles <er...@thomsonreuters.com>
AuthorDate: Mon Mar 21 10:17:00 2022 -0500
minor edits
---
src/main/java/org/codehaus/groovy/ast/GenericsType.java | 9 +++++----
src/main/java/org/codehaus/groovy/ast/tools/GenericsUtils.java | 7 +++----
.../org/codehaus/groovy/transform/DelegateASTTransformation.java | 3 +--
.../codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java | 4 ++--
4 files changed, 11 insertions(+), 12 deletions(-)
diff --git a/src/main/java/org/codehaus/groovy/ast/GenericsType.java b/src/main/java/org/codehaus/groovy/ast/GenericsType.java
index 378b054..e689249 100644
--- a/src/main/java/org/codehaus/groovy/ast/GenericsType.java
+++ b/src/main/java/org/codehaus/groovy/ast/GenericsType.java
@@ -66,20 +66,21 @@ public class GenericsType extends ASTNode {
}
private static String toString(final GenericsType gt, final Set<String> visited) {
+ String name = gt.getName();
ClassNode type = gt.getType();
boolean wildcard = gt.isWildcard();
boolean placeholder = gt.isPlaceholder();
ClassNode lowerBound = gt.getLowerBound();
ClassNode[] upperBounds = gt.getUpperBounds();
- if (placeholder) visited.add(gt.getName());
+ if (placeholder) visited.add(name);
- StringBuilder ret = new StringBuilder(wildcard || placeholder ? gt.getName() : genericsBounds(type, visited));
+ StringBuilder ret = new StringBuilder(wildcard || placeholder ? name : genericsBounds(type, visited));
if (lowerBound != null) {
ret.append(" super ").append(genericsBounds(lowerBound, visited));
} else if (upperBounds != null
// T extends Object should just be printed as T
- && !(placeholder && upperBounds.length == 1 && !upperBounds[0].isGenericsPlaceHolder() && upperBounds[0].getName().equals("java.lang.Object"))) {
+ && !(placeholder && upperBounds.length == 1 && !upperBounds[0].isGenericsPlaceHolder() && upperBounds[0].getName().equals(ClassHelper.OBJECT))) {
ret.append(" extends ");
for (int i = 0, n = upperBounds.length; i < n; i += 1) {
if (i != 0) ret.append(" & ");
@@ -444,7 +445,7 @@ public class GenericsType extends ASTNode {
if (!match) break;
}
}
- continue;
+ continue; // GROOVY-10010
}
}
match = redirectBoundType.isCompatibleWith(classNodeType.getType());
diff --git a/src/main/java/org/codehaus/groovy/ast/tools/GenericsUtils.java b/src/main/java/org/codehaus/groovy/ast/tools/GenericsUtils.java
index 1961e00..84d328d 100644
--- a/src/main/java/org/codehaus/groovy/ast/tools/GenericsUtils.java
+++ b/src/main/java/org/codehaus/groovy/ast/tools/GenericsUtils.java
@@ -64,7 +64,7 @@ import static org.codehaus.groovy.transform.stc.StaticTypeCheckingSupport.implem
*/
public class GenericsUtils {
public static final GenericsType[] EMPTY_GENERICS_ARRAY = GenericsType.EMPTY_ARRAY;
- public static final String JAVA_LANG_OBJECT = "java.lang.Object";
+ public static final String JAVA_LANG_OBJECT = ClassHelper.OBJECT;
/**
* Given a parameterized type and a generic type information, aligns actual type parameters. For example, if a
@@ -167,8 +167,8 @@ public class GenericsUtils {
GenericsType[] parameterized = node.getGenericsTypes();
if (parameterized == null || parameterized.length == 0) return;
GenericsType[] redirectGenericsTypes = node.redirect().getGenericsTypes();
- if (redirectGenericsTypes == null ||
- (node.isGenericsPlaceHolder() && redirectGenericsTypes.length != parameterized.length) /* GROOVY-8609 */ ) {
+ if (redirectGenericsTypes == null || (node.isGenericsPlaceHolder() // GROOVY-8609
+ && redirectGenericsTypes.length != parameterized.length)) {
redirectGenericsTypes = parameterized;
}
if (redirectGenericsTypes.length != parameterized.length) {
@@ -269,7 +269,6 @@ public class GenericsUtils {
genericsSpec = createGenericsSpec(targetRedirect, genericsSpec);
extractSuperClassGenerics(hint, targetRedirect, genericsSpec);
return correctToGenericsSpecRecurse(genericsSpec, targetRedirect);
-
}
public static ClassNode nonGeneric(final ClassNode type) {
diff --git a/src/main/java/org/codehaus/groovy/transform/DelegateASTTransformation.java b/src/main/java/org/codehaus/groovy/transform/DelegateASTTransformation.java
index 311edc3..5ee271f 100644
--- a/src/main/java/org/codehaus/groovy/transform/DelegateASTTransformation.java
+++ b/src/main/java/org/codehaus/groovy/transform/DelegateASTTransformation.java
@@ -66,7 +66,6 @@ import static org.codehaus.groovy.ast.tools.GenericsUtils.correctToGenericsSpec;
import static org.codehaus.groovy.ast.tools.GenericsUtils.correctToGenericsSpecRecurse;
import static org.codehaus.groovy.ast.tools.GenericsUtils.createGenericsSpec;
import static org.codehaus.groovy.ast.tools.GenericsUtils.extractSuperClassGenerics;
-import static org.codehaus.groovy.ast.tools.GenericsUtils.nonGeneric;
import static org.codehaus.groovy.ast.tools.ParameterUtils.parametersEqual;
/**
@@ -186,7 +185,7 @@ public class DelegateASTTransformation extends AbstractASTTransformation {
if (skipInterfaces) return;
Set<ClassNode> addedInterfaces = getInterfacesAndSuperInterfaces(delegate.type);
- addedInterfaces.removeIf(i -> (i.getModifiers() & (ACC_PUBLIC | ACC_SYNTHETIC)) != ACC_PUBLIC); // GROOVY-7288 and JDK16+
+ addedInterfaces.removeIf(i -> (i.getModifiers() & (ACC_PUBLIC | ACC_SYNTHETIC)) != ACC_PUBLIC); // GROOVY-7288
if (!addedInterfaces.isEmpty()) {
Set<ClassNode> ownerInterfaces = getInterfacesAndSuperInterfaces(delegate.owner);
for (ClassNode i : addedInterfaces) {
diff --git a/src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java b/src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java
index 72e97ea..ba44773 100644
--- a/src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java
+++ b/src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java
@@ -775,7 +775,7 @@ public class StaticTypeCheckingVisitor extends ClassCodeVisitorSupport {
: getInferredTypeFromTempInfo(rightExpression, getType(rightExpression));
ClassNode resultType;
if (op == ELVIS_EQUAL) {
- Expression fullExpression = new ElvisOperatorExpression(leftExpression, rightExpression);
+ Expression fullExpression = elvisX(leftExpression, rightExpression);
fullExpression.setSourcePosition(expression);
fullExpression.visit(this);
@@ -4409,7 +4409,7 @@ public class StaticTypeCheckingVisitor extends ClassCodeVisitorSupport {
}
if (leftExpression instanceof VariableExpression) {
- ClassNode initialType = getOriginalDeclarationType(leftExpression).redirect();
+ ClassNode initialType = getOriginalDeclarationType(leftExpression);
if (isPrimitiveType(right) && initialType.isDerivedFrom(Number_TYPE)) {
return getWrapper(right);