KaCallCandidateInfo¶
sealed interface KaCallCandidateInfo : KaLifetimeOwner
KaCallCandidateInfo represents one of the candidates considered during overload resolution of a call.
In contrast to KaErrorCallInfo.candidateCalls, retrieving a call candidate represented by KaCallCandidateInfo doesn't imply that the call is erroneous or ambiguous. Rather, resolving all call candidates is helpful when analyzing all possible options at the call site.
See also¶
Inheritors¶
Properties¶
candidate¶
isInBestCandidates¶
abstract val isInBestCandidates: Boolean
Whether the candidate is in the final set of candidates considered during the call's resolution. There can be multiple best candidates if the call is ambiguous.
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.