Files
kotlin-fork/compiler/testData/ir/irText/firProblems/candidateSymbol.fir.kt.txt
T

53 lines
1.1 KiB
Plaintext
Vendored

class Candidate {
constructor(symbol: AbstractFirBasedSymbol<*>) /* primary */ {
super/*Any*/()
/* <init>() */
}
val symbol: AbstractFirBasedSymbol<*>
field = symbol
get
}
abstract class AbstractFirBasedSymbol<E> where E : FirSymbolOwner<E>, E : FirDeclaration {
constructor() /* primary */ {
super/*Any*/()
/* <init>() */
}
lateinit var fir: E
get
set
}
interface FirDeclaration {
}
interface FirSymbolOwner<E> where E : FirSymbolOwner<E>, E : FirDeclaration {
abstract val symbol: AbstractFirBasedSymbol<E>
abstract get
}
interface FirCallableMemberDeclaration<F : FirCallableMemberDeclaration<F>> : FirSymbolOwner<F>, FirDeclaration {
abstract override val symbol: AbstractFirBasedSymbol<F>
abstract override get
}
fun foo(candidate: Candidate) {
val me: FirSymbolOwner<*> = candidate.<get-symbol>().<get-fir>()
when {
when {
me is FirCallableMemberDeclaration<*> -> EQEQ(arg0 = me /*as FirCallableMemberDeclaration<*> */.<get-symbol>(), arg1 = null).not()
else -> false
} -> { // BLOCK
}
}
}