diff --git a/uast/uast-common/src/org/jetbrains/uast/analysis/UastAnalysisPlugin.kt b/uast/uast-common/src/org/jetbrains/uast/analysis/UastAnalysisPlugin.kt index a811acc01d47..63cae8806f47 100644 --- a/uast/uast-common/src/org/jetbrains/uast/analysis/UastAnalysisPlugin.kt +++ b/uast/uast-common/src/org/jetbrains/uast/analysis/UastAnalysisPlugin.kt @@ -5,15 +5,15 @@ import com.intellij.lang.Language import com.intellij.openapi.extensions.ExtensionPointName import org.jetbrains.annotations.ApiStatus import org.jetbrains.uast.UExpression +import kotlin.streams.asSequence @ApiStatus.Experimental interface UastAnalysisPlugin { companion object { - val extensionPointName = ExtensionPointName("org.jetbrains.uast.analysis.uastAnalysisPlugin") - private val extensions by lazy { extensionPointName.extensionList } + private val extensionPointName = ExtensionPointName("org.jetbrains.uast.analysis.uastAnalysisPlugin") @JvmStatic - fun byLanguage(language: Language) = extensions.firstOrNull { it.language == language } + fun byLanguage(language: Language) = extensionPointName.extensions().asSequence().firstOrNull { it.language == language } } val language: Language diff --git a/uast/uast-common/src/org/jetbrains/uast/generate/UastCodeGenerationPlugin.kt b/uast/uast-common/src/org/jetbrains/uast/generate/UastCodeGenerationPlugin.kt index e290395be2b0..9922053b3222 100644 --- a/uast/uast-common/src/org/jetbrains/uast/generate/UastCodeGenerationPlugin.kt +++ b/uast/uast-common/src/org/jetbrains/uast/generate/UastCodeGenerationPlugin.kt @@ -8,15 +8,15 @@ import com.intellij.psi.PsiElement import com.intellij.psi.PsiType import org.jetbrains.annotations.ApiStatus import org.jetbrains.uast.* +import kotlin.streams.asSequence @ApiStatus.Experimental interface UastCodeGenerationPlugin { companion object { - val extensionPointName = ExtensionPointName("org.jetbrains.uast.generate.uastCodeGenerationPlugin") - private val extensions by lazy { extensionPointName.extensionList } + private val extensionPointName = ExtensionPointName("org.jetbrains.uast.generate.uastCodeGenerationPlugin") @JvmStatic - fun byLanguage(language: Language) = extensions.firstOrNull { it.language == language } + fun byLanguage(language: Language) = extensionPointName.extensions().asSequence().firstOrNull { it.language == language } } fun getElementFactory(project: Project): UastElementFactory diff --git a/uast/uast-java/src/org/jetbrains/uast/java/JavaUastLanguagePlugin.kt b/uast/uast-java/src/org/jetbrains/uast/java/JavaUastLanguagePlugin.kt index d6aa1f798f4b..c440dee0c0f3 100644 --- a/uast/uast-java/src/org/jetbrains/uast/java/JavaUastLanguagePlugin.kt +++ b/uast/uast-java/src/org/jetbrains/uast/java/JavaUastLanguagePlugin.kt @@ -10,7 +10,6 @@ import com.intellij.psi.javadoc.PsiDocToken import com.intellij.psi.util.PsiTreeUtil import org.jetbrains.uast.* import org.jetbrains.uast.analysis.UastAnalysisPlugin -import org.jetbrains.uast.java.analysis.JavaUastAnalysisPlugin import org.jetbrains.uast.java.expressions.JavaUAnnotationCallExpression import org.jetbrains.uast.java.expressions.JavaUNamedExpression import org.jetbrains.uast.java.expressions.JavaUSynchronizedExpression @@ -136,9 +135,8 @@ class JavaUastLanguagePlugin : UastLanguagePlugin { } } - override val analysisPlugin: UastAnalysisPlugin? by lazy { - UastAnalysisPlugin.byLanguage(JavaLanguage.INSTANCE) - } + override val analysisPlugin: UastAnalysisPlugin? + get() = UastAnalysisPlugin.byLanguage(JavaLanguage.INSTANCE) } internal inline fun Class<*>?.el(f: () -> UElement?): UElement? {