Introduce FirFile.fileSession, get rid of most FirElement.session usages
This commit is contained in:
@@ -48,9 +48,6 @@ interface FirDeclarationStatus : FirElement {
|
||||
|
||||
val isStatic: Boolean
|
||||
|
||||
override val psi: PsiElement?
|
||||
get() = null
|
||||
|
||||
override fun <R, D> accept(visitor: FirVisitor<R, D>, data: D): R =
|
||||
visitor.visitDeclarationStatus(this, data)
|
||||
}
|
||||
@@ -6,6 +6,7 @@
|
||||
package org.jetbrains.kotlin.fir.declarations
|
||||
|
||||
import org.jetbrains.kotlin.fir.BaseTransformedType
|
||||
import org.jetbrains.kotlin.fir.FirSession
|
||||
import org.jetbrains.kotlin.fir.VisitedSupertype
|
||||
import org.jetbrains.kotlin.fir.expressions.FirAnnotationContainer
|
||||
import org.jetbrains.kotlin.fir.visitors.FirVisitor
|
||||
@@ -13,6 +14,11 @@ import org.jetbrains.kotlin.name.FqName
|
||||
|
||||
@BaseTransformedType
|
||||
interface FirFile : @VisitedSupertype FirPackageFragment, FirDeclaration, FirAnnotationContainer {
|
||||
|
||||
@Suppress("DEPRECATION")
|
||||
val fileSession: FirSession
|
||||
get() = session
|
||||
|
||||
val name: String
|
||||
|
||||
val packageFqName: FqName
|
||||
|
||||
+3
-2
@@ -7,15 +7,16 @@ package org.jetbrains.kotlin.fir.declarations.impl
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.fir.FirAbstractElement
|
||||
import org.jetbrains.kotlin.fir.FirSession
|
||||
import org.jetbrains.kotlin.fir.declarations.FirDeclarationStatus
|
||||
import org.jetbrains.kotlin.fir.declarations.impl.FirDeclarationStatusImpl.Modifier.*
|
||||
|
||||
open class FirDeclarationStatusImpl(
|
||||
final override val session: FirSession,
|
||||
session: FirSession,
|
||||
override val visibility: Visibility,
|
||||
override val modality: Modality?
|
||||
) : FirDeclarationStatus {
|
||||
) : FirAbstractElement(session, null), FirDeclarationStatus {
|
||||
protected var flags: Int = 0
|
||||
|
||||
private operator fun get(modifier: Modifier): Boolean = (flags and modifier.mask) != 0
|
||||
|
||||
+4
-7
@@ -8,24 +8,21 @@ package org.jetbrains.kotlin.fir.declarations.impl
|
||||
import com.intellij.psi.PsiElement
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.fir.FirElement
|
||||
import org.jetbrains.kotlin.fir.FirSession
|
||||
import org.jetbrains.kotlin.fir.*
|
||||
import org.jetbrains.kotlin.fir.declarations.FirPropertyAccessor
|
||||
import org.jetbrains.kotlin.fir.declarations.FirValueParameter
|
||||
import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall
|
||||
import org.jetbrains.kotlin.fir.expressions.FirBlock
|
||||
import org.jetbrains.kotlin.fir.transformInplace
|
||||
import org.jetbrains.kotlin.fir.transformSingle
|
||||
import org.jetbrains.kotlin.fir.types.FirTypeRef
|
||||
import org.jetbrains.kotlin.fir.types.impl.FirImplicitUnitTypeRef
|
||||
import org.jetbrains.kotlin.fir.visitors.FirTransformer
|
||||
|
||||
abstract class FirDefaultPropertyAccessor(
|
||||
final override val session: FirSession,
|
||||
final override val psi: PsiElement?,
|
||||
session: FirSession,
|
||||
psi: PsiElement?,
|
||||
final override val isGetter: Boolean,
|
||||
visibility: Visibility
|
||||
) : FirPropertyAccessor {
|
||||
) : FirAbstractElement(session, psi), FirPropertyAccessor {
|
||||
override var status = FirDeclarationStatusImpl(
|
||||
session, visibility, Modality.FINAL
|
||||
)
|
||||
|
||||
+3
-8
@@ -5,7 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.fir.declarations.impl
|
||||
|
||||
import com.intellij.psi.PsiElement
|
||||
import org.jetbrains.kotlin.fir.FirAbstractElement
|
||||
import org.jetbrains.kotlin.fir.FirSession
|
||||
import org.jetbrains.kotlin.fir.declarations.FirImport
|
||||
import org.jetbrains.kotlin.fir.declarations.FirResolvedImport
|
||||
@@ -14,9 +14,10 @@ import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
|
||||
class FirResolvedImportImpl(
|
||||
session: FirSession,
|
||||
val delegate: FirImport,
|
||||
override val resolvedFqName: ClassId
|
||||
) : FirResolvedImport, FirImport {
|
||||
) : FirAbstractElement(session, delegate.psi), FirResolvedImport, FirImport {
|
||||
override val packageFqName: FqName
|
||||
get() = resolvedFqName.packageFqName
|
||||
|
||||
@@ -31,10 +32,4 @@ class FirResolvedImportImpl(
|
||||
|
||||
override val isAllUnder: Boolean
|
||||
get() = delegate.isAllUnder
|
||||
|
||||
override val psi: PsiElement?
|
||||
get() = delegate.psi
|
||||
|
||||
override val session: FirSession
|
||||
get() = delegate.session
|
||||
}
|
||||
+3
-8
@@ -5,7 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.fir.declarations.impl
|
||||
|
||||
import com.intellij.psi.PsiElement
|
||||
import org.jetbrains.kotlin.fir.FirAbstractElement
|
||||
import org.jetbrains.kotlin.fir.FirSession
|
||||
import org.jetbrains.kotlin.fir.declarations.FirImport
|
||||
import org.jetbrains.kotlin.fir.declarations.FirResolvedImport
|
||||
@@ -14,9 +14,10 @@ import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
|
||||
class FirResolvedPackageStarImport(
|
||||
session: FirSession,
|
||||
val delegate: FirImport,
|
||||
override val packageFqName: FqName
|
||||
) : FirResolvedImport, FirImport {
|
||||
) : FirAbstractElement(session, delegate.psi), FirResolvedImport, FirImport {
|
||||
override val relativeClassName: FqName?
|
||||
get() = null
|
||||
|
||||
@@ -31,10 +32,4 @@ class FirResolvedPackageStarImport(
|
||||
|
||||
override val isAllUnder: Boolean
|
||||
get() = delegate.isAllUnder
|
||||
|
||||
override val psi: PsiElement?
|
||||
get() = delegate.psi
|
||||
|
||||
override val session: FirSession
|
||||
get() = delegate.session
|
||||
}
|
||||
+3
-1
@@ -7,6 +7,7 @@ package org.jetbrains.kotlin.fir.types.impl
|
||||
|
||||
import org.jetbrains.kotlin.fir.FirAbstractElement
|
||||
import org.jetbrains.kotlin.fir.FirElement
|
||||
import org.jetbrains.kotlin.fir.FirSession
|
||||
import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall
|
||||
import org.jetbrains.kotlin.fir.expressions.FirExpression
|
||||
import org.jetbrains.kotlin.fir.transformSingle
|
||||
@@ -15,9 +16,10 @@ import org.jetbrains.kotlin.fir.types.FirTypeRef
|
||||
import org.jetbrains.kotlin.fir.visitors.FirTransformer
|
||||
|
||||
class FirDelegatedTypeRefImpl(
|
||||
session: FirSession,
|
||||
override var typeRef: FirTypeRef,
|
||||
override var delegate: FirExpression?
|
||||
) : FirAbstractElement(typeRef.session, typeRef.psi), FirDelegatedTypeRef {
|
||||
) : FirAbstractElement(session, typeRef.psi), FirDelegatedTypeRef {
|
||||
override val annotations: List<FirAnnotationCall>
|
||||
get() = typeRef.annotations
|
||||
|
||||
|
||||
Reference in New Issue
Block a user