org.jetbrains.kotlin.analysis.api.lifetime.KtLifetimeOwner.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of kotlin-annotation-processing Show documentation
Show all versions of kotlin-annotation-processing Show documentation
Annotation Processor for Kotlin
/*
* Copyright 2010-2022 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/
package org.jetbrains.kotlin.analysis.api.lifetime
public interface KtLifetimeOwner {
public val token: KtLifetimeToken
}
public fun KtLifetimeOwner.isValid(): Boolean = token.isValid()
@Suppress("NOTHING_TO_INLINE")
public inline fun KtLifetimeOwner.assertIsValidAndAccessible() {
token.assertIsValidAndAccessible()
}
public inline fun KtLifetimeOwner.withValidityAssertion(action: () -> R): R {
assertIsValidAndAccessible()
return action()
}