From 33f4e272543d634f4102c8fdfc2fdd9752ee220a Mon Sep 17 00:00:00 2001 From: XenoAmess Date: Mon, 24 Aug 2020 16:58:10 +0800 Subject: [PATCH 1/2] addAll issues --- .../net/sourceforge/pmd/lang/java/qname/ImmutableList.java | 5 +---- .../lang/java/rule/bestpractices/JUnitUseExpectedRule.java | 3 +-- .../java/rule/bestpractices/UnusedPrivateFieldRule.java | 3 +-- .../pmd/lang/java/rule/design/SingularFieldRule.java | 3 +-- .../pmd/typeresolution/testdata/MethodFirstPhase.java | 3 +-- .../net/sourceforge/pmd/lang/jsp/ast/JspDocStyleTest.java | 6 ++---- 6 files changed, 7 insertions(+), 16 deletions(-) diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/qname/ImmutableList.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/qname/ImmutableList.java index 57335743c2..3d81fd23b1 100644 --- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/qname/ImmutableList.java +++ b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/qname/ImmutableList.java @@ -563,10 +563,7 @@ interface ImmutableList extends List { @Override public List toList() { - List result = new ArrayList<>(size()); - for (E item : this) { - result.add(item); - } + List result = new ArrayList<>(this); return result; } diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/bestpractices/JUnitUseExpectedRule.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/bestpractices/JUnitUseExpectedRule.java index e02b4069b2..c1fa59109d 100644 --- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/bestpractices/JUnitUseExpectedRule.java +++ b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/bestpractices/JUnitUseExpectedRule.java @@ -58,8 +58,7 @@ public class JUnitUseExpectedRule extends AbstractJUnitRule { if (child instanceof ASTMethodDeclaration) { boolean isJUnitMethod = isJUnitMethod((ASTMethodDeclaration) child, data); if (inAnnotation || isJUnitMethod) { - List found = new ArrayList<>(); - found.addAll((List) visit((ASTMethodDeclaration) child, data)); + List found = new ArrayList<>((List) visit((ASTMethodDeclaration) child, data)); for (Node name : found) { addViolation(data, name); } diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/bestpractices/UnusedPrivateFieldRule.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/bestpractices/UnusedPrivateFieldRule.java index 0fed0d1aa2..6cc74ef41f 100644 --- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/bestpractices/UnusedPrivateFieldRule.java +++ b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/bestpractices/UnusedPrivateFieldRule.java @@ -32,8 +32,7 @@ public class UnusedPrivateFieldRule extends AbstractLombokAwareRule { @Override protected Collection defaultSuppressionAnnotations() { - Collection defaultValues = new ArrayList<>(); - defaultValues.addAll(super.defaultSuppressionAnnotations()); + Collection defaultValues = new ArrayList<>(super.defaultSuppressionAnnotations()); defaultValues.add("java.lang.Deprecated"); defaultValues.add("javafx.fxml.FXML"); defaultValues.add("lombok.experimental.Delegate"); diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/SingularFieldRule.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/SingularFieldRule.java index 802edaa79b..ce1777ce48 100644 --- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/SingularFieldRule.java +++ b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/design/SingularFieldRule.java @@ -61,8 +61,7 @@ public class SingularFieldRule extends AbstractLombokAwareRule { @Override protected Collection defaultSuppressionAnnotations() { - Collection defaultValues = new ArrayList<>(); - defaultValues.addAll(super.defaultSuppressionAnnotations()); + Collection defaultValues = new ArrayList<>(super.defaultSuppressionAnnotations()); defaultValues.add("lombok.experimental.Delegate"); defaultValues.add("lombok.EqualsAndHashCode"); return defaultValues; diff --git a/pmd-java/src/test/java/net/sourceforge/pmd/typeresolution/testdata/MethodFirstPhase.java b/pmd-java/src/test/java/net/sourceforge/pmd/typeresolution/testdata/MethodFirstPhase.java index 6073c907b7..f889b1a659 100644 --- a/pmd-java/src/test/java/net/sourceforge/pmd/typeresolution/testdata/MethodFirstPhase.java +++ b/pmd-java/src/test/java/net/sourceforge/pmd/typeresolution/testdata/MethodFirstPhase.java @@ -19,8 +19,7 @@ public class MethodFirstPhase { Exception b = vararg((Number) null); - Set set = new HashSet<>(); - set.addAll(Arrays.asList("a", "b")); // TODO: return type of method call Arrays.asList is missing + Set set = new HashSet<>(Arrays.asList("a", "b")); // TODO: return type of method call Arrays.asList is missing List myList = new ArrayList<>(); Collections.sort(myList); // TODO: generic type variables on methods diff --git a/pmd-jsp/src/test/java/net/sourceforge/pmd/lang/jsp/ast/JspDocStyleTest.java b/pmd-jsp/src/test/java/net/sourceforge/pmd/lang/jsp/ast/JspDocStyleTest.java index 26a54a3f8b..52023dfe40 100644 --- a/pmd-jsp/src/test/java/net/sourceforge/pmd/lang/jsp/ast/JspDocStyleTest.java +++ b/pmd-jsp/src/test/java/net/sourceforge/pmd/lang/jsp/ast/JspDocStyleTest.java @@ -784,8 +784,7 @@ public class JspDocStyleTest extends AbstractJspNodesTst { * @return */ private List sortNodesByName(Collection elements) { - List list = new ArrayList<>(); - list.addAll(elements); + List list = new ArrayList<>(elements); Collections.sort(list, new Comparator() { public int compare(ASTElement o1, ASTElement o2) { if (o1.getName() == null) { @@ -812,8 +811,7 @@ public class JspDocStyleTest extends AbstractJspNodesTst { * @return */ private List sortByImage(Collection elements) { - List list = new ArrayList<>(); - list.addAll(elements); + List list = new ArrayList<>(elements); Collections.sort(list, new Comparator() { public int compare(Node o1, Node o2) { if (o1.getImage() == null) { From 31ee6bfca12e4db60524d35a0a2c2c9768ca957c Mon Sep 17 00:00:00 2001 From: XenoAmess Date: Mon, 24 Aug 2020 19:29:44 +0800 Subject: [PATCH 2/2] fix checkstyles --- .../net/sourceforge/pmd/lang/java/qname/ImmutableList.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/qname/ImmutableList.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/qname/ImmutableList.java index 3d81fd23b1..726dbceac9 100644 --- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/qname/ImmutableList.java +++ b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/qname/ImmutableList.java @@ -563,8 +563,7 @@ interface ImmutableList extends List { @Override public List toList() { - List result = new ArrayList<>(this); - return result; + return new ArrayList<>(this); }