FIR. Refactor smart-cast representation in FIR tree

Make smart-casts non-transparent expression without delegation
to underlying FirQualifiedAccessExpression, as children delegation in
fir tree has unclear semantics
Remove two different kinds of tree nodes for smart-casts
This commit is contained in:
Simon Ogorodnik
2022-08-02 00:49:24 +02:00
committed by teamcity
parent bc9db58b3c
commit 513af2dfbc
154 changed files with 9573 additions and 9320 deletions
@@ -0,0 +1,7 @@
fun test(obj: Any): String {
return when {
obj !is Iterable<*> -> "not iterable"
<expr>obj</expr> !is Collection<*> -> "not collection"
else -> "unknown"
}
}