Skip to content

KaScopeWithKindImpl

class KaScopeWithKindImpl(backingScope: KaScope, backingKind: KaScopeKind) : KaScopeWithKind

Constructors

KaScopeWithKindImpl

constructor(backingScope: KaScope, backingKind: KaScopeKind)

Properties

kind

open override val kind: KaScopeKind

The kind of the scope derived from its position in the scope tower.

scope

open override val scope: KaScope

The KaScope underlying this KaScopeWithKind.

token

open override val token: KaLifetimeToken

The KaLifetimeToken which determines the lifetime of the lifetime owner.

Functions

assertIsValidAndAccessible

equals

open operator override fun equals(other: Any?): Boolean

hashCode

open override fun hashCode(): Int

isValid

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.