Skip to content

KaScopeImplicitArgumentValue

Represents an implicit argument available in a particular KaScopeContext.

Properties

scopeIndexInTower

abstract val scopeIndexInTower: Int

The index of the scope in the scope tower where the implicit value is declared.

symbol

The corresponding context parameter symbol which can be used as an implicit argument.

token

abstract val token: KaLifetimeToken

The KaLifetimeToken which determines the lifetime of the lifetime owner.

type

abstract val type: KaType

The implicit value type.

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.