Prevent ExplicitEnumOrdering from throwing an NPE (#998)

This commit is contained in:
Stephan Schroevers
2024-01-28 13:25:04 +01:00
committed by GitHub
parent d4be298022
commit e65e2ce730
2 changed files with 3 additions and 1 deletions

View File

@@ -72,7 +72,7 @@ public final class ExplicitEnumOrdering extends BugChecker implements MethodInvo
List<? extends ExpressionTree> expressions) {
return expressions.stream()
.map(ASTHelpers::getSymbol)
.filter(Symbol::isEnum)
.filter(s -> s != null && s.isEnum())
.collect(
collectingAndThen(
toImmutableSetMultimap(Symbol::asType, Symbol::toString),

View File

@@ -75,6 +75,8 @@ final class ExplicitEnumOrderingTest {
" Ordering.explicit(IsoEra.BCE, SOURCE, RetentionPolicy.CLASS);",
" // BUG: Diagnostic contains: RetentionPolicy.SOURCE, IsoEra.BCE",
" Ordering.explicit(CLASS, RUNTIME, CE);",
"",
" Ordering.explicit(BCE, null, CE);",
" }",
"}")
.doTest();