org.jetbrains.kotlin.analysis.api.permissions¶
Types¶
KaAllowAnalysisFromWriteAction¶
@RequiresOptIn(message = "Analysis should not be allowed to be run from a write action, as otherwise it may cause incorrect behavior and IDE freezes.")
annotation class KaAllowAnalysisFromWriteAction
KaAllowAnalysisOnEdt¶
@RequiresOptIn(message = "Analysis should not be allowed to be run from the EDT, as otherwise it may cause IDE freezes.")
annotation class KaAllowAnalysisOnEdt
KaAnalysisPermissionRegistry¶
@SubclassOptInRequired(markerClass = [KaImplementationDetail::class])
interface KaAnalysisPermissionRegistry
KaAnalysisPermissionRegistry stores settings required by permission functions such as forbidAnalysis, allowAnalysisOnEdt, and allowAnalysisFromWriteAction.
Functions¶
allowAnalysisFromWriteAction¶
inline fun <T> allowAnalysisFromWriteAction(action: () -> T): T
allowAnalysisOnEdt¶
inline fun <T> allowAnalysisOnEdt(action: () -> T): T
forbidAnalysis¶
inline fun <R> forbidAnalysis(description: String, action: () -> R): R