Skip to content

KaScopeWithKind

A wrapper around a KaScope which is additionally positioned in the scope tower of a KaScopeContext, represented by KaScopeKind.

Inheritors

Properties

kind

abstract val kind: KaScopeKind

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

scope

abstract val scope: KaScope

The KaScope underlying this KaScopeWithKind.

token

abstract val token: KaLifetimeToken

The KaLifetimeToken which determines the lifetime of the lifetime owner.

Functions

assertIsValidAndAccessible

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.