[NI] Fix smart cast for expression with captured input type.
This commit is contained in:
+8
@@ -0,0 +1,8 @@
|
||||
/*
|
||||
Here element has type Captured(*) because of resolution for `iterator()` on this.
|
||||
and where we resolve `destination.add(element)` we approximate element to `Any` with smart cast to `R`.
|
||||
*/
|
||||
inline fun <reified R, C : MutableCollection<in R>> Array<*>.filterIsInstanceTo(destination: C): C {
|
||||
for (element in this) if (element is R) destination.add(<!DEBUG_INFO_SMARTCAST!>element<!>)
|
||||
return destination
|
||||
}
|
||||
Reference in New Issue
Block a user