Empty¶
@SubclassOptInRequired(markerClass = [KaImplementationDetail::class])
interface Empty : KaSubstitutor
A KaSubstitutor with an empty type mapping. It does not perform any substitution.
Can be constructed using emptySubstitutor.
Properties¶
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.
substitute¶
open fun substitute(type: KaType): KaType
substituteOrNull¶
abstract fun substituteOrNull(type: KaType): KaType?
Substitutes the type parameters in type using the substitutor's type mapping.
Return
The substituted type if there was at least one substitution, or null otherwise.
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.