Skip to content

Commit 9e0fbf7

Browse files
cushonError Prone Team
authored and
Error Prone Team
committed
Prepare for a change to the return type of JCCompilationUnit#getImports in an upcoming JDK version
PiperOrigin-RevId: 636582473
1 parent 13be411 commit 9e0fbf7

File tree

2 files changed

+8
-12
lines changed

2 files changed

+8
-12
lines changed

check_api/src/main/java/com/google/errorprone/apply/ImportStatements.java

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -17,14 +17,13 @@
1717
package com.google.errorprone.apply;
1818

1919
import com.google.common.base.CharMatcher;
20-
import com.google.common.base.Function;
2120
import com.google.common.base.Preconditions;
2221
import com.google.common.collect.ImmutableSet;
2322
import com.google.common.collect.Lists;
2423
import com.sun.tools.javac.tree.EndPosTable;
24+
import com.sun.tools.javac.tree.JCTree;
2525
import com.sun.tools.javac.tree.JCTree.JCCompilationUnit;
2626
import com.sun.tools.javac.tree.JCTree.JCExpression;
27-
import com.sun.tools.javac.tree.JCTree.JCImport;
2827
import java.util.Collection;
2928
import java.util.LinkedHashSet;
3029
import java.util.List;
@@ -64,7 +63,7 @@ public static ImportStatements create(
6463

6564
ImportStatements(
6665
JCExpression packageTree,
67-
List<JCImport> importTrees,
66+
List<? extends JCTree> importTrees,
6867
EndPosTable endPositions,
6968
ImportOrganizer importOrganizer) {
7069

@@ -80,7 +79,7 @@ public static ImportStatements create(
8079
} else {
8180
// process list of imports and find start/end positions
8281
hasExistingImports = true;
83-
for (JCImport importTree : importTrees) {
82+
for (JCTree importTree : importTrees) {
8483
int currStartPos = importTree.getStartPosition();
8584
int currEndPos = importTree.getEndPosition(endPositions);
8685

@@ -99,14 +98,9 @@ public static ImportStatements create(
9998
importStrings.addAll(
10099
Lists.transform(
101100
importTrees,
102-
new Function<JCImport, String>() {
103-
@Override
104-
public String apply(JCImport input) {
105-
String importExpr = input.toString();
106-
return CharMatcher.whitespace()
107-
.or(CharMatcher.is(';'))
108-
.trimTrailingFrom(importExpr);
109-
}
101+
input -> {
102+
String importExpr = input.toString();
103+
return CharMatcher.whitespace().or(CharMatcher.is(';')).trimTrailingFrom(importExpr);
110104
}));
111105

112106
originalImports = ImmutableSet.copyOf(importStrings);

core/src/main/java/com/google/errorprone/refaster/ImportPolicy.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -269,6 +269,8 @@ private static ImmutableSet<String> getAllImports(Inliner inliner, WhichImports
269269
.map(JCCompilationUnit::getImports)
270270
.map(Collection::stream)
271271
.orElse(Stream.of())
272+
.filter(JCImport.class::isInstance)
273+
.map(JCImport.class::cast)
272274
.filter(whichImports::existingImportMatches)
273275
.map(imp -> getQualifiedIdentifier(imp).toString()))
274276
.collect(toImmutableSet());

0 commit comments

Comments
 (0)