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 2019/11/03 15:00:47 UTC
[groovy] 04/05: Trivial refactoring: `Collections.sort()` can be
replaced with `List.sort()`
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
commit ea12ea4a039d51160ad61b52f9d3a477edd4dcd7
Author: Daniel Sun <su...@apache.org>
AuthorDate: Sun Nov 3 22:54:42 2019 +0800
Trivial refactoring: `Collections.sort()` can be replaced with `List.sort()`
---
src/main/java/groovy/inspect/Inspector.java | 3 +--
src/main/java/groovy/lang/MetaClassImpl.java | 6 +++---
.../org/codehaus/groovy/classgen/asm/InvocationWriter.java | 3 +--
.../java/org/codehaus/groovy/runtime/DefaultGroovyMethods.java | 10 +++++-----
.../codehaus/groovy/runtime/powerassert/AssertionRenderer.java | 5 +----
.../codehaus/groovy/transform/SortableASTTransformation.java | 3 +--
.../codehaus/groovy/transform/ToStringASTTransformation.java | 3 +--
.../groovy/transform/TupleConstructorASTTransformation.java | 3 +--
8 files changed, 14 insertions(+), 22 deletions(-)
diff --git a/src/main/java/groovy/inspect/Inspector.java b/src/main/java/groovy/inspect/Inspector.java
index caf5cd3..12fce8b 100644
--- a/src/main/java/groovy/inspect/Inspector.java
+++ b/src/main/java/groovy/inspect/Inspector.java
@@ -32,7 +32,6 @@ import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
import java.util.Collection;
-import java.util.Collections;
import java.util.Comparator;
import java.util.Iterator;
import java.util.List;
@@ -306,7 +305,7 @@ public class Inspector {
}
public static Collection sort(List<Object> memberInfo) {
- Collections.sort(memberInfo, new MemberComparator());
+ memberInfo.sort(new MemberComparator());
return memberInfo;
}
diff --git a/src/main/java/groovy/lang/MetaClassImpl.java b/src/main/java/groovy/lang/MetaClassImpl.java
index 94cb823..93573d2 100644
--- a/src/main/java/groovy/lang/MetaClassImpl.java
+++ b/src/main/java/groovy/lang/MetaClassImpl.java
@@ -1632,7 +1632,7 @@ public class MetaClassImpl implements MetaClass, MutableMetaClass {
String descriptor1 = BytecodeHelper.getMethodDescriptor(Void.TYPE, c1.getNativeParameterTypes());
return descriptor0.compareTo(descriptor1);
};
- Collections.sort(l, comp);
+ l.sort(comp);
int found = -1;
for (int i = 0; i < l.size(); i++) {
if (l.get(i) != constructor) continue;
@@ -2347,7 +2347,7 @@ public class MetaClassImpl implements MetaClass, MutableMetaClass {
// sort interfaces so that we may ensure a deterministic behaviour in case of
// ambiguous fields (class implementing two interfaces using the same field)
if (superInterfaces.size() > 1) {
- Collections.sort(superInterfaces, CACHED_CLASS_NAME_COMPARATOR);
+ superInterfaces.sort(CACHED_CLASS_NAME_COMPARATOR);
}
SingleKeyHashMap iPropertyIndex = classPropertyIndex.getNotNull(theCachedClass);
@@ -2368,7 +2368,7 @@ public class MetaClassImpl implements MetaClass, MutableMetaClass {
// sort interfaces so that we may ensure a deterministic behaviour in case of
// ambiguous fields (class implementing two interfaces using the same field)
if (interfaces.size() > 1) {
- Collections.sort(interfaces, CACHED_CLASS_NAME_COMPARATOR);
+ interfaces.sort(CACHED_CLASS_NAME_COMPARATOR);
}
// if this an Array, then add the special read-only "length" property
diff --git a/src/main/java/org/codehaus/groovy/classgen/asm/InvocationWriter.java b/src/main/java/org/codehaus/groovy/classgen/asm/InvocationWriter.java
index 472f70a..123f38b 100644
--- a/src/main/java/org/codehaus/groovy/classgen/asm/InvocationWriter.java
+++ b/src/main/java/org/codehaus/groovy/classgen/asm/InvocationWriter.java
@@ -50,7 +50,6 @@ import org.objectweb.asm.MethodVisitor;
import java.lang.reflect.Modifier;
import java.util.ArrayList;
-import java.util.Collections;
import java.util.Comparator;
import java.util.Iterator;
import java.util.LinkedList;
@@ -725,7 +724,7 @@ public class InvocationWriter {
String descriptor1 = BytecodeHelper.getMethodDescriptor(ClassHelper.VOID_TYPE, c1.getParameters());
return descriptor0.compareTo(descriptor1);
};
- Collections.sort(constructors, comp);
+ constructors.sort(comp);
return constructors;
}
diff --git a/src/main/java/org/codehaus/groovy/runtime/DefaultGroovyMethods.java b/src/main/java/org/codehaus/groovy/runtime/DefaultGroovyMethods.java
index 04f6b5a..d5d0d44 100644
--- a/src/main/java/org/codehaus/groovy/runtime/DefaultGroovyMethods.java
+++ b/src/main/java/org/codehaus/groovy/runtime/DefaultGroovyMethods.java
@@ -9219,7 +9219,7 @@ public class DefaultGroovyMethods extends DefaultGroovyMethodsSupport {
*/
public static <T> List<T> sort(Iterable<T> self, boolean mutate) {
List<T> answer = mutate ? asList(self) : toList(self);
- Collections.sort(answer, new NumberAwareComparator<T>());
+ answer.sort(new NumberAwareComparator<T>());
return answer;
}
@@ -9387,7 +9387,7 @@ public class DefaultGroovyMethods extends DefaultGroovyMethodsSupport {
*/
public static <T> List<T> sort(Iterable<T> self, boolean mutate, Comparator<? super T> comparator) {
List<T> list = mutate ? asList(self) : toList(self);
- Collections.sort(list, comparator);
+ list.sort(comparator);
return list;
}
@@ -9581,9 +9581,9 @@ public class DefaultGroovyMethods extends DefaultGroovyMethodsSupport {
// use a comparator of one item or two
int params = closure.getMaximumNumberOfParameters();
if (params == 1) {
- Collections.sort(list, new OrderBy<T>(closure));
+ list.sort(new OrderBy<T>(closure));
} else {
- Collections.sort(list, new ClosureComparator<T>(closure));
+ list.sort(new ClosureComparator<T>(closure));
}
return list;
}
@@ -9649,7 +9649,7 @@ public class DefaultGroovyMethods extends DefaultGroovyMethodsSupport {
*/
public static <T> List<T> toSorted(Iterable<T> self, Comparator<T> comparator) {
List<T> list = toList(self);
- Collections.sort(list, comparator);
+ list.sort(comparator);
return list;
}
diff --git a/src/main/java/org/codehaus/groovy/runtime/powerassert/AssertionRenderer.java b/src/main/java/org/codehaus/groovy/runtime/powerassert/AssertionRenderer.java
index e911e6c..218a925 100644
--- a/src/main/java/org/codehaus/groovy/runtime/powerassert/AssertionRenderer.java
+++ b/src/main/java/org/codehaus/groovy/runtime/powerassert/AssertionRenderer.java
@@ -21,7 +21,6 @@ package org.codehaus.groovy.runtime.powerassert;
import org.codehaus.groovy.runtime.InvokerHelper;
import java.util.ArrayList;
-import java.util.Collections;
import java.util.List;
/**
@@ -71,9 +70,7 @@ public final class AssertionRenderer {
private void sortValues() {
// it's important to use a stable sort here, otherwise
// renderValues() will skip the wrong values
- Collections.sort(recorder.getValues(),
- (v1, v2) -> v2.getColumn() - v1.getColumn()
- );
+ recorder.getValues().sort((v1, v2) -> v2.getColumn() - v1.getColumn());
}
private void renderValues() {
diff --git a/src/main/java/org/codehaus/groovy/transform/SortableASTTransformation.java b/src/main/java/org/codehaus/groovy/transform/SortableASTTransformation.java
index 7acd487..1f8cd4d 100644
--- a/src/main/java/org/codehaus/groovy/transform/SortableASTTransformation.java
+++ b/src/main/java/org/codehaus/groovy/transform/SortableASTTransformation.java
@@ -39,7 +39,6 @@ import org.codehaus.groovy.runtime.AbstractComparator;
import org.codehaus.groovy.runtime.StringGroovyMethods;
import java.util.ArrayList;
-import java.util.Collections;
import java.util.Comparator;
import java.util.HashSet;
import java.util.List;
@@ -237,7 +236,7 @@ public class SortableASTTransformation extends AbstractASTTransformation {
}
if (includes != null) {
Comparator<PropertyNode> includeComparator = (o1, o2) -> Integer.compare(includes.indexOf(o1.getName()), includes.indexOf(o2.getName()));
- Collections.sort(properties, includeComparator);
+ properties.sort(includeComparator);
}
return properties;
}
diff --git a/src/main/java/org/codehaus/groovy/transform/ToStringASTTransformation.java b/src/main/java/org/codehaus/groovy/transform/ToStringASTTransformation.java
index 7de6e13..a8acd42 100644
--- a/src/main/java/org/codehaus/groovy/transform/ToStringASTTransformation.java
+++ b/src/main/java/org/codehaus/groovy/transform/ToStringASTTransformation.java
@@ -40,7 +40,6 @@ import org.codehaus.groovy.runtime.InvokerHelper;
import org.codehaus.groovy.transform.stc.StaticTypeCheckingSupport;
import java.util.ArrayList;
-import java.util.Collections;
import java.util.Comparator;
import java.util.HashSet;
import java.util.List;
@@ -219,7 +218,7 @@ public class ToStringASTTransformation extends AbstractASTTransformation {
if (includes != null) {
Comparator<ToStringElement> includeComparator = (tse1, tse2) -> Integer.compare(includes.indexOf(tse1.name), includes.indexOf(tse2.name));
- Collections.sort(elements, includeComparator);
+ elements.sort(includeComparator);
}
for (ToStringElement el : elements) {
diff --git a/src/main/java/org/codehaus/groovy/transform/TupleConstructorASTTransformation.java b/src/main/java/org/codehaus/groovy/transform/TupleConstructorASTTransformation.java
index def9095..df4be58 100644
--- a/src/main/java/org/codehaus/groovy/transform/TupleConstructorASTTransformation.java
+++ b/src/main/java/org/codehaus/groovy/transform/TupleConstructorASTTransformation.java
@@ -48,7 +48,6 @@ import org.codehaus.groovy.control.SourceUnit;
import java.lang.annotation.Annotation;
import java.util.ArrayList;
-import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.HashSet;
@@ -249,7 +248,7 @@ public class TupleConstructorASTTransformation extends AbstractASTTransformation
if (includes != null) {
Comparator<Parameter> includeComparator = (p1, p2) -> Integer.compare(includes.indexOf(p1.getName()), includes.indexOf(p2.getName()));
- Collections.sort(params, includeComparator);
+ params.sort(includeComparator);
}
boolean hasMapCons = AnnotatedNodeUtils.hasAnnotation(cNode, MapConstructorASTTransformation.MY_TYPE);