[analysis api] rename ValidityToken -> KtLifetimeToken
This commit is contained in:
+8
-9
@@ -15,32 +15,31 @@ import org.jetbrains.kotlin.analysis.providers.createProjectWideOutOfBlockModifi
|
||||
import org.jetbrains.kotlin.analysis.api.InvalidWayOfUsingAnalysisSession
|
||||
import org.jetbrains.kotlin.analysis.api.KtAnalysisSession
|
||||
import org.jetbrains.kotlin.analysis.api.KtAnalysisSessionProvider
|
||||
import org.jetbrains.kotlin.analysis.api.isValid
|
||||
import org.jetbrains.kotlin.analysis.api.symbols.KtSymbol
|
||||
import org.jetbrains.kotlin.analysis.api.tokens.ValidityToken
|
||||
import org.jetbrains.kotlin.analysis.api.tokens.ValidityTokenFactory
|
||||
import org.jetbrains.kotlin.analysis.api.tokens.KtLifetimeToken
|
||||
import org.jetbrains.kotlin.analysis.api.tokens.KtLifetimeTokenFactory
|
||||
import org.jetbrains.kotlin.psi.KtElement
|
||||
import java.util.concurrent.ConcurrentHashMap
|
||||
import kotlin.reflect.KClass
|
||||
|
||||
@OptIn(InvalidWayOfUsingAnalysisSession::class)
|
||||
abstract class CachingKtAnalysisSessionProvider<State : Any>(private val project: Project) : KtAnalysisSessionProvider() {
|
||||
private val cache = KtAnalysisSessionCache<Pair<State, KClass<out ValidityToken>>>(project)
|
||||
private val cache = KtAnalysisSessionCache<Pair<State, KClass<out KtLifetimeToken>>>(project)
|
||||
|
||||
protected abstract fun getFirResolveSession(contextElement: KtElement): State
|
||||
protected abstract fun getFirResolveSession(contextSymbol: KtSymbol): State
|
||||
|
||||
protected abstract fun createAnalysisSession(
|
||||
firResolveSession: State,
|
||||
validityToken: ValidityToken,
|
||||
token: KtLifetimeToken,
|
||||
): KtAnalysisSession
|
||||
|
||||
@InvalidWayOfUsingAnalysisSession
|
||||
final override fun getAnalysisSession(contextElement: KtElement, factory: ValidityTokenFactory): KtAnalysisSession {
|
||||
final override fun getAnalysisSession(contextElement: KtElement, factory: KtLifetimeTokenFactory): KtAnalysisSession {
|
||||
val firResolveSession = getFirResolveSession(contextElement)
|
||||
return cache.getAnalysisSession(firResolveSession to factory.identifier) {
|
||||
val validityToken = factory.create(project)
|
||||
createAnalysisSession(firResolveSession, validityToken)
|
||||
val token = factory.create(project)
|
||||
createAnalysisSession(firResolveSession, token)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -51,7 +50,7 @@ abstract class CachingKtAnalysisSessionProvider<State : Any>(private val project
|
||||
?: createAnalysisSession(firResolveSession, contextSymbol.token)
|
||||
}
|
||||
|
||||
private fun getCachedAnalysisSession(firResolveSession: State, token: ValidityToken): KtAnalysisSession? {
|
||||
private fun getCachedAnalysisSession(firResolveSession: State, token: KtLifetimeToken): KtAnalysisSession? {
|
||||
return cache.getCachedAnalysisSession(firResolveSession to token::class)
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -7,11 +7,11 @@ package org.jetbrains.kotlin.analysis.api.impl.base.annotations
|
||||
|
||||
import org.jetbrains.kotlin.analysis.api.annotations.KtAnnotationApplication
|
||||
import org.jetbrains.kotlin.analysis.api.annotations.KtAnnotationsList
|
||||
import org.jetbrains.kotlin.analysis.api.tokens.ValidityToken
|
||||
import org.jetbrains.kotlin.analysis.api.tokens.KtLifetimeToken
|
||||
import org.jetbrains.kotlin.analysis.api.withValidityAssertion
|
||||
import org.jetbrains.kotlin.name.ClassId
|
||||
|
||||
class KtEmptyAnnotationsList(override val token: ValidityToken) : KtAnnotationsList() {
|
||||
class KtEmptyAnnotationsList(override val token: KtLifetimeToken) : KtAnnotationsList() {
|
||||
override val annotations: List<KtAnnotationApplication>
|
||||
get() = withValidityAssertion { emptyList() }
|
||||
|
||||
|
||||
+2
-2
@@ -9,14 +9,14 @@ import com.intellij.psi.PsiElement
|
||||
import com.intellij.psi.search.GlobalSearchScope
|
||||
import org.jetbrains.kotlin.analysis.api.KtAnalysisSession
|
||||
import org.jetbrains.kotlin.analysis.api.components.KtAnalysisScopeProvider
|
||||
import org.jetbrains.kotlin.analysis.api.tokens.ValidityToken
|
||||
import org.jetbrains.kotlin.analysis.api.tokens.KtLifetimeToken
|
||||
import org.jetbrains.kotlin.analysis.project.structure.KtModule
|
||||
import org.jetbrains.kotlin.analysis.project.structure.allDirectDependencies
|
||||
import org.jetbrains.kotlin.psi.psiUtil.contains
|
||||
|
||||
class KtAnalysisScopeProviderImpl(
|
||||
override val analysisSession: KtAnalysisSession,
|
||||
override val token: ValidityToken
|
||||
override val token: KtLifetimeToken
|
||||
) : KtAnalysisScopeProvider() {
|
||||
|
||||
private val allModules = analysisSession.useSiteModule.collectAllDependenciesWithSelf()
|
||||
|
||||
+2
-2
@@ -8,13 +8,13 @@ package org.jetbrains.kotlin.analysis.api.impl.base.scopes
|
||||
import org.jetbrains.kotlin.analysis.api.scopes.KtScope
|
||||
import org.jetbrains.kotlin.analysis.api.scopes.KtScopeNameFilter
|
||||
import org.jetbrains.kotlin.analysis.api.symbols.*
|
||||
import org.jetbrains.kotlin.analysis.api.tokens.ValidityToken
|
||||
import org.jetbrains.kotlin.analysis.api.tokens.KtLifetimeToken
|
||||
import org.jetbrains.kotlin.analysis.api.withValidityAssertion
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
|
||||
class KtCompositeScope(
|
||||
private val subScopes: List<KtScope>,
|
||||
override val token: ValidityToken
|
||||
override val token: KtLifetimeToken
|
||||
) : KtScope {
|
||||
override fun getAllPossibleNames(): Set<Name> = withValidityAssertion {
|
||||
buildSet {
|
||||
|
||||
+2
-2
@@ -8,11 +8,11 @@ package org.jetbrains.kotlin.analysis.api.impl.base.scopes
|
||||
import org.jetbrains.kotlin.analysis.api.scopes.KtScope
|
||||
import org.jetbrains.kotlin.analysis.api.scopes.KtScopeNameFilter
|
||||
import org.jetbrains.kotlin.analysis.api.symbols.*
|
||||
import org.jetbrains.kotlin.analysis.api.tokens.ValidityToken
|
||||
import org.jetbrains.kotlin.analysis.api.tokens.KtLifetimeToken
|
||||
import org.jetbrains.kotlin.analysis.api.withValidityAssertion
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
|
||||
class KtEmptyScope(override val token: ValidityToken) : KtScope {
|
||||
class KtEmptyScope(override val token: KtLifetimeToken) : KtScope {
|
||||
override fun getAllPossibleNames(): Set<Name> = withValidityAssertion {
|
||||
return emptySet()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user