KaResolveExtensionInfoProvider¶
@SubclassOptInRequired(markerClass = [KaSessionComponentImplementationDetail::class])
interface KaResolveExtensionInfoProvider : KaSessionComponent
Inheritors¶
Properties¶
isFromResolveExtension¶
abstract val KtElement.isFromResolveExtension: Boolean
isResolveExtensionFile¶
abstract val VirtualFile.isResolveExtensionFile: Boolean
resolveExtensionNavigationElements¶
abstract val KtElement.resolveExtensionNavigationElements: Collection<PsiElement>
A list of PsiElements which are used as navigation targets in place of this KtElement provided by a KaResolveExtension.
These PsiElements will typically be the source item(s) that caused the given KtElement to be generated by the KaResolveExtension. For example, for a KtElement generated by a resource compiler, the navigation elements will typically be the PsiElements of the resource items in the corresponding resource file.
See also
resolveExtensionScopeWithTopLevelDeclarations¶
abstract val resolveExtensionScopeWithTopLevelDeclarations: KaScope
The KaScope containing top-level callable declarations generated by KaResolveExtensions.
See also
token¶
abstract val token: KaLifetimeToken
The KaLifetimeToken which determines the lifetime of the lifetime owner.
Functions¶
assertIsValidAndAccessible¶
inline fun KaLifetimeOwner.assertIsValidAndAccessible()
isValid¶
fun KaLifetimeOwner.isValid(): Boolean
Whether the lifetime owner is still valid, i.e. we are still in the scope of the lifetime owner's regular lifetime.
withValidityAssertion¶
inline fun <R> KaLifetimeOwner.withValidityAssertion(action: () -> R): R
Executes action only if the KaLifetimeOwner is still valid and accessible. Otherwise, throws a validity exception based on the concrete violation.