FIR structure: FirClassLikeDeclaration is now FirStatement

Done to support (in theory) local type aliases
This commit is contained in:
Mikhail Glukhikh
2019-04-01 11:25:39 +03:00
parent 4213a4c7e2
commit 63d3100122
@@ -5,13 +5,24 @@
package org.jetbrains.kotlin.fir.declarations
import org.jetbrains.kotlin.fir.VisitedSupertype
import org.jetbrains.kotlin.fir.expressions.FirStatement
import org.jetbrains.kotlin.fir.symbols.ConeClassLikeSymbol
import org.jetbrains.kotlin.fir.symbols.ConeClassifierSymbol
import org.jetbrains.kotlin.fir.symbols.impl.FirClassSymbol
import org.jetbrains.kotlin.fir.symbols.impl.FirTypeAliasSymbol
import org.jetbrains.kotlin.fir.visitors.FirVisitor
interface FirClassLikeDeclaration : FirMemberDeclaration {
interface FirClassLikeDeclaration : @VisitedSupertype FirMemberDeclaration, FirStatement {
val symbol: ConeClassLikeSymbol
override fun <R, D> accept(visitor: FirVisitor<R, D>, data: D): R {
return super<FirMemberDeclaration>.accept(visitor, data)
}
override fun <R, D> acceptChildren(visitor: FirVisitor<R, D>, data: D) {
super<FirMemberDeclaration>.acceptChildren(visitor, data)
}
}
fun ConeClassifierSymbol.toFirClassLike(): FirClassLikeDeclaration? =