mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-01-08 15:09:39 +07:00
[java-dfa] Type annotations for stream collectors; now, special processing of non-null collections is unnecessary
Part of IDEA-231901 Support TYPE_USE in external annotations GitOrigin-RevId: 34e116eddf5dbc90468311e5fd2d0c30e600fc1a
This commit is contained in:
committed by
intellij-monorepo-bot
parent
b50767f679
commit
ffd5d01482
@@ -201,11 +201,8 @@ public class StreamChainInliner implements CallInliner {
|
||||
}
|
||||
|
||||
static class UnknownTerminalStep extends Step {
|
||||
private final boolean myNotNullResult;
|
||||
|
||||
UnknownTerminalStep(PsiMethodCallExpression call, boolean notNullResult) {
|
||||
UnknownTerminalStep(PsiMethodCallExpression call) {
|
||||
super(call, null, null);
|
||||
myNotNullResult = notNullResult;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -223,12 +220,6 @@ public class StreamChainInliner implements CallInliner {
|
||||
// Stream variable is on stack
|
||||
builder.pop().flushFields();
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
Nullability getNullability() {
|
||||
return myNotNullResult ? Nullability.NOT_NULL : super.getNullability();
|
||||
}
|
||||
}
|
||||
|
||||
abstract static class TerminalStep extends Step {
|
||||
@@ -1037,7 +1028,7 @@ public class StreamChainInliner implements CallInliner {
|
||||
|
||||
private static Step createTerminalStep(PsiMethodCallExpression call) {
|
||||
Step step = TERMINAL_STEP_MAPPER.mapFirst(call);
|
||||
return step == null ? new UnknownTerminalStep(call, false) : step;
|
||||
return step == null ? new UnknownTerminalStep(call) : step;
|
||||
}
|
||||
|
||||
private static Step createTerminalFromCollector(PsiMethodCallExpression call) {
|
||||
@@ -1072,7 +1063,7 @@ public class StreamChainInliner implements CallInliner {
|
||||
}
|
||||
}
|
||||
|
||||
return new UnknownTerminalStep(call, NOT_NULL_COLLECTORS.test(collectorCall));
|
||||
return new UnknownTerminalStep(call);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -189,6 +189,7 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.lang.Double> averagingDouble(java.util.function.ToDoubleFunction<? super T>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.lang.Double> averagingDouble(java.util.function.ToDoubleFunction<? super T>) 0'>
|
||||
@@ -197,6 +198,7 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.lang.Double> averagingInt(java.util.function.ToIntFunction<? super T>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.lang.Double> averagingInt(java.util.function.ToIntFunction<? super T>) 0'>
|
||||
@@ -205,6 +207,7 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.lang.Double> averagingLong(java.util.function.ToLongFunction<? super T>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.lang.Double> averagingLong(java.util.function.ToLongFunction<? super T>) 0'>
|
||||
@@ -213,6 +216,7 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.lang.Double> summingDouble(java.util.function.ToDoubleFunction<? super T>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.lang.Double> summingDouble(java.util.function.ToDoubleFunction<? super T>) 0'>
|
||||
@@ -221,6 +225,7 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.lang.Integer> summingInt(java.util.function.ToIntFunction<? super T>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.lang.Integer> summingInt(java.util.function.ToIntFunction<? super T>) 0'>
|
||||
@@ -228,10 +233,12 @@
|
||||
</item>
|
||||
<item name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.lang.Long> counting()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.lang.Long> summingLong(java.util.function.ToLongFunction<? super T>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.lang.Long> summingLong(java.util.function.ToLongFunction<? super T>) 0'>
|
||||
@@ -240,6 +247,7 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.DoubleSummaryStatistics> summarizingDouble(java.util.function.ToDoubleFunction<? super T>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.DoubleSummaryStatistics> summarizingDouble(java.util.function.ToDoubleFunction<? super T>) 0'>
|
||||
@@ -248,6 +256,7 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.IntSummaryStatistics> summarizingInt(java.util.function.ToIntFunction<? super T>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.IntSummaryStatistics> summarizingInt(java.util.function.ToIntFunction<? super T>) 0'>
|
||||
@@ -255,13 +264,18 @@
|
||||
</item>
|
||||
<item name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.List<T>> toList()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.List<T>> toUnmodifiableList()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
<annotation name='org.jetbrains.annotations.Unmodifiable' typePath="2;"/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;0;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.LongSummaryStatistics> summarizingLong(java.util.function.ToLongFunction<? super T>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.LongSummaryStatistics> summarizingLong(java.util.function.ToLongFunction<? super T>) 0'>
|
||||
@@ -270,6 +284,7 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Map<K,D>> groupingBy(java.util.function.Function<? super T,? extends K>, java.util.stream.Collector<? super T,A,D>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Map<K,D>> groupingBy(java.util.function.Function<? super T,? extends K>, java.util.stream.Collector<? super T,A,D>) 0'>
|
||||
@@ -282,6 +297,8 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Map<K,U>> toMap(java.util.function.Function<? super T,? extends K>, java.util.function.Function<? super T,? extends U>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;1;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Map<K,U>> toMap(java.util.function.Function<? super T,? extends K>, java.util.function.Function<? super T,? extends U>) 0'>
|
||||
@@ -294,6 +311,8 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Map<K,U>> toMap(java.util.function.Function<? super T,? extends K>, java.util.function.Function<? super T,? extends U>, java.util.function.BinaryOperator<U>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;1;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Map<K,U>> toMap(java.util.function.Function<? super T,? extends K>, java.util.function.Function<? super T,? extends U>, java.util.function.BinaryOperator<U>) 0'>
|
||||
@@ -310,6 +329,10 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Map<K,U>> toUnmodifiableMap(java.util.function.Function<? super T,? extends K>, java.util.function.Function<? super T,? extends U>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
<annotation name='org.jetbrains.annotations.Unmodifiable' typePath="2;"/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;0;"/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;1;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Map<K,U>> toUnmodifiableMap(java.util.function.Function<? super T,? extends K>, java.util.function.Function<? super T,? extends U>) 0'>
|
||||
@@ -322,6 +345,10 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Map<K,U>> toUnmodifiableMap(java.util.function.Function<? super T,? extends K>, java.util.function.Function<? super T,? extends U>, java.util.function.BinaryOperator<U>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
<annotation name='org.jetbrains.annotations.Unmodifiable' typePath="2;"/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;0;"/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;1;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Map<K,U>> toUnmodifiableMap(java.util.function.Function<? super T,? extends K>, java.util.function.Function<? super T,? extends U>, java.util.function.BinaryOperator<U>) 0'>
|
||||
@@ -338,6 +365,7 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Map<K,java.util.List<T>>> groupingBy(java.util.function.Function<? super T,? extends K>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Map<K,java.util.List<T>>> groupingBy(java.util.function.Function<? super T,? extends K>) 0'>
|
||||
@@ -346,6 +374,7 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Map<java.lang.Boolean,D>> partitioningBy(java.util.function.Predicate<? super T>, java.util.stream.Collector<? super T,A,D>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Map<java.lang.Boolean,D>> partitioningBy(java.util.function.Predicate<? super T>, java.util.stream.Collector<? super T,A,D>) 0'>
|
||||
@@ -358,6 +387,7 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Map<java.lang.Boolean,java.util.List<T>>> partitioningBy(java.util.function.Predicate<? super T>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Map<java.lang.Boolean,java.util.List<T>>> partitioningBy(java.util.function.Predicate<? super T>) 0'>
|
||||
@@ -366,6 +396,7 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Optional<T>> maxBy(java.util.Comparator<? super T>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Optional<T>> maxBy(java.util.Comparator<? super T>) 0'>
|
||||
@@ -374,6 +405,7 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Optional<T>> minBy(java.util.Comparator<? super T>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Optional<T>> minBy(java.util.Comparator<? super T>) 0'>
|
||||
@@ -389,13 +421,18 @@
|
||||
</item>
|
||||
<item name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Set<T>> toSet()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.Set<T>> toUnmodifiableSet()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
<annotation name='org.jetbrains.annotations.Unmodifiable' typePath="2;"/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;0;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.concurrent.ConcurrentMap<K,D>> groupingByConcurrent(java.util.function.Function<? super T,? extends K>, java.util.stream.Collector<? super T,A,D>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.concurrent.ConcurrentMap<K,D>> groupingByConcurrent(java.util.function.Function<? super T,? extends K>, java.util.stream.Collector<? super T,A,D>) 0'>
|
||||
@@ -408,6 +445,7 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.concurrent.ConcurrentMap<K,U>> toConcurrentMap(java.util.function.Function<? super T,? extends K>, java.util.function.Function<? super T,? extends U>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.concurrent.ConcurrentMap<K,U>> toConcurrentMap(java.util.function.Function<? super T,? extends K>, java.util.function.Function<? super T,? extends U>) 0'>
|
||||
@@ -420,6 +458,7 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.concurrent.ConcurrentMap<K,U>> toConcurrentMap(java.util.function.Function<? super T,? extends K>, java.util.function.Function<? super T,? extends U>, java.util.function.BinaryOperator<U>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.concurrent.ConcurrentMap<K,U>> toConcurrentMap(java.util.function.Function<? super T,? extends K>, java.util.function.Function<? super T,? extends U>, java.util.function.BinaryOperator<U>) 0'>
|
||||
@@ -436,6 +475,7 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.concurrent.ConcurrentMap<K,java.util.List<T>>> groupingByConcurrent(java.util.function.Function<? super T,? extends K>)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<T,?,java.util.concurrent.ConcurrentMap<K,java.util.List<T>>> groupingByConcurrent(java.util.function.Function<? super T,? extends K>) 0'>
|
||||
@@ -455,10 +495,12 @@
|
||||
</item>
|
||||
<item name='java.util.stream.Collectors java.util.stream.Collector<java.lang.CharSequence,?,java.lang.String> joining()'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<java.lang.CharSequence,?,java.lang.String> joining(java.lang.CharSequence)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<java.lang.CharSequence,?,java.lang.String> joining(java.lang.CharSequence) 0'>
|
||||
@@ -467,6 +509,7 @@
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<java.lang.CharSequence,?,java.lang.String> joining(java.lang.CharSequence, java.lang.CharSequence, java.lang.CharSequence)'>
|
||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||
<annotation name='org.jetbrains.annotations.NotNull' typePath="2;"/>
|
||||
</item>
|
||||
<item
|
||||
name='java.util.stream.Collectors java.util.stream.Collector<java.lang.CharSequence,?,java.lang.String> joining(java.lang.CharSequence, java.lang.CharSequence, java.lang.CharSequence) 0'>
|
||||
|
||||
Reference in New Issue
Block a user