diff --git a/plugins/uast-kotlin-base/src/org/jetbrains/uast/kotlin/expressions/KotlinAbstractUBlockExpression.kt b/plugins/uast-kotlin-base/src/org/jetbrains/uast/kotlin/expressions/KotlinAbstractUBlockExpression.kt new file mode 100644 index 00000000000..41504e5422f --- /dev/null +++ b/plugins/uast-kotlin-base/src/org/jetbrains/uast/kotlin/expressions/KotlinAbstractUBlockExpression.kt @@ -0,0 +1,19 @@ +/* + * Copyright 2010-2021 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.uast.kotlin + +import org.jetbrains.kotlin.psi.KtBlockExpression +import org.jetbrains.uast.UBlockExpression +import org.jetbrains.uast.UElement + +abstract class KotlinAbstractUBlockExpression( + override val sourcePsi: KtBlockExpression, + givenParent: UElement? +) : KotlinAbstractUExpression(givenParent), UBlockExpression, KotlinUElementWithType { + override val expressions by lz { + sourcePsi.statements.map { baseResolveProviderService.baseKotlinConverter.convertOrEmpty(it, this) } + } +} diff --git a/plugins/uast-kotlin-base/src/org/jetbrains/uast/kotlin/expressions/KotlinLazyUBlockExpression.kt b/plugins/uast-kotlin-base/src/org/jetbrains/uast/kotlin/expressions/KotlinLazyUBlockExpression.kt new file mode 100644 index 00000000000..444922ad1ea --- /dev/null +++ b/plugins/uast-kotlin-base/src/org/jetbrains/uast/kotlin/expressions/KotlinLazyUBlockExpression.kt @@ -0,0 +1,32 @@ +/* + * Copyright 2010-2021 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.uast.kotlin + +import com.intellij.psi.PsiElement +import org.jetbrains.kotlin.psi.KtAnonymousInitializer +import org.jetbrains.uast.* + +class KotlinLazyUBlockExpression( + override val uastParent: UElement?, + expressionProducer: (expressionParent: UElement) -> List +) : UBlockExpression { + override val psi: PsiElement? get() = null + override val javaPsi: PsiElement? get() = null + override val sourcePsi: PsiElement? get() = null + override val uAnnotations: List = emptyList() + override val expressions by lz { expressionProducer(this) } + + companion object { + fun create(initializers: List, uastParent: UElement): UBlockExpression { + val languagePlugin = uastParent.getLanguagePlugin() + return KotlinLazyUBlockExpression(uastParent) { expressionParent -> + initializers.map { + languagePlugin.convertOpt(it.body, expressionParent) ?: UastEmptyExpression(expressionParent) + } + } + } + } +} diff --git a/plugins/uast-kotlin-base/src/org/jetbrains/uast/kotlin/expressions/KotlinUImplicitReturnExpression.kt b/plugins/uast-kotlin-base/src/org/jetbrains/uast/kotlin/expressions/KotlinUImplicitReturnExpression.kt new file mode 100644 index 00000000000..d7a18bf6662 --- /dev/null +++ b/plugins/uast-kotlin-base/src/org/jetbrains/uast/kotlin/expressions/KotlinUImplicitReturnExpression.kt @@ -0,0 +1,30 @@ +/* + * Copyright 2010-2021 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.uast.kotlin + +import com.intellij.psi.PsiElement +import org.jetbrains.uast.UElement +import org.jetbrains.uast.UExpression +import org.jetbrains.uast.UReturnExpression +import org.jetbrains.uast.kotlin.internal.KotlinFakeUElement + +class KotlinUImplicitReturnExpression( + givenParent: UElement? +) : KotlinAbstractUExpression(givenParent), UReturnExpression, KotlinUElementWithType, KotlinFakeUElement { + override val psi: PsiElement? + get() = null + + override lateinit var returnExpression: UExpression + + // Due to the lack of [psi], (lazily) delegate to the one in [returnExpression] + override val baseResolveProviderService: BaseKotlinUastResolveProviderService by lz { + (returnExpression as KotlinAbstractUElement).baseResolveProviderService + } + + override fun unwrapToSourcePsi(): List { + return returnExpression.toSourcePsiFakeAware() + } +} diff --git a/plugins/uast-kotlin-base/src/org/jetbrains/uast/kotlin/expressions/KotlinUReturnExpression.kt b/plugins/uast-kotlin-base/src/org/jetbrains/uast/kotlin/expressions/KotlinUReturnExpression.kt new file mode 100644 index 00000000000..d2dab24594f --- /dev/null +++ b/plugins/uast-kotlin-base/src/org/jetbrains/uast/kotlin/expressions/KotlinUReturnExpression.kt @@ -0,0 +1,19 @@ +/* + * Copyright 2010-2021 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.uast.kotlin + +import org.jetbrains.kotlin.psi.KtReturnExpression +import org.jetbrains.uast.UElement +import org.jetbrains.uast.UReturnExpression + +class KotlinUReturnExpression( + override val sourcePsi: KtReturnExpression, + givenParent: UElement? +) : KotlinAbstractUExpression(givenParent), UReturnExpression, KotlinUElementWithType { + override val returnExpression by lz { + baseResolveProviderService.baseKotlinConverter.convertOrNull(sourcePsi.returnedExpression, this) + } +} diff --git a/plugins/uast-kotlin-base/src/org/jetbrains/uast/kotlin/internal/baseKotlinInternalUastUtils.kt b/plugins/uast-kotlin-base/src/org/jetbrains/uast/kotlin/internal/baseKotlinInternalUastUtils.kt index 3cd85fbac70..7fa4ead90e5 100644 --- a/plugins/uast-kotlin-base/src/org/jetbrains/uast/kotlin/internal/baseKotlinInternalUastUtils.kt +++ b/plugins/uast-kotlin-base/src/org/jetbrains/uast/kotlin/internal/baseKotlinInternalUastUtils.kt @@ -10,10 +10,7 @@ import com.intellij.psi.PsiFile import org.jetbrains.kotlin.asJava.elements.FakeFileForLightClass import org.jetbrains.kotlin.asJava.elements.KtLightElement import org.jetbrains.kotlin.asJava.elements.KtLightMember -import org.jetbrains.kotlin.psi.KtBlockExpression -import org.jetbrains.kotlin.psi.KtDeclaration -import org.jetbrains.kotlin.psi.KtExpression -import org.jetbrains.kotlin.psi.KtPsiUtil +import org.jetbrains.kotlin.psi.* import org.jetbrains.uast.UDeclaration import org.jetbrains.uast.UElement import java.util.function.Supplier @@ -45,3 +42,10 @@ fun KtExpression.unwrapBlockOrParenthesis(): KtExpression { } return innerExpression } + +fun KtElement.canAnalyze(): Boolean { + if (!isValid) return false + val containingFile = containingFile as? KtFile ?: return false // EA-114080, EA-113475, EA-134193 + if (containingFile.doNotAnalyze != null) return false // To prevent exceptions during analysis + return true +} diff --git a/plugins/uast-kotlin-base/src/org/jetbrains/uast/kotlin/internal/converterUtils.kt b/plugins/uast-kotlin-base/src/org/jetbrains/uast/kotlin/internal/converterUtils.kt index a888701af3f..9cb5663b94b 100644 --- a/plugins/uast-kotlin-base/src/org/jetbrains/uast/kotlin/internal/converterUtils.kt +++ b/plugins/uast-kotlin-base/src/org/jetbrains/uast/kotlin/internal/converterUtils.kt @@ -7,10 +7,9 @@ package org.jetbrains.uast.kotlin import com.intellij.psi.PsiElement import org.jetbrains.kotlin.lexer.KtTokens -import org.jetbrains.uast.DEFAULT_EXPRESSION_TYPES_LIST -import org.jetbrains.uast.DEFAULT_TYPES_LIST -import org.jetbrains.uast.UElement -import org.jetbrains.uast.UExpression +import org.jetbrains.kotlin.psi.KtBlockExpression +import org.jetbrains.kotlin.psi.KtExpression +import org.jetbrains.uast.* import org.jetbrains.uast.kotlin.internal.KotlinFakeUElement fun expressionTypes(requiredType: Class?) = @@ -54,3 +53,16 @@ fun UElement.toSourcePsiFakeAware(): List { if (this is KotlinFakeUElement) return this.unwrapToSourcePsi() return listOfNotNull(this.sourcePsi) } + +fun wrapExpressionBody(function: UElement, bodyExpression: KtExpression): UExpression? = when (bodyExpression) { + !is KtBlockExpression -> { + KotlinLazyUBlockExpression(function) { block -> + val implicitReturn = KotlinUImplicitReturnExpression(block) + val uBody = function.getLanguagePlugin().convertElement(bodyExpression, implicitReturn) as? UExpression + ?: return@KotlinLazyUBlockExpression emptyList() + listOf(implicitReturn.apply { returnExpression = uBody }) + } + + } + else -> function.getLanguagePlugin().convertElement(bodyExpression, function) as? UExpression +} diff --git a/plugins/uast-kotlin-fir/src/org/jetbrains/uast/kotlin/FirKotlinConverter.kt b/plugins/uast-kotlin-fir/src/org/jetbrains/uast/kotlin/FirKotlinConverter.kt index 223a3a4833b..fef25895b88 100644 --- a/plugins/uast-kotlin-fir/src/org/jetbrains/uast/kotlin/FirKotlinConverter.kt +++ b/plugins/uast-kotlin-fir/src/org/jetbrains/uast/kotlin/FirKotlinConverter.kt @@ -268,6 +268,11 @@ internal object FirKotlinConverter : BaseKotlinConverter { } is KtCollectionLiteralExpression -> expr(build(::KotlinUCollectionLiteralExpression)) is KtConstantExpression -> expr(build(::KotlinULiteralExpression)) + is KtBlockExpression -> expr { + // TODO: differentiate lambda + FirKotlinUBlockExpression(expression, givenParent) + } + is KtReturnExpression -> expr(build(::KotlinUReturnExpression)) else -> expr(build(::UnknownKotlinExpression)) } } diff --git a/plugins/uast-kotlin-fir/src/org/jetbrains/uast/kotlin/declarations/FirKotlinUMethod.kt b/plugins/uast-kotlin-fir/src/org/jetbrains/uast/kotlin/declarations/FirKotlinUMethod.kt index 2bb57e58a25..bc663f32e42 100644 --- a/plugins/uast-kotlin-fir/src/org/jetbrains/uast/kotlin/declarations/FirKotlinUMethod.kt +++ b/plugins/uast-kotlin-fir/src/org/jetbrains/uast/kotlin/declarations/FirKotlinUMethod.kt @@ -30,6 +30,8 @@ open class FirKotlinUMethod( override fun getSourceElement() = sourcePsi + private val kotlinOrigin = getKotlinMemberOrigin(psi.originalElement) ?: sourcePsi + override val uAnnotations: List get() { // TODO: Not yet implemented @@ -65,6 +67,7 @@ open class FirKotlinUMethod( } override val uastBody: UExpression? by lz { + if (kotlinOrigin?.canAnalyze() != true) return@lz null // EA-137193 val bodyExpression = when (sourcePsi) { is KtFunction -> sourcePsi.bodyExpression is KtPropertyAccessor -> sourcePsi.bodyExpression @@ -76,7 +79,7 @@ open class FirKotlinUMethod( else -> null } ?: return@lz null - UastFacade.findPlugin(this)?.convertElement(bodyExpression, this) as? UExpression + wrapExpressionBody(this, bodyExpression) } override val returnTypeReference: UTypeReferenceExpression? by lz { diff --git a/plugins/uast-kotlin-fir/src/org/jetbrains/uast/kotlin/expressions/FirKotlinUBlockExpression.kt b/plugins/uast-kotlin-fir/src/org/jetbrains/uast/kotlin/expressions/FirKotlinUBlockExpression.kt new file mode 100644 index 00000000000..7d435766f2d --- /dev/null +++ b/plugins/uast-kotlin-fir/src/org/jetbrains/uast/kotlin/expressions/FirKotlinUBlockExpression.kt @@ -0,0 +1,16 @@ +/* + * Copyright 2010-2021 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.uast.kotlin + +import org.jetbrains.kotlin.psi.KtBlockExpression +import org.jetbrains.uast.UElement + +class FirKotlinUBlockExpression( + override val sourcePsi: KtBlockExpression, + givenParent: UElement? +) : KotlinAbstractUBlockExpression(sourcePsi, givenParent) { + // TODO: either override convertParent or commonize it +} diff --git a/plugins/uast-kotlin-fir/testData/declaration/facade.log.fir.txt b/plugins/uast-kotlin-fir/testData/declaration/facade.log.fir.txt index d7dc88d4a5b..32c1f8663cf 100644 --- a/plugins/uast-kotlin-fir/testData/declaration/facade.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/declaration/facade.log.fir.txt @@ -1,7 +1,13 @@ UFile (package = declaration) UClass (name = Utils) UMethod (name = foo) - ULiteralExpression (value = "not-yet-compile-time-constant") + UBlockExpression + UReturnExpression + ULiteralExpression (value = "not-yet-compile-time-constant") UMethod (name = buzz) UParameter (name = $this$buzz) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + UReturnExpression + UPolyadicExpression (operator = +) + [!] UnknownKotlinExpression (THIS_EXPRESSION) + ULiteralExpression (value = "... zzz...") diff --git a/plugins/uast-kotlin-fir/testData/declaration/facade.render.fir.txt b/plugins/uast-kotlin-fir/testData/declaration/facade.render.fir.txt index 390d360f53c..2e71d6551c0 100644 --- a/plugins/uast-kotlin-fir/testData/declaration/facade.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/declaration/facade.render.fir.txt @@ -1,6 +1,10 @@ package declaration public final class Utils { - public static final fun foo() : int = "not-yet-compile-time-constant" - public static final fun buzz($this$buzz: java.lang.String) : java.lang.String = [!] UnknownKotlinExpression (BLOCK) + public static final fun foo() : int { + return "not-yet-compile-time-constant" + } + public static final fun buzz($this$buzz: java.lang.String) : java.lang.String { + return [!] UnknownKotlinExpression (THIS_EXPRESSION) + "... zzz..." + } } diff --git a/plugins/uast-kotlin-fir/testData/declaration/objects.log.fir.txt b/plugins/uast-kotlin-fir/testData/declaration/objects.log.fir.txt index c26b8211cb8..35946820bb2 100644 --- a/plugins/uast-kotlin-fir/testData/declaration/objects.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/declaration/objects.log.fir.txt @@ -6,7 +6,9 @@ UFile (package = ) [!] UnknownKotlinExpression (OBJECT_LITERAL) UMethod (name = getTopRunnable) UMethod (name = main) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) UClass (name = RunnableManager) UField (name = INSTANCE) UField (name = tasks) @@ -15,6 +17,8 @@ UFile (package = ) UMethod (name = getTasks) UMethod (name = register) UParameter (name = runnable) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) UMethod (name = runAll) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (FOR) diff --git a/plugins/uast-kotlin-fir/testData/declaration/objects.render.fir.txt b/plugins/uast-kotlin-fir/testData/declaration/objects.render.fir.txt index d176d0ad1c3..2553bfcfa46 100644 --- a/plugins/uast-kotlin-fir/testData/declaration/objects.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/declaration/objects.render.fir.txt @@ -4,7 +4,10 @@ import java.lang.Thread public final class ObjectsKt { private static final var topRunnable: java.lang.Runnable = [!] UnknownKotlinExpression (OBJECT_LITERAL) public static final fun getTopRunnable() : java.lang.Runnable = UastEmptyExpression - public static final fun main() : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun main() : void { + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + } } public final class RunnableManager { @@ -12,6 +15,10 @@ public final class RunnableManager { private final var tasks: java.util.List = [!] UnknownKotlinExpression (CALL_EXPRESSION) private fun RunnableManager() = UastEmptyExpression public final fun getTasks() : java.util.List = UastEmptyExpression - public final fun register(runnable: java.lang.Runnable) : void = [!] UnknownKotlinExpression (BLOCK) - public final fun runAll() : void = [!] UnknownKotlinExpression (BLOCK) + public final fun register(runnable: java.lang.Runnable) : void { + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + } + public final fun runAll() : void { + [!] UnknownKotlinExpression (FOR) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/AnnotatedExpressions.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/AnnotatedExpressions.log.fir.txt index d187dbda3e0..4a9cec1cc57 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/AnnotatedExpressions.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/AnnotatedExpressions.log.fir.txt @@ -1,7 +1,15 @@ UFile (package = ) UClass (name = AnnotatedExpressionsKt) UMethod (name = foo) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (ANNOTATED_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (ANNOTATED_EXPRESSION) + [!] UnknownKotlinExpression (ANNOTATED_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) UMethod (name = annotatedSwitch) UParameter (name = str) - [!] UnknownKotlinExpression (WHEN) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (WHEN) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/AnnotatedExpressions.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/AnnotatedExpressions.render.fir.txt index 397c16d89c4..7a972227862 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/AnnotatedExpressions.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/AnnotatedExpressions.render.fir.txt @@ -1,4 +1,13 @@ public final class AnnotatedExpressionsKt { - public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK) - public static final fun annotatedSwitch(str: java.lang.String) : java.lang.Integer = [!] UnknownKotlinExpression (WHEN) + public static final fun foo() : void { + [!] UnknownKotlinExpression (ANNOTATED_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (ANNOTATED_EXPRESSION) + [!] UnknownKotlinExpression (ANNOTATED_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + } + public static final fun annotatedSwitch(str: java.lang.String) : java.lang.Integer { + return [!] UnknownKotlinExpression (WHEN) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/AnnotationParameters.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/AnnotationParameters.log.fir.txt index 36cb8e149b2..bcd84fe8720 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/AnnotationParameters.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/AnnotationParameters.log.fir.txt @@ -1,13 +1,21 @@ UFile (package = ) UClass (name = AnnotationParametersKt) UMethod (name = foo) - ULiteralExpression (value = "not-yet-compile-time-constant") + UBlockExpression + UReturnExpression + ULiteralExpression (value = "not-yet-compile-time-constant") UMethod (name = bar) - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) UMethod (name = fooWithArrLiteral) - ULiteralExpression (value = "not-yet-compile-time-constant") + UBlockExpression + UReturnExpression + ULiteralExpression (value = "not-yet-compile-time-constant") UMethod (name = fooWithStrArrLiteral) - ULiteralExpression (value = "not-yet-compile-time-constant") + UBlockExpression + UReturnExpression + ULiteralExpression (value = "not-yet-compile-time-constant") UClass (name = IntRange) UMethod (name = from) UMethod (name = to) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/AnnotationParameters.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/AnnotationParameters.render.fir.txt index fbba6050b9b..e4699e82408 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/AnnotationParameters.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/AnnotationParameters.render.fir.txt @@ -1,8 +1,16 @@ public final class AnnotationParametersKt { - public static final fun foo() : int = "not-yet-compile-time-constant" - public static final fun bar() : void = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) - public static final fun fooWithArrLiteral() : int = "not-yet-compile-time-constant" - public static final fun fooWithStrArrLiteral() : int = "not-yet-compile-time-constant" + public static final fun foo() : int { + return "not-yet-compile-time-constant" + } + public static final fun bar() : void { + return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) + } + public static final fun fooWithArrLiteral() : int { + return "not-yet-compile-time-constant" + } + public static final fun fooWithStrArrLiteral() : int { + return "not-yet-compile-time-constant" + } } public abstract annotation IntRange { diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Anonymous.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Anonymous.log.fir.txt index 42b1f6da338..b591ba44f4c 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Anonymous.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Anonymous.log.fir.txt @@ -3,6 +3,13 @@ UFile (package = ) UImportStatement (isOnDemand = false) UClass (name = AnonymousKt) UMethod (name = foo) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) UMethod (name = withErr) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (PROPERTY) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Anonymous.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Anonymous.render.fir.txt index 879860f300e..cf2c47f618f 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Anonymous.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Anonymous.render.fir.txt @@ -2,6 +2,15 @@ import java.io.Closeable import java.io.InputStream public final class AnonymousKt { - public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK) - public static final fun withErr() : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun foo() : void { + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + } + public static final fun withErr() : void { + [!] UnknownKotlinExpression (PROPERTY) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Assertion.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Assertion.log.fir.txt index 38b96d40287..16bfa2abb6a 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Assertion.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Assertion.log.fir.txt @@ -1,4 +1,7 @@ UFile (package = ) UClass (name = AssertionKt) UMethod (name = foo) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (PROPERTY) + UReturnExpression + [!] UnknownKotlinExpression (POSTFIX_EXPRESSION) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Assertion.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Assertion.render.fir.txt index 9faf2c59098..9437fdd4ea4 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Assertion.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Assertion.render.fir.txt @@ -1,3 +1,6 @@ public final class AssertionKt { - public static final fun foo() : java.lang.String = [!] UnknownKotlinExpression (BLOCK) + public static final fun foo() : java.lang.String { + [!] UnknownKotlinExpression (PROPERTY) + return [!] UnknownKotlinExpression (POSTFIX_EXPRESSION) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Bitwise.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Bitwise.log.fir.txt index 8ff620b98e2..12eefa7ff39 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Bitwise.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Bitwise.log.fir.txt @@ -1,6 +1,26 @@ UFile (package = ) UClass (name = BitwiseKt) UMethod (name = foo) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + UReturnExpression + [!] UnknownKotlinExpression (BINARY_EXPRESSION) UMethod (name = bar) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + UReturnExpression + [!] UnknownKotlinExpression (BINARY_EXPRESSION) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Bitwise.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Bitwise.render.fir.txt index da08b2d8dac..d0fa4b3d91e 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Bitwise.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Bitwise.render.fir.txt @@ -1,4 +1,24 @@ public final class BitwiseKt { - public static final fun foo() : int = [!] UnknownKotlinExpression (BLOCK) - public static final fun bar() : long = [!] UnknownKotlinExpression (BLOCK) + public static final fun foo() : int { + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + return [!] UnknownKotlinExpression (BINARY_EXPRESSION) + } + public static final fun bar() : long { + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + return [!] UnknownKotlinExpression (BINARY_EXPRESSION) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/BrokenMethod.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/BrokenMethod.log.fir.txt index 8eb98c81706..7f5840bbf4b 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/BrokenMethod.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/BrokenMethod.log.fir.txt @@ -2,4 +2,5 @@ UFile (package = ) UClass (name = BrokenMethodKt) UMethod (name = main) UParameter (name = args) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (CLASS) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/BrokenMethod.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/BrokenMethod.render.fir.txt index 183e94d23f1..14ccb139395 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/BrokenMethod.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/BrokenMethod.render.fir.txt @@ -1,3 +1,5 @@ public final class BrokenMethodKt { - public static final fun main(args: java.lang.String[]) : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun main(args: java.lang.String[]) : void { + [!] UnknownKotlinExpression (CLASS) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ConstructorDelegate.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ConstructorDelegate.log.fir.txt index 2bfc3e355c2..9e6acc5392d 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ConstructorDelegate.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ConstructorDelegate.log.fir.txt @@ -2,7 +2,9 @@ UFile (package = ) UClass (name = ConstructorDelegateKt) UMethod (name = createBase) UParameter (name = i) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) UClass (name = Base) UMethod (name = print) UClass (name = BaseImpl) @@ -11,7 +13,8 @@ UFile (package = ) UParameter (name = x) UMethod (name = getX) UMethod (name = print) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) UClass (name = Derived) UMethod (name = Derived) UParameter (name = b) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ConstructorDelegate.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ConstructorDelegate.render.fir.txt index 086565e27ab..8659baf4145 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ConstructorDelegate.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ConstructorDelegate.render.fir.txt @@ -1,5 +1,7 @@ public final class ConstructorDelegateKt { - public static final fun createBase(i: int) : Base = [!] UnknownKotlinExpression (BLOCK) + public static final fun createBase(i: int) : Base { + return [!] UnknownKotlinExpression (CALL_EXPRESSION) + } } public abstract interface Base { @@ -10,7 +12,9 @@ public final class BaseImpl : null { private final var x: int public fun BaseImpl(x: int) = UastEmptyExpression public final fun getX() : int = UastEmptyExpression - public fun print() : void = [!] UnknownKotlinExpression (BLOCK) + public fun print() : void { + [!] UnknownKotlinExpression (CALL_EXPRESSION) + } } public final class Derived : null, null { diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Constructors.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Constructors.log.fir.txt index 8da7a6c7763..e09da32c0be 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Constructors.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Constructors.log.fir.txt @@ -26,10 +26,12 @@ UFile (package = ) UField (name = a) UMethod (name = AWithSecondary) UParameter (name = i) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (BINARY_EXPRESSION) UMethod (name = AWithSecondary) UParameter (name = s) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (BINARY_EXPRESSION) UMethod (name = getA) UMethod (name = setA) UParameter (name = value) @@ -37,10 +39,14 @@ UFile (package = ) UField (name = a) UMethod (name = AWithSecondaryInit) UParameter (name = i) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (BINARY_EXPRESSION) UMethod (name = AWithSecondaryInit) UParameter (name = s) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) UMethod (name = getA) UMethod (name = setA) UParameter (name = value) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Constructors.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Constructors.render.fir.txt index 5e1909e4b47..dd7b3b51df9 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Constructors.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Constructors.render.fir.txt @@ -25,16 +25,26 @@ public final class AOnlyInit { public final class AWithSecondary { private var a: java.lang.String - public fun AWithSecondary(i: int) = [!] UnknownKotlinExpression (BLOCK) - public fun AWithSecondary(s: java.lang.String) = [!] UnknownKotlinExpression (BLOCK) + public fun AWithSecondary(i: int) { + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + } + public fun AWithSecondary(s: java.lang.String) { + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + } public final fun getA() : java.lang.String = UastEmptyExpression public final fun setA(value: java.lang.String) : void = UastEmptyExpression } public final class AWithSecondaryInit { private var a: java.lang.String - public fun AWithSecondaryInit(i: int) = [!] UnknownKotlinExpression (BLOCK) - public fun AWithSecondaryInit(s: java.lang.String) = [!] UnknownKotlinExpression (BLOCK) + public fun AWithSecondaryInit(i: int) { + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + } + public fun AWithSecondaryInit(s: java.lang.String) { + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + } public final fun getA() : java.lang.String = UastEmptyExpression public final fun setA(value: java.lang.String) : void = UastEmptyExpression } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultImpls.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultImpls.log.fir.txt deleted file mode 100644 index d535974f128..00000000000 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultImpls.log.fir.txt +++ /dev/null @@ -1,6 +0,0 @@ -UFile (package = ) - UClass (name = Foo) - UMethod (name = bar) - ULiteralExpression (value = "Hello!") - UClass (name = Baz) - UMethod (name = Baz) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultImpls.log.fe10.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultImpls.log.txt similarity index 88% rename from plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultImpls.log.fe10.txt rename to plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultImpls.log.txt index 571591722f8..8759ab44dbb 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultImpls.log.fe10.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultImpls.log.txt @@ -5,4 +5,4 @@ UFile (package = ) UReturnExpression ULiteralExpression (value = "Hello!") UClass (name = Baz) - UMethod (name = Baz) + UMethod (name = Baz) \ No newline at end of file diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultImpls.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultImpls.render.fir.txt index d27af0b812d..7e5cc58cb97 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultImpls.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultImpls.render.fir.txt @@ -1,5 +1,7 @@ public abstract interface Foo { - public fun bar() : java.lang.String = "Hello!" + public fun bar() : java.lang.String { + return "Hello!" + } } public final class Baz : null { diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultParameterValues.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultParameterValues.log.fir.txt index 8a92bf9de56..ce6c38f4c59 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultParameterValues.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultParameterValues.log.fir.txt @@ -5,4 +5,4 @@ UFile (package = ) ULiteralExpression (value = "not-yet-compile-time-constant") UParameter (name = foo) ULiteralExpression (value = "not-yet-compile-time-constant") - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultParameterValues.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultParameterValues.render.fir.txt index 498715dc272..0d903ca6199 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultParameterValues.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/DefaultParameterValues.render.fir.txt @@ -1,3 +1,4 @@ public final class DefaultParameterValuesKt { - public static final fun foo(a: int, foo: java.lang.String) : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun foo(a: int, foo: java.lang.String) : void { + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/DeprecatedHidden.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/DeprecatedHidden.log.fir.txt index 2cedcfacf68..6e619058539 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/DeprecatedHidden.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/DeprecatedHidden.log.fir.txt @@ -2,4 +2,4 @@ UFile (package = test.pkg) UClass (name = Test) UMethod (name = Test) UMethod (name = test1) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/DeprecatedHidden.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/DeprecatedHidden.render.fir.txt index adedb1cb4d9..8252763023a 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/DeprecatedHidden.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/DeprecatedHidden.render.fir.txt @@ -2,5 +2,6 @@ package test.pkg public final class Test { public fun Test() = UastEmptyExpression - public final fun test1() : void = [!] UnknownKotlinExpression (BLOCK) + public final fun test1() : void { + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/DestructuringDeclaration.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/DestructuringDeclaration.log.fir.txt index 2737f5ba81f..bf1d02f695e 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/DestructuringDeclaration.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/DestructuringDeclaration.log.fir.txt @@ -2,4 +2,6 @@ UFile (package = ) UClass (name = DestructuringDeclarationKt) UMethod (name = foo) UParameter (name = data) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (DESTRUCTURING_DECLARATION) + [!] UnknownKotlinExpression (DESTRUCTURING_DECLARATION) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/DestructuringDeclaration.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/DestructuringDeclaration.render.fir.txt index bf6de1a5e96..59edd8212bb 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/DestructuringDeclaration.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/DestructuringDeclaration.render.fir.txt @@ -1,3 +1,6 @@ public final class DestructuringDeclarationKt { - public static final fun foo(data: java.lang.Object) : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun foo(data: java.lang.Object) : void { + [!] UnknownKotlinExpression (DESTRUCTURING_DECLARATION) + [!] UnknownKotlinExpression (DESTRUCTURING_DECLARATION) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Elvis.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Elvis.log.fir.txt index 1e584109afa..c6f976907da 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Elvis.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Elvis.log.fir.txt @@ -2,8 +2,14 @@ UFile (package = ) UClass (name = ElvisKt) UMethod (name = foo) UParameter (name = bar) - ULiteralExpression (value = "not-yet-compile-time-constant") + UBlockExpression + UReturnExpression + ULiteralExpression (value = "not-yet-compile-time-constant") UMethod (name = bar) - ULiteralExpression (value = "not-yet-compile-time-constant") + UBlockExpression + UReturnExpression + ULiteralExpression (value = "not-yet-compile-time-constant") UMethod (name = baz) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (BINARY_EXPRESSION) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Elvis.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Elvis.render.fir.txt index d0d8b970c23..f1c6bd9e3e3 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Elvis.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Elvis.render.fir.txt @@ -1,5 +1,11 @@ public final class ElvisKt { - public static final fun foo(bar: java.lang.String) : java.lang.String = "not-yet-compile-time-constant" - public static final fun bar() : int = "not-yet-compile-time-constant" - public static final fun baz() : java.lang.String = [!] UnknownKotlinExpression (BLOCK) + public static final fun foo(bar: java.lang.String) : java.lang.String { + return "not-yet-compile-time-constant" + } + public static final fun bar() : int { + return "not-yet-compile-time-constant" + } + public static final fun baz() : java.lang.String { + return [!] UnknownKotlinExpression (BINARY_EXPRESSION) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ElvisType.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ElvisType.log.fir.txt index 235a1b1068d..652d407d74e 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ElvisType.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ElvisType.log.fir.txt @@ -2,7 +2,9 @@ UFile (package = ) UClass (name = ElvisTypeKt) UMethod (name = foo) UParameter (name = text) - [!] UnknownKotlinExpression (CALL_EXPRESSION) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) UMethod (name = bar) UParameter (name = o) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ElvisType.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ElvisType.render.fir.txt index d329a95051f..9743294e9de 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ElvisType.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ElvisType.render.fir.txt @@ -1,4 +1,7 @@ public final class ElvisTypeKt { - public static final fun foo(text: java.lang.String) : void = [!] UnknownKotlinExpression (CALL_EXPRESSION) - public static final fun bar(o: java.lang.Object) : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun foo(text: java.lang.String) : void { + return [!] UnknownKotlinExpression (CALL_EXPRESSION) + } + public static final fun bar(o: java.lang.Object) : void { + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/IfStatement.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/IfStatement.log.fir.txt index f9485d1291c..8dcc683abd5 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/IfStatement.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/IfStatement.log.fir.txt @@ -1,4 +1,5 @@ UFile (package = ) UClass (name = IfStatementKt) UMethod (name = foo) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (PROPERTY) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/IfStatement.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/IfStatement.render.fir.txt index c3fb5204656..5e368b32cd3 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/IfStatement.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/IfStatement.render.fir.txt @@ -1,3 +1,5 @@ public final class IfStatementKt { - public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun foo() : void { + [!] UnknownKotlinExpression (PROPERTY) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/In.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/In.log.fir.txt index cb9f5cd87f7..3039c845051 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/In.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/In.log.fir.txt @@ -1,4 +1,8 @@ UFile (package = ) UClass (name = InKt) UMethod (name = foo) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + UReturnExpression + [!] UnknownKotlinExpression (BINARY_EXPRESSION) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/In.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/In.render.fir.txt index 7d00171d4cc..9365e9bc96e 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/In.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/In.render.fir.txt @@ -1,3 +1,7 @@ public final class InKt { - public static final fun foo() : boolean = [!] UnknownKotlinExpression (BLOCK) + public static final fun foo() : boolean { + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + return [!] UnknownKotlinExpression (BINARY_EXPRESSION) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/InferenceInsideUnresolvedConstructor.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/InferenceInsideUnresolvedConstructor.log.fir.txt index 30d3c6e1135..9348ff42db9 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/InferenceInsideUnresolvedConstructor.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/InferenceInsideUnresolvedConstructor.log.fir.txt @@ -1,7 +1,11 @@ UFile (package = ) UClass (name = InferenceInsideUnresolvedConstructorKt) UMethod (name = getBar) - [!] UnknownKotlinExpression (CALL_EXPRESSION) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) UMethod (name = id) UParameter (name = x) - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/InferenceInsideUnresolvedConstructor.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/InferenceInsideUnresolvedConstructor.render.fir.txt index 8a921e29671..724cd9b7f48 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/InferenceInsideUnresolvedConstructor.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/InferenceInsideUnresolvedConstructor.render.fir.txt @@ -1,4 +1,8 @@ public final class InferenceInsideUnresolvedConstructorKt { - public static final fun getBar() : java.lang.Object = [!] UnknownKotlinExpression (CALL_EXPRESSION) - public static final fun id(x: T) : T = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) + public static final fun getBar() : java.lang.Object { + return [!] UnknownKotlinExpression (CALL_EXPRESSION) + } + public static final fun id(x: T) : T { + return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/InnerClasses.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/InnerClasses.log.fir.txt index 576a1be3aa0..d27cb78d0cb 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/InnerClasses.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/InnerClasses.log.fir.txt @@ -10,8 +10,12 @@ UFile (package = ) UMethod (name = getA) UMethod (name = getB) UMethod (name = getAPlusB) - [!] UnknownKotlinExpression (BINARY_EXPRESSION) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (BINARY_EXPRESSION) UClass (name = Baz) UMethod (name = Baz) UMethod (name = doNothing) - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/InnerClasses.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/InnerClasses.render.fir.txt index e23958ba72a..28637b02427 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/InnerClasses.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/InnerClasses.render.fir.txt @@ -6,10 +6,14 @@ public final class Foo { public fun Bar(a: int, b: int) = UastEmptyExpression public final fun getA() : int = UastEmptyExpression public final fun getB() : int = UastEmptyExpression - public final fun getAPlusB() : int = [!] UnknownKotlinExpression (BINARY_EXPRESSION) + public final fun getAPlusB() : int { + return [!] UnknownKotlinExpression (BINARY_EXPRESSION) + } public static final class Baz { public fun Baz() = UastEmptyExpression - public final fun doNothing() : void = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) + public final fun doNothing() : void { + return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) + } } } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/InnerNonFixedTypeVariable.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/InnerNonFixedTypeVariable.log.fir.txt index 33b5fc575da..48dc0f11727 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/InnerNonFixedTypeVariable.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/InnerNonFixedTypeVariable.log.fir.txt @@ -2,6 +2,7 @@ UFile (package = ) UClass (name = InnerNonFixedTypeVariableKt) UMethod (name = test) UParameter (name = list) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) UClass (name = Some) UMethod (name = Some) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/InnerNonFixedTypeVariable.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/InnerNonFixedTypeVariable.render.fir.txt index 9613020bcaa..8f565d4ef1a 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/InnerNonFixedTypeVariable.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/InnerNonFixedTypeVariable.render.fir.txt @@ -1,5 +1,7 @@ public final class InnerNonFixedTypeVariableKt { - public static final fun test(list: java.util.List) : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun test(list: java.util.List) : void { + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + } } public final class Some { diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/LambdaReturn.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/LambdaReturn.log.fir.txt index d51afd90a76..61ea35cce70 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/LambdaReturn.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/LambdaReturn.log.fir.txt @@ -1,4 +1,12 @@ UFile (package = org.jetbrains.uast.kotlin) UClass (name = LambdaReturnKt) UMethod (name = foo) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/LambdaReturn.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/LambdaReturn.render.fir.txt index de00dc27900..1d2f4bb0b46 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/LambdaReturn.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/LambdaReturn.render.fir.txt @@ -1,5 +1,14 @@ package org.jetbrains.uast.kotlin public final class LambdaReturnKt { - public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun foo() : void { + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Lambdas.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Lambdas.log.fir.txt index 732075f9f4b..100da2741ec 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Lambdas.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Lambdas.log.fir.txt @@ -2,9 +2,14 @@ UFile (package = ) UImportStatement (isOnDemand = false) UClass (name = LambdasKt) UMethod (name = foo) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) UMethod (name = doSelectItem) UParameter (name = selectItemFunction) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (CALL_EXPRESSION) UMethod (name = lambdaInPlaceCall) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (WHILE) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Lambdas.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Lambdas.render.fir.txt index feb8d09fa0a..10b7b5a7535 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Lambdas.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Lambdas.render.fir.txt @@ -1,7 +1,15 @@ import java.util.stream.Stream public final class LambdasKt { - public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK) - public static final fun doSelectItem(selectItemFunction: kotlin.jvm.functions.Function0) : void = [!] UnknownKotlinExpression (BLOCK) - public static final fun lambdaInPlaceCall() : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun foo() : void { + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + } + public static final fun doSelectItem(selectItemFunction: kotlin.jvm.functions.Function0) : void { + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (CALL_EXPRESSION) + } + public static final fun lambdaInPlaceCall() : void { + [!] UnknownKotlinExpression (WHILE) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/LocalDeclarations.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/LocalDeclarations.log.fir.txt index c7a11bd4bd1..a92062d67c0 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/LocalDeclarations.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/LocalDeclarations.log.fir.txt @@ -1,4 +1,10 @@ UFile (package = ) UClass (name = LocalDeclarationsKt) UMethod (name = foo) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (CLASS) + [!] UnknownKotlinExpression (FUN) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (FUN) + UReturnExpression + [!] UnknownKotlinExpression (BINARY_EXPRESSION) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/LocalDeclarations.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/LocalDeclarations.render.fir.txt index b8a5f0a6304..502e13c8630 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/LocalDeclarations.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/LocalDeclarations.render.fir.txt @@ -1,3 +1,9 @@ public final class LocalDeclarationsKt { - public static final fun foo() : boolean = [!] UnknownKotlinExpression (BLOCK) + public static final fun foo() : boolean { + [!] UnknownKotlinExpression (CLASS) + [!] UnknownKotlinExpression (FUN) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (FUN) + return [!] UnknownKotlinExpression (BINARY_EXPRESSION) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/LocalVariableWithAnnotation.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/LocalVariableWithAnnotation.log.fir.txt index 126035fb64e..4a6f727b2f5 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/LocalVariableWithAnnotation.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/LocalVariableWithAnnotation.log.fir.txt @@ -1,5 +1,6 @@ UFile (package = ) UClass (name = LocalVariableWithAnnotationKt) UMethod (name = foo) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (PROPERTY) UClass (name = TestAnnotation) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/LocalVariableWithAnnotation.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/LocalVariableWithAnnotation.render.fir.txt index 0b215632575..76cd9856aa6 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/LocalVariableWithAnnotation.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/LocalVariableWithAnnotation.render.fir.txt @@ -1,5 +1,7 @@ public final class LocalVariableWithAnnotationKt { - public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun foo() : void { + [!] UnknownKotlinExpression (PROPERTY) + } } public abstract annotation TestAnnotation { diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/MethodReference.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/MethodReference.log.fir.txt index 0f8ad90c309..1a4721c309b 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/MethodReference.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/MethodReference.log.fir.txt @@ -6,4 +6,4 @@ UFile (package = ) UClass (name = Foo) UMethod (name = Foo) UMethod (name = bar) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/MethodReference.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/MethodReference.render.fir.txt index 4a297393563..39127bbd8b0 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/MethodReference.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/MethodReference.render.fir.txt @@ -5,5 +5,6 @@ public final class MethodReferenceKt { public final class Foo { public fun Foo() = UastEmptyExpression - public final fun bar() : void = [!] UnknownKotlinExpression (BLOCK) + public final fun bar() : void { + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/NameContainingFile.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/NameContainingFile.log.fir.txt index 9d65b463ace..a3ccf77498b 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/NameContainingFile.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/NameContainingFile.log.fir.txt @@ -3,7 +3,7 @@ UFile (package = ) UField (name = xyzzy) ULiteralExpression (value = "not-yet-compile-time-constant") UMethod (name = bar) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression UMethod (name = getXyzzy) UClass (name = Foo) UMethod (name = Foo) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/NameContainingFile.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/NameContainingFile.render.fir.txt index 7ee7492d10a..98703974596 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/NameContainingFile.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/NameContainingFile.render.fir.txt @@ -1,6 +1,7 @@ public final class NameContainingFileKt { private static final var xyzzy: int = "not-yet-compile-time-constant" - public static final fun bar() : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun bar() : void { + } public static final fun getXyzzy() : int = UastEmptyExpression } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/NonTrivialIdentifiers.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/NonTrivialIdentifiers.log.fir.txt index 2daa7ee1622..52dc0489fa7 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/NonTrivialIdentifiers.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/NonTrivialIdentifiers.log.fir.txt @@ -2,11 +2,15 @@ UFile (package = ) UClass (name = NonTrivialIdentifiersKt) UMethod (name = main) UParameter (name = a) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (CALL_EXPRESSION) UClass (name = A) UMethod (name = A) UMethod (name = invoke) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) UMethod (name = invoke) UParameter (name = f) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/NonTrivialIdentifiers.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/NonTrivialIdentifiers.render.fir.txt index 4c84edb7486..03da8e7e029 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/NonTrivialIdentifiers.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/NonTrivialIdentifiers.render.fir.txt @@ -1,9 +1,16 @@ public final class NonTrivialIdentifiersKt { - public static final fun main(a: A) : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun main(a: A) : void { + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (CALL_EXPRESSION) + } } public final class A { public fun A() = UastEmptyExpression - public final fun invoke() : void = [!] UnknownKotlinExpression (BLOCK) - public final fun invoke(f: kotlin.jvm.functions.Function0) : void = [!] UnknownKotlinExpression (BLOCK) + public final fun invoke() : void { + [!] UnknownKotlinExpression (CALL_EXPRESSION) + } + public final fun invoke(f: kotlin.jvm.functions.Function0) : void { + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ParametersDisorder.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ParametersDisorder.log.fir.txt index 006e9afda49..d636fdbffd2 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ParametersDisorder.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ParametersDisorder.log.fir.txt @@ -3,29 +3,40 @@ UFile (package = ) UMethod (name = global) UParameter (name = a) UParameter (name = b) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression UMethod (name = withDefault) UParameter (name = c) ULiteralExpression (value = "not-yet-compile-time-constant") UParameter (name = d) ULiteralExpression (value = "aaa") - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression UMethod (name = withReceiver) UParameter (name = $this$withReceiver) UParameter (name = a) UParameter (name = b) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression UMethod (name = call) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (CALL_EXPRESSION) UMethod (name = objectLiteral) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (OBJECT_LITERAL) UClass (name = A) UMethod (name = A) UMethod (name = with2Receivers) UParameter (name = $this$with2Receivers) UParameter (name = a) UParameter (name = b) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression UClass (name = Parent) UMethod (name = Parent) UParameter (name = a) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ParametersDisorder.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ParametersDisorder.render.fir.txt index 7d41f005a90..ca8104212dc 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ParametersDisorder.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ParametersDisorder.render.fir.txt @@ -1,14 +1,31 @@ public final class ParametersDisorderKt { - public static final fun global(a: int, b: float) : void = [!] UnknownKotlinExpression (BLOCK) - public static final fun withDefault(c: int, d: java.lang.String) : void = [!] UnknownKotlinExpression (BLOCK) - public static final fun withReceiver($this$withReceiver: java.lang.String, a: int, b: float) : void = [!] UnknownKotlinExpression (BLOCK) - public static final fun call() : void = [!] UnknownKotlinExpression (BLOCK) - public static final fun objectLiteral() : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun global(a: int, b: float) : void { + } + public static final fun withDefault(c: int, d: java.lang.String) : void { + } + public static final fun withReceiver($this$withReceiver: java.lang.String, a: int, b: float) : void { + } + public static final fun call() : void { + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (CALL_EXPRESSION) + } + public static final fun objectLiteral() : void { + [!] UnknownKotlinExpression (OBJECT_LITERAL) + } } public final class A { public fun A() = UastEmptyExpression - public final fun with2Receivers($this$with2Receivers: java.lang.String, a: int, b: float) : void = [!] UnknownKotlinExpression (BLOCK) + public final fun with2Receivers($this$with2Receivers: java.lang.String, a: int, b: float) : void { + } } public class Parent { diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ParametersWithDefaultValues.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ParametersWithDefaultValues.log.fir.txt index 773caba7109..98278fc4d24 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ParametersWithDefaultValues.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ParametersWithDefaultValues.log.fir.txt @@ -7,4 +7,4 @@ UFile (package = ) ULiteralExpression (value = "not-yet-compile-time-constant") UParameter (name = flag) ULiteralExpression (value = "not-yet-compile-time-constant") - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ParametersWithDefaultValues.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ParametersWithDefaultValues.render.fir.txt index 75fbe5fbae5..a47a36a47c3 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ParametersWithDefaultValues.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ParametersWithDefaultValues.render.fir.txt @@ -1,3 +1,4 @@ public final class ParametersWithDefaultValuesKt { - public static final fun foo(a: int, b: java.lang.String, c: int, flag: boolean) : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun foo(a: int, b: java.lang.String, c: int, flag: boolean) : void { + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyAccessors.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyAccessors.log.fir.txt index 384b172bf61..9ddfdb0fe46 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyAccessors.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyAccessors.log.fir.txt @@ -2,10 +2,13 @@ UFile (package = ) UClass (name = PropertyTest) UMethod (name = PropertyTest) UMethod (name = getStringRepresentation) - [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) UMethod (name = setStringRepresentation) UParameter (name = value) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) UMethod (name = setDataFromString) UParameter (name = data) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyAccessors.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyAccessors.render.fir.txt index a800c282de5..3187c0da199 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyAccessors.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyAccessors.render.fir.txt @@ -1,6 +1,11 @@ public final class PropertyTest { public fun PropertyTest() = UastEmptyExpression - public final fun getStringRepresentation() : java.lang.String = [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) - public final fun setStringRepresentation(value: java.lang.String) : void = [!] UnknownKotlinExpression (BLOCK) - public final fun setDataFromString(data: java.lang.String) : void = [!] UnknownKotlinExpression (BLOCK) + public final fun getStringRepresentation() : java.lang.String { + return [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + } + public final fun setStringRepresentation(value: java.lang.String) : void { + [!] UnknownKotlinExpression (CALL_EXPRESSION) + } + public final fun setDataFromString(data: java.lang.String) : void { + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyDelegate.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyDelegate.log.fir.txt index 973f3fb39af..d31e8eef5cc 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyDelegate.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyDelegate.log.fir.txt @@ -2,5 +2,6 @@ UFile (package = ) UClass (name = PropertyDelegateKt) UMethod (name = getSdCardPath) UMethod (name = localPropertyTest) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (PROPERTY) UMethod (name = getAnnotatedDelegate) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyDelegate.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyDelegate.render.fir.txt index ae5a77b1611..0e9f8042d4c 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyDelegate.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyDelegate.render.fir.txt @@ -1,5 +1,7 @@ public final class PropertyDelegateKt { public static final fun getSdCardPath() : java.lang.String = UastEmptyExpression - public static final fun localPropertyTest() : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun localPropertyTest() : void { + [!] UnknownKotlinExpression (PROPERTY) + } public static final fun getAnnotatedDelegate() : int = UastEmptyExpression } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyInitializer.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyInitializer.log.fir.txt index 119e83afb97..b17b9cc16a0 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyInitializer.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyInitializer.log.fir.txt @@ -2,7 +2,10 @@ UFile (package = ) UClass (name = TestPropertyInitializer) UMethod (name = TestPropertyInitializer) UMethod (name = getWithSetter) - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) UMethod (name = setWithSetter) UParameter (name = p) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (BINARY_EXPRESSION) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyInitializer.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyInitializer.render.fir.txt index 1088f458caf..20bf52b83f7 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyInitializer.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyInitializer.render.fir.txt @@ -1,5 +1,9 @@ public final class TestPropertyInitializer { public fun TestPropertyInitializer() = UastEmptyExpression - public final fun getWithSetter() : java.lang.String = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) - public final fun setWithSetter(p: java.lang.String) : void = [!] UnknownKotlinExpression (BLOCK) + public final fun getWithSetter() : java.lang.String { + return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) + } + public final fun setWithSetter(p: java.lang.String) : void { + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyInitializerWithoutSetter.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyInitializerWithoutSetter.log.fir.txt index 7769fe097d7..b3e1eb7e9e6 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyInitializerWithoutSetter.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyInitializerWithoutSetter.log.fir.txt @@ -3,6 +3,8 @@ UFile (package = ) UField (name = withoutSetter) ULiteralExpression (value = "/sdcard") UMethod (name = getWithoutSetter) - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) UMethod (name = setWithoutSetter) UParameter (name = value) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyInitializerWithoutSetter.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyInitializerWithoutSetter.render.fir.txt index c3c46213b83..7a6ef51ce03 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyInitializerWithoutSetter.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyInitializerWithoutSetter.render.fir.txt @@ -1,5 +1,7 @@ public final class PropertyInitializerWithoutSetterKt { private static var withoutSetter: java.lang.String = "/sdcard" - public static final fun getWithoutSetter() : java.lang.String = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) + public static final fun getWithoutSetter() : java.lang.String { + return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) + } public static final fun setWithoutSetter(value: java.lang.String) : void = UastEmptyExpression } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyReferences.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyReferences.log.fir.txt index 03075dde37d..45e19b456e4 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyReferences.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyReferences.log.fir.txt @@ -1,10 +1,21 @@ UFile (package = ) UClass (name = PropertyReferencesKt) UMethod (name = properties) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + [!] UnknownKotlinExpression (PREFIX_EXPRESSION) + [!] UnknownKotlinExpression (POSTFIX_EXPRESSION) UMethod (name = ext) UParameter (name = $this$ext) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + [!] UnknownKotlinExpression (PREFIX_EXPRESSION) + [!] UnknownKotlinExpression (POSTFIX_EXPRESSION) UClass (name = A) UField (name = privateProp) ULiteralExpression (value = "not-yet-compile-time-constant") @@ -16,4 +27,8 @@ UFile (package = ) UParameter (name = value) UMethod (name = add) UParameter (name = x) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + UReturnExpression + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyReferences.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyReferences.render.fir.txt index f2c46870408..7070796728e 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyReferences.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyReferences.render.fir.txt @@ -1,6 +1,19 @@ public final class PropertyReferencesKt { - public static final fun properties() : void = [!] UnknownKotlinExpression (BLOCK) - public static final fun ext($this$ext: A) : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun properties() : void { + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + [!] UnknownKotlinExpression (PREFIX_EXPRESSION) + [!] UnknownKotlinExpression (POSTFIX_EXPRESSION) + } + public static final fun ext($this$ext: A) : void { + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + [!] UnknownKotlinExpression (PREFIX_EXPRESSION) + [!] UnknownKotlinExpression (POSTFIX_EXPRESSION) + } } public final class A { @@ -9,5 +22,9 @@ public final class A { public fun A(init: int) = UastEmptyExpression public final fun getMutableProp() : int = UastEmptyExpression public final fun setMutableProp(value: int) : void = UastEmptyExpression - public final fun add(x: int) : int = [!] UnknownKotlinExpression (BLOCK) + public final fun add(x: int) : int { + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyWithAnnotation.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyWithAnnotation.log.fir.txt index 7cd4b29ef72..fcb7c3ccec1 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyWithAnnotation.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyWithAnnotation.log.fir.txt @@ -4,10 +4,15 @@ UFile (package = ) ULiteralExpression (value = "not-yet-compile-time-constant") UMethod (name = getProp1) UMethod (name = getProp2) - ULiteralExpression (value = "not-yet-compile-time-constant") + UBlockExpression + UReturnExpression + ULiteralExpression (value = "not-yet-compile-time-constant") UMethod (name = getProp3) - ULiteralExpression (value = "not-yet-compile-time-constant") + UBlockExpression + UReturnExpression + ULiteralExpression (value = "not-yet-compile-time-constant") UMethod (name = setProp3) UParameter (name = value) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (BINARY_EXPRESSION) UClass (name = TestAnnotation) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyWithAnnotation.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyWithAnnotation.render.fir.txt index c8bdfb282b9..a8b3ed50e42 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyWithAnnotation.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/PropertyWithAnnotation.render.fir.txt @@ -1,9 +1,15 @@ public final class PropertyWithAnnotationKt { private static final var prop1: int = "not-yet-compile-time-constant" public static final fun getProp1() : int = UastEmptyExpression - public static final fun getProp2() : int = "not-yet-compile-time-constant" - public static final fun getProp3() : int = "not-yet-compile-time-constant" - public static final fun setProp3(value: int) : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun getProp2() : int { + return "not-yet-compile-time-constant" + } + public static final fun getProp3() : int { + return "not-yet-compile-time-constant" + } + public static final fun setProp3(value: int) : void { + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + } } public abstract annotation TestAnnotation { diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/QualifiedConstructorCall.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/QualifiedConstructorCall.log.fir.txt index bae584a2851..3785f1937cc 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/QualifiedConstructorCall.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/QualifiedConstructorCall.log.fir.txt @@ -4,4 +4,6 @@ UFile (package = A.B.C) UClass (name = Bar) UMethod (name = Bar) UMethod (name = getFoo) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/QualifiedConstructorCall.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/QualifiedConstructorCall.render.fir.txt index 0c886fb162c..8257ab14906 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/QualifiedConstructorCall.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/QualifiedConstructorCall.render.fir.txt @@ -6,5 +6,7 @@ public final class Foo { public final class Bar { public fun Bar() = UastEmptyExpression - public final fun getFoo() : A.B.C.Foo = [!] UnknownKotlinExpression (BLOCK) + public final fun getFoo() : A.B.C.Foo { + return [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReceiverFun.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReceiverFun.log.fir.txt index f69d8d1659e..6e177b805d7 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReceiverFun.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReceiverFun.log.fir.txt @@ -2,9 +2,13 @@ UFile (package = ) UClass (name = ReceiverFunKt) UMethod (name = foo) UParameter (name = $this$foo) - [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) UMethod (name = getRx) UParameter (name = $this$rx) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) UClass (name = MyReceiverAnnotation) UMethod (name = name) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReceiverFun.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReceiverFun.render.fir.txt index e0dd702b933..b4b8fbd14ad 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReceiverFun.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReceiverFun.render.fir.txt @@ -1,6 +1,10 @@ public final class ReceiverFunKt { - public static final fun foo($this$foo: java.lang.String) : int = [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) - public static final fun getRx($this$rx: java.lang.String) : kotlin.text.Regex = [!] UnknownKotlinExpression (BLOCK) + public static final fun foo($this$foo: java.lang.String) : int { + return [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + } + public static final fun getRx($this$rx: java.lang.String) : kotlin.text.Regex { + return [!] UnknownKotlinExpression (CALL_EXPRESSION) + } } public abstract annotation MyReceiverAnnotation { diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReifiedResolve.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReifiedResolve.log.fir.txt index 29532ebe22d..8139f964e01 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReifiedResolve.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReifiedResolve.log.fir.txt @@ -1,4 +1,9 @@ UFile (package = ) UClass (name = ReifiedResolveKt) UMethod (name = resolve) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReifiedResolve.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReifiedResolve.render.fir.txt index eee18da4764..9c4c4309064 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReifiedResolve.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReifiedResolve.render.fir.txt @@ -1,3 +1,9 @@ public final class ReifiedResolveKt { - public static final fun resolve() : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun resolve() : void { + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReifiedReturnType.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReifiedReturnType.log.fir.txt index 7d947f344ee..005fe0ab34a 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReifiedReturnType.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReifiedReturnType.log.fir.txt @@ -4,6 +4,8 @@ UFile (package = ) UParameter (name = list) UParameter (name = threshold) UParameter (name = threshold2) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) UClass (name = Foo) UMethod (name = Foo) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReifiedReturnType.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReifiedReturnType.render.fir.txt index d0129ea763d..130bf7a38f2 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReifiedReturnType.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ReifiedReturnType.render.fir.txt @@ -1,5 +1,7 @@ public final class ReifiedReturnTypeKt { - public static final fun copyWhenGreater(list: java.util.List, threshold: T, threshold2: B) : B = [!] UnknownKotlinExpression (BLOCK) + public static final fun copyWhenGreater(list: java.util.List, threshold: T, threshold2: B) : B { + return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) + } } public final class Foo { diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Resolve.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Resolve.log.fir.txt index c39d3b0e1dc..f032d2e16bc 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Resolve.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Resolve.log.fir.txt @@ -1,14 +1,30 @@ UFile (package = ) UClass (name = ResolveKt) UMethod (name = bar) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (CALL_EXPRESSION) UMethod (name = barT) UParameter (name = t) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) UMethod (name = barTL) UParameter (name = listT) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (FOR) UClass (name = A) UMethod (name = A) UMethod (name = foo) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Resolve.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Resolve.render.fir.txt index a32cd44016c..c7f700a0db3 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Resolve.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Resolve.render.fir.txt @@ -1,10 +1,30 @@ public final class ResolveKt { - public static final fun bar() : void = [!] UnknownKotlinExpression (BLOCK) - public static final fun barT(t: T) : void = [!] UnknownKotlinExpression (BLOCK) - public static final fun barTL(listT: T) : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun bar() : void { + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (CALL_EXPRESSION) + } + public static final fun barT(t: T) : void { + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + } + public static final fun barTL(listT: T) : void { + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + [!] UnknownKotlinExpression (FOR) + } } public class A { public fun A() = UastEmptyExpression - public final fun foo() : void = [!] UnknownKotlinExpression (BLOCK) + public final fun foo() : void { + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/SAM.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/SAM.log.fir.txt index 75bde7d449d..f38e8f6fc82 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/SAM.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/SAM.log.fir.txt @@ -15,20 +15,35 @@ UFile (package = ) UMethod (name = setFoo) UParameter (name = value) UMethod (name = bar) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (CALL_EXPRESSION) + UReturnExpression + [!] UnknownKotlinExpression (LAMBDA_EXPRESSION) UMethod (name = getBaz) UMethod (name = runRunnable) UParameter (name = r) - [!] UnknownKotlinExpression (CALL_EXPRESSION) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) UMethod (name = test1) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (PROPERTY) UMethod (name = test2) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (PROPERTY) UMethod (name = test3) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (CALL_EXPRESSION) UMethod (name = ambiguousSamAcceptor) UParameter (name = s) - [!] UnknownKotlinExpression (CALL_EXPRESSION) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) UMethod (name = ambiguousSamAcceptor) UParameter (name = s) - [!] UnknownKotlinExpression (CALL_EXPRESSION) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/SAM.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/SAM.render.fir.txt index 8e54f56a44a..bb4a455cb49 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/SAM.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/SAM.render.fir.txt @@ -10,12 +10,30 @@ public final class SAMKt { public static final fun getNotSam() : kotlin.jvm.functions.Function0 = UastEmptyExpression public static final fun getFoo() : java.lang.Runnable = UastEmptyExpression public static final fun setFoo(value: java.lang.Runnable) : void = UastEmptyExpression - public static final fun bar() : java.lang.Runnable = [!] UnknownKotlinExpression (BLOCK) + public static final fun bar() : java.lang.Runnable { + [!] UnknownKotlinExpression (BINARY_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (CALL_EXPRESSION) + return [!] UnknownKotlinExpression (LAMBDA_EXPRESSION) + } public static final fun getBaz() : java.lang.Runnable = UastEmptyExpression - public static final fun runRunnable(r: java.lang.Runnable) : error.NonExistentClass = [!] UnknownKotlinExpression (CALL_EXPRESSION) - public static final fun test1() : void = [!] UnknownKotlinExpression (BLOCK) - public static final fun test2() : void = [!] UnknownKotlinExpression (BLOCK) - public static final fun test3() : void = [!] UnknownKotlinExpression (BLOCK) - public static final fun ambiguousSamAcceptor(s: java.util.function.Supplier) : java.lang.String = [!] UnknownKotlinExpression (CALL_EXPRESSION) - public static final fun ambiguousSamAcceptor(s: java.util.concurrent.Callable) : java.lang.String = [!] UnknownKotlinExpression (CALL_EXPRESSION) + public static final fun runRunnable(r: java.lang.Runnable) : error.NonExistentClass { + return [!] UnknownKotlinExpression (CALL_EXPRESSION) + } + public static final fun test1() : void { + [!] UnknownKotlinExpression (PROPERTY) + } + public static final fun test2() : void { + [!] UnknownKotlinExpression (PROPERTY) + } + public static final fun test3() : void { + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (CALL_EXPRESSION) + } + public static final fun ambiguousSamAcceptor(s: java.util.function.Supplier) : java.lang.String { + return [!] UnknownKotlinExpression (CALL_EXPRESSION) + } + public static final fun ambiguousSamAcceptor(s: java.util.concurrent.Callable) : java.lang.String { + return [!] UnknownKotlinExpression (CALL_EXPRESSION) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Simple.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Simple.log.fir.txt index f5d3325b7a6..2efd25fb384 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Simple.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Simple.log.fir.txt @@ -4,5 +4,6 @@ UFile (package = ) ULiteralExpression (value = "Mary") UMethod (name = Simple) UMethod (name = method) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) UMethod (name = getProperty) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Simple.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Simple.render.fir.txt index 3dfc9de2f90..44c5be1f7fe 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Simple.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Simple.render.fir.txt @@ -1,6 +1,8 @@ public final class Simple { private final var property: java.lang.String = "Mary" public fun Simple() = UastEmptyExpression - public final fun method() : void = [!] UnknownKotlinExpression (BLOCK) + public final fun method() : void { + [!] UnknownKotlinExpression (CALL_EXPRESSION) + } public final fun getProperty() : java.lang.String = UastEmptyExpression } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/SimpleAnnotated.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/SimpleAnnotated.log.fir.txt index 28a6ca2d9da..c97961e1c94 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/SimpleAnnotated.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/SimpleAnnotated.log.fir.txt @@ -4,5 +4,6 @@ UFile (package = ) ULiteralExpression (value = "Mary") UMethod (name = SimpleAnnotated) UMethod (name = method) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) UMethod (name = getProperty) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/SimpleAnnotated.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/SimpleAnnotated.render.fir.txt index 7147ade23e4..5a116e1f0fe 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/SimpleAnnotated.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/SimpleAnnotated.render.fir.txt @@ -1,6 +1,8 @@ public final class SimpleAnnotated { private final var property: java.lang.String = "Mary" public fun SimpleAnnotated() = UastEmptyExpression - public final fun method() : void = [!] UnknownKotlinExpression (BLOCK) + public final fun method() : void { + [!] UnknownKotlinExpression (CALL_EXPRESSION) + } public final fun getProperty() : java.lang.String = UastEmptyExpression } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/StringTemplateComplex.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/StringTemplateComplex.log.fir.txt index d482c663881..4061e629cf4 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/StringTemplateComplex.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/StringTemplateComplex.log.fir.txt @@ -37,6 +37,11 @@ UFile (package = ) UMethod (name = simpleForTemplate) UParameter (name = i) ULiteralExpression (value = "not-yet-compile-time-constant") - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) UMethod (name = foo) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/StringTemplateComplex.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/StringTemplateComplex.render.fir.txt index 42a39bf37a4..91c5cba0143 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/StringTemplateComplex.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/StringTemplateComplex.render.fir.txt @@ -11,6 +11,12 @@ public final class StringTemplateComplexKt { public static final fun getLiteralInLiteral() : java.lang.String = UastEmptyExpression public static final fun getLiteralInLiteral2() : java.lang.String = UastEmptyExpression public static final fun getEmpty() : java.lang.String = UastEmptyExpression - public static final fun simpleForTemplate(i: int) : java.lang.String = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) - public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun simpleForTemplate(i: int) : java.lang.String { + return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) + } + public static final fun foo() : void { + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/StringTemplateComplexForUInjectionHost.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/StringTemplateComplexForUInjectionHost.log.fir.txt index 495ddd7cf21..0f7cccd2981 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/StringTemplateComplexForUInjectionHost.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/StringTemplateComplexForUInjectionHost.log.fir.txt @@ -37,6 +37,11 @@ UFile (package = ) UMethod (name = simpleForTemplate) UParameter (name = i) ULiteralExpression (value = "not-yet-compile-time-constant") - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) UMethod (name = foo) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/StringTemplateComplexForUInjectionHost.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/StringTemplateComplexForUInjectionHost.render.fir.txt index 9d8633f86b2..1dd84e67b66 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/StringTemplateComplexForUInjectionHost.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/StringTemplateComplexForUInjectionHost.render.fir.txt @@ -11,6 +11,12 @@ public final class StringTemplateComplexForUInjectionHostKt { public static final fun getLiteralInLiteral() : java.lang.String = UastEmptyExpression public static final fun getLiteralInLiteral2() : java.lang.String = UastEmptyExpression public static final fun getEmpty() : java.lang.String = UastEmptyExpression - public static final fun simpleForTemplate(i: int) : java.lang.String = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) - public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun simpleForTemplate(i: int) : java.lang.String { + return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) + } + public static final fun foo() : void { + [!] UnknownKotlinExpression (CALL_EXPRESSION) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/SuperCalls.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/SuperCalls.log.fir.txt index f42267f564d..19114c95643 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/SuperCalls.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/SuperCalls.log.fir.txt @@ -5,7 +5,7 @@ UFile (package = ) UMethod (name = getAnon) UMethod (name = cons) UParameter (name = a) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression UClass (name = A) UField (name = str) UMethod (name = A) @@ -15,7 +15,7 @@ UFile (package = ) UMethod (name = getStr) UMethod (name = foo) UParameter (name = a) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression UClass (name = B) UMethod (name = B) UParameter (name = param) @@ -24,10 +24,12 @@ UFile (package = ) UParameter (name = p) UMethod (name = C) UParameter (name = i) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) UMethod (name = foo) UParameter (name = a) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) UClass (name = O) UField (name = INSTANCE) UMethod (name = O) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/SuperCalls.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/SuperCalls.render.fir.txt index 62a52a2db0b..4a96904de0d 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/SuperCalls.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/SuperCalls.render.fir.txt @@ -1,7 +1,8 @@ public final class SuperCallsKt { private static final var anon: A = [!] UnknownKotlinExpression (OBJECT_LITERAL) public static final fun getAnon() : A = UastEmptyExpression - public static final fun cons(a: A) : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun cons(a: A) : void { + } } public class A { @@ -9,7 +10,8 @@ public class A { public fun A(str: java.lang.String) = UastEmptyExpression public fun A(i: int) = UastEmptyExpression public final fun getStr() : java.lang.String = UastEmptyExpression - public fun foo(a: long) : void = [!] UnknownKotlinExpression (BLOCK) + public fun foo(a: long) : void { + } } public final class B : null { @@ -18,8 +20,12 @@ public final class B : null { public final class C : null { public fun C(p: java.lang.String) = UastEmptyExpression - public fun C(i: int) = [!] UnknownKotlinExpression (BLOCK) - public fun foo(a: long) : void = [!] UnknownKotlinExpression (BLOCK) + public fun C(i: int) { + [!] UnknownKotlinExpression (CALL_EXPRESSION) + } + public fun foo(a: long) : void { + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + } } public final class O : null { diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Suspend.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Suspend.log.fir.txt index 84c7fa93438..cff6b3ecb1f 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Suspend.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Suspend.log.fir.txt @@ -1,10 +1,16 @@ UFile (package = test.pkg) UClass (name = SuspendKt) UMethod (name = top) - [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) UClass (name = Context) UMethod (name = Context) UMethod (name = inner) - [!] UnknownKotlinExpression (CALL_EXPRESSION) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) UMethod (name = suspendPrivate) - [!] UnknownKotlinExpression (CALL_EXPRESSION) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (CALL_EXPRESSION) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Suspend.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Suspend.render.fir.txt index 347483f246d..8e460c57858 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/Suspend.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/Suspend.render.fir.txt @@ -1,11 +1,17 @@ package test.pkg public final class SuspendKt { - public static final fun top() : int = [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + public static final fun top() : int { + return [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) + } } public final class Context { public fun Context() = UastEmptyExpression - public final fun inner() : int = [!] UnknownKotlinExpression (CALL_EXPRESSION) - private final fun suspendPrivate() : int = [!] UnknownKotlinExpression (CALL_EXPRESSION) + public final fun inner() : int { + return [!] UnknownKotlinExpression (CALL_EXPRESSION) + } + private final fun suspendPrivate() : int { + return [!] UnknownKotlinExpression (CALL_EXPRESSION) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/TryCatch.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/TryCatch.log.fir.txt index f1ced15998e..214b1f43dca 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/TryCatch.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/TryCatch.log.fir.txt @@ -2,20 +2,22 @@ UFile (package = ) UClass (name = TryCatch) UMethod (name = TryCatch) UMethod (name = catches) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (TRY) UMethod (name = body) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression UMethod (name = catcher) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression UMethod (name = finalizer) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression UClass (name = TryCatchAnnotations) UMethod (name = TryCatchAnnotations) UMethod (name = catches) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (TRY) UMethod (name = body) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression UMethod (name = catcher) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression UMethod (name = finalizer) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/TryCatch.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/TryCatch.render.fir.txt index 22051ed5da5..a7ac8aff27a 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/TryCatch.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/TryCatch.render.fir.txt @@ -1,15 +1,25 @@ public final class TryCatch { public fun TryCatch() = UastEmptyExpression - public final fun catches() : void = [!] UnknownKotlinExpression (BLOCK) - public final fun body() : void = [!] UnknownKotlinExpression (BLOCK) - public final fun catcher() : void = [!] UnknownKotlinExpression (BLOCK) - public final fun finalizer() : void = [!] UnknownKotlinExpression (BLOCK) + public final fun catches() : void { + [!] UnknownKotlinExpression (TRY) + } + public final fun body() : void { + } + public final fun catcher() : void { + } + public final fun finalizer() : void { + } } public final class TryCatchAnnotations { public fun TryCatchAnnotations() = UastEmptyExpression - public final fun catches() : void = [!] UnknownKotlinExpression (BLOCK) - public final fun body() : void = [!] UnknownKotlinExpression (BLOCK) - public final fun catcher() : void = [!] UnknownKotlinExpression (BLOCK) - public final fun finalizer() : void = [!] UnknownKotlinExpression (BLOCK) + public final fun catches() : void { + [!] UnknownKotlinExpression (TRY) + } + public final fun body() : void { + } + public final fun catcher() : void { + } + public final fun finalizer() : void { + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeAliasExpansionWithOtherAliasInArgument.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeAliasExpansionWithOtherAliasInArgument.log.fir.txt index b7d5182f8ce..d0023ca8562 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeAliasExpansionWithOtherAliasInArgument.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeAliasExpansionWithOtherAliasInArgument.log.fir.txt @@ -3,8 +3,12 @@ UFile (package = ) UMethod (name = foo) UParameter (name = $this$foo) UParameter (name = x) - ULiteralExpression (value = "not-yet-compile-time-constant") + UBlockExpression + UReturnExpression + ULiteralExpression (value = "not-yet-compile-time-constant") UMethod (name = bar) UParameter (name = $this$bar) UParameter (name = x) - ULiteralExpression (value = "not-yet-compile-time-constant") + UBlockExpression + UReturnExpression + ULiteralExpression (value = "not-yet-compile-time-constant") diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeAliasExpansionWithOtherAliasInArgument.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeAliasExpansionWithOtherAliasInArgument.render.fir.txt index 33536c9372f..5bc8b8986d8 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeAliasExpansionWithOtherAliasInArgument.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeAliasExpansionWithOtherAliasInArgument.render.fir.txt @@ -1,4 +1,8 @@ public final class TypeAliasExpansionWithOtherAliasInArgumentKt { - public static final fun foo($this$foo: kotlin.jvm.functions.Function1, x: kotlin.jvm.functions.Function1) : kotlin.jvm.functions.Function1 = "not-yet-compile-time-constant" - public static final fun bar($this$bar: java.util.Map, x: java.util.Map) : java.util.Map = "not-yet-compile-time-constant" + public static final fun foo($this$foo: kotlin.jvm.functions.Function1, x: kotlin.jvm.functions.Function1) : kotlin.jvm.functions.Function1 { + return "not-yet-compile-time-constant" + } + public static final fun bar($this$bar: java.util.Map, x: java.util.Map) : java.util.Map { + return "not-yet-compile-time-constant" + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeInAnnotation.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeInAnnotation.log.fir.txt index 5ea6f8aca10..f5712729d13 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeInAnnotation.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeInAnnotation.log.fir.txt @@ -2,4 +2,4 @@ UFile (package = ) UClass (name = C) UMethod (name = C) UMethod (name = foo) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeInAnnotation.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeInAnnotation.render.fir.txt index 6a84b6f070f..2e977970f31 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeInAnnotation.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeInAnnotation.render.fir.txt @@ -1,4 +1,5 @@ public final class C { public fun C() = UastEmptyExpression - public final fun foo() : void = [!] UnknownKotlinExpression (BLOCK) + public final fun foo() : void { + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeReferences.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeReferences.log.fir.txt index dcd26aa9a41..c8c6d0804b6 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeReferences.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeReferences.log.fir.txt @@ -2,7 +2,20 @@ UFile (package = ) UClass (name = TypeReferencesKt) UMethod (name = foo) UParameter (name = parameter) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + UReturnExpression + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) UMethod (name = parameterizedFoo) UParameter (name = arg) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (CALL_EXPRESSION) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeReferences.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeReferences.render.fir.txt index 0e3da822680..636ea3de16e 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeReferences.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/TypeReferences.render.fir.txt @@ -1,4 +1,18 @@ public final class TypeReferencesKt { - public static final fun foo(parameter: int) : java.lang.String = [!] UnknownKotlinExpression (BLOCK) - public static final fun parameterizedFoo(arg: T) : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun foo(parameter: int) : java.lang.String { + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) + } + public static final fun parameterizedFoo(arg: T) : void { + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (CALL_EXPRESSION) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/UnexpectedContainerException.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/UnexpectedContainerException.log.fir.txt index 9c0ba8660fd..7aefb675c98 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/UnexpectedContainerException.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/UnexpectedContainerException.log.fir.txt @@ -7,4 +7,5 @@ UFile (package = ) UMethod (name = crashMe) UParameter (name = clazz) UParameter (name = factory) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (THROW) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/UnexpectedContainerException.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/UnexpectedContainerException.render.fir.txt index 3ffa39efc9a..39c2b2d10e1 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/UnexpectedContainerException.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/UnexpectedContainerException.render.fir.txt @@ -4,5 +4,7 @@ public abstract interface Callback { public final class Model { public fun Model() = UastEmptyExpression - public final fun crashMe(clazz: java.lang.Class, factory: kotlin.jvm.functions.Function0) : void = [!] UnknownKotlinExpression (BLOCK) + public final fun crashMe(clazz: java.lang.Class, factory: kotlin.jvm.functions.Function0) : void { + [!] UnknownKotlinExpression (THROW) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenAndDestructing.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenAndDestructing.log.fir.txt index 7e5fcfb4380..b94c96dc828 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenAndDestructing.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenAndDestructing.log.fir.txt @@ -2,4 +2,6 @@ UFile (package = ) UClass (name = WhenAndDestructingKt) UMethod (name = getElementsAdditionalResolve) UParameter (name = string) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (WHEN) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenAndDestructing.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenAndDestructing.render.fir.txt index d16d3056c5c..7f694ed565a 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenAndDestructing.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenAndDestructing.render.fir.txt @@ -1,3 +1,6 @@ public final class WhenAndDestructingKt { - public static final fun getElementsAdditionalResolve(string: java.lang.String) : java.lang.String = [!] UnknownKotlinExpression (BLOCK) + public static final fun getElementsAdditionalResolve(string: java.lang.String) : java.lang.String { + [!] UnknownKotlinExpression (PROPERTY) + [!] UnknownKotlinExpression (WHEN) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenIs.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenIs.log.fir.txt index fec9753c754..483f23f3afb 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenIs.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenIs.log.fir.txt @@ -2,4 +2,6 @@ UFile (package = ) UClass (name = WhenIsKt) UMethod (name = foo) UParameter (name = bar) - [!] UnknownKotlinExpression (WHEN) + UBlockExpression + UReturnExpression + [!] UnknownKotlinExpression (WHEN) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenIs.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenIs.render.fir.txt index 043b3de76a2..ec5c0088fe1 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenIs.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenIs.render.fir.txt @@ -1,3 +1,5 @@ public final class WhenIsKt { - public static final fun foo(bar: java.lang.Object) : void = [!] UnknownKotlinExpression (WHEN) + public static final fun foo(bar: java.lang.Object) : void { + return [!] UnknownKotlinExpression (WHEN) + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenStringLiteral.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenStringLiteral.log.fir.txt index 2a745bb8669..7adb13029ac 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenStringLiteral.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenStringLiteral.log.fir.txt @@ -7,4 +7,6 @@ UFile (package = ) UMethod (name = getA) UMethod (name = getB) UMethod (name = ) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + ULiteralExpression (value = "abc1") + ULiteralExpression (value = "def1") diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenStringLiteral.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenStringLiteral.render.fir.txt index b7459db9e4e..9ae929f55df 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenStringLiteral.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/WhenStringLiteral.render.fir.txt @@ -3,5 +3,8 @@ public final class WhenStringLiteralKt { private static final var b: int = [!] UnknownKotlinExpression (WHEN) public static final fun getA() : java.lang.String = UastEmptyExpression public static final fun getB() : int = UastEmptyExpression - public static final fun () : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun () : void { + "abc1" + "def1" + } } diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ea101715.log.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ea101715.log.fir.txt index d47f58babf6..7c189cd4d8d 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ea101715.log.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ea101715.log.fir.txt @@ -1,7 +1,8 @@ UFile (package = ) UClass (name = Ea101715Kt) UMethod (name = a) - [!] UnknownKotlinExpression (BLOCK) + UBlockExpression + [!] UnknownKotlinExpression (PROPERTY) UClass (name = Obj) UField (name = INSTANCE) UMethod (name = Obj) diff --git a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ea101715.render.fir.txt b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ea101715.render.fir.txt index c2c67ac8119..c8134b95bc7 100644 --- a/plugins/uast-kotlin-fir/testData/legacyRenderLog/ea101715.render.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyRenderLog/ea101715.render.fir.txt @@ -1,5 +1,7 @@ public final class Ea101715Kt { - public static final fun a() : void = [!] UnknownKotlinExpression (BLOCK) + public static final fun a() : void { + [!] UnknownKotlinExpression (PROPERTY) + } } public final class Obj { diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/AnnotatedExpressions.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/AnnotatedExpressions.types.fir.txt index bf1751f4e47..fe7759d4d2f 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/AnnotatedExpressions.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/AnnotatedExpressions.types.fir.txt @@ -1,7 +1,15 @@ UFile (package = ) [public final class AnnotatedExpressionsKt {...] UClass (name = AnnotatedExpressionsKt) [public final class AnnotatedExpressionsKt {...}] - UMethod (name = foo) [public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = annotatedSwitch) [public static final fun annotatedSwitch(str: java.lang.String) : java.lang.Integer = [!] UnknownKotlinExpression (WHEN)] + UMethod (name = foo) [public static final fun foo() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (ANNOTATED_EXPRESSION) [[!] UnknownKotlinExpression (ANNOTATED_EXPRESSION)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (ANNOTATED_EXPRESSION) [[!] UnknownKotlinExpression (ANNOTATED_EXPRESSION)] + [!] UnknownKotlinExpression (ANNOTATED_EXPRESSION) [[!] UnknownKotlinExpression (ANNOTATED_EXPRESSION)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + UMethod (name = annotatedSwitch) [public static final fun annotatedSwitch(str: java.lang.String) : java.lang.Integer {...}] UParameter (name = str) [var str: java.lang.String] - [!] UnknownKotlinExpression (WHEN) [[!] UnknownKotlinExpression (WHEN)] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (WHEN)] + [!] UnknownKotlinExpression (WHEN) [[!] UnknownKotlinExpression (WHEN)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/AnnotationParameters.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/AnnotationParameters.types.fir.txt index 7db9c01e60f..fa796e744f3 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/AnnotationParameters.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/AnnotationParameters.types.fir.txt @@ -1,13 +1,21 @@ UFile (package = ) [public final class AnnotationParametersKt {...] UClass (name = AnnotationParametersKt) [public final class AnnotationParametersKt {...}] - UMethod (name = foo) [public static final fun foo() : int = "not-yet-compile-time-constant"] - ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] - UMethod (name = bar) [public static final fun bar() : void = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] - UMethod (name = fooWithArrLiteral) [public static final fun fooWithArrLiteral() : int = "not-yet-compile-time-constant"] - ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] - UMethod (name = fooWithStrArrLiteral) [public static final fun fooWithStrArrLiteral() : int = "not-yet-compile-time-constant"] - ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] + UMethod (name = foo) [public static final fun foo() : int {...}] + UBlockExpression [{...}] + UReturnExpression [return "not-yet-compile-time-constant"] + ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] + UMethod (name = bar) [public static final fun bar() : void {...}] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + UMethod (name = fooWithArrLiteral) [public static final fun fooWithArrLiteral() : int {...}] + UBlockExpression [{...}] + UReturnExpression [return "not-yet-compile-time-constant"] + ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] + UMethod (name = fooWithStrArrLiteral) [public static final fun fooWithStrArrLiteral() : int {...}] + UBlockExpression [{...}] + UReturnExpression [return "not-yet-compile-time-constant"] + ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] UClass (name = IntRange) [public abstract annotation IntRange {...}] UMethod (name = from) [public abstract fun from() : long = UastEmptyExpression] UMethod (name = to) [public abstract fun to() : long = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/Anonymous.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/Anonymous.types.fir.txt index 41c9fe57c45..ff4c8115724 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/Anonymous.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/Anonymous.types.fir.txt @@ -2,7 +2,14 @@ UFile (package = ) [import java.io.Closeable...] UImportStatement (isOnDemand = false) [import java.io.Closeable] UImportStatement (isOnDemand = false) [import java.io.InputStream] UClass (name = AnonymousKt) [public final class AnonymousKt {...}] - UMethod (name = foo) [public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = withErr) [public static final fun withErr() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public static final fun foo() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + UMethod (name = withErr) [public static final fun withErr() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/Assertion.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/Assertion.types.fir.txt index 7d93ebf1efd..4f6b64da8ba 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/Assertion.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/Assertion.types.fir.txt @@ -1,4 +1,7 @@ UFile (package = ) [public final class AssertionKt {...] UClass (name = AssertionKt) [public final class AssertionKt {...}] - UMethod (name = foo) [public static final fun foo() : java.lang.String = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public static final fun foo() : java.lang.String {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + UReturnExpression [return [!] UnknownKotlinExpression (POSTFIX_EXPRESSION)] + [!] UnknownKotlinExpression (POSTFIX_EXPRESSION) [[!] UnknownKotlinExpression (POSTFIX_EXPRESSION)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/Bitwise.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/Bitwise.types.fir.txt index 72c7d8d3397..2fe202e431f 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/Bitwise.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/Bitwise.types.fir.txt @@ -1,6 +1,26 @@ UFile (package = ) [public final class BitwiseKt {...] UClass (name = BitwiseKt) [public final class BitwiseKt {...}] - UMethod (name = foo) [public static final fun foo() : int = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = bar) [public static final fun bar() : long = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public static final fun foo() : int {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + UReturnExpression [return [!] UnknownKotlinExpression (BINARY_EXPRESSION)] + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] + UMethod (name = bar) [public static final fun bar() : long {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + UReturnExpression [return [!] UnknownKotlinExpression (BINARY_EXPRESSION)] + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/BrokenMethod.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/BrokenMethod.types.fir.txt index 472964e1924..293146f1506 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/BrokenMethod.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/BrokenMethod.types.fir.txt @@ -1,5 +1,6 @@ UFile (package = ) [public final class BrokenMethodKt {...] UClass (name = BrokenMethodKt) [public final class BrokenMethodKt {...}] - UMethod (name = main) [public static final fun main(args: java.lang.String[]) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = main) [public static final fun main(args: java.lang.String[]) : void {...}] UParameter (name = args) [var args: java.lang.String[]] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (CLASS) [[!] UnknownKotlinExpression (CLASS)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/ConstructorDelegate.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/ConstructorDelegate.types.fir.txt index ba42acefab2..97fc44b0e28 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/ConstructorDelegate.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/ConstructorDelegate.types.fir.txt @@ -1,8 +1,10 @@ UFile (package = ) [public final class ConstructorDelegateKt {...] UClass (name = ConstructorDelegateKt) [public final class ConstructorDelegateKt {...}] - UMethod (name = createBase) [public static final fun createBase(i: int) : Base = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = createBase) [public static final fun createBase(i: int) : Base {...}] UParameter (name = i) [var i: int] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (CALL_EXPRESSION)] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] UClass (name = Base) [public abstract interface Base {...}] UMethod (name = print) [public abstract fun print() : void = UastEmptyExpression] UClass (name = BaseImpl) [public final class BaseImpl : null {...}] @@ -10,8 +12,9 @@ UFile (package = ) [public final class ConstructorDelegateKt {...] UMethod (name = BaseImpl) [public fun BaseImpl(x: int) = UastEmptyExpression] UParameter (name = x) [var x: int] UMethod (name = getX) [public final fun getX() : int = UastEmptyExpression] - UMethod (name = print) [public fun print() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = print) [public fun print() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] UClass (name = Derived) [public final class Derived : null, null {...}] UMethod (name = Derived) [public fun Derived(b: Base) = UastEmptyExpression] UParameter (name = b) [var b: Base] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/Constructors.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/Constructors.types.fir.txt index ddbff6ab081..76066ca950d 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/Constructors.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/Constructors.types.fir.txt @@ -24,23 +24,29 @@ UFile (package = ) [public final class A {...] UMethod (name = AOnlyInit) [public fun AOnlyInit() = UastEmptyExpression] UClass (name = AWithSecondary) [public final class AWithSecondary {...}] UField (name = a) [private var a: java.lang.String] - UMethod (name = AWithSecondary) [public fun AWithSecondary(i: int) = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = AWithSecondary) [public fun AWithSecondary(i: int) {...}] UParameter (name = i) [var i: int] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = AWithSecondary) [public fun AWithSecondary(s: java.lang.String) = [!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] + UMethod (name = AWithSecondary) [public fun AWithSecondary(s: java.lang.String) {...}] UParameter (name = s) [var s: java.lang.String] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] UMethod (name = getA) [public final fun getA() : java.lang.String = UastEmptyExpression] UMethod (name = setA) [public final fun setA(value: java.lang.String) : void = UastEmptyExpression] UParameter (name = value) [var value: java.lang.String] UClass (name = AWithSecondaryInit) [public final class AWithSecondaryInit {...}] UField (name = a) [private var a: java.lang.String] - UMethod (name = AWithSecondaryInit) [public fun AWithSecondaryInit(i: int) = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = AWithSecondaryInit) [public fun AWithSecondaryInit(i: int) {...}] UParameter (name = i) [var i: int] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = AWithSecondaryInit) [public fun AWithSecondaryInit(s: java.lang.String) = [!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] + UMethod (name = AWithSecondaryInit) [public fun AWithSecondaryInit(s: java.lang.String) {...}] UParameter (name = s) [var s: java.lang.String] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] UMethod (name = getA) [public final fun getA() : java.lang.String = UastEmptyExpression] UMethod (name = setA) [public final fun setA(value: java.lang.String) : void = UastEmptyExpression] UParameter (name = value) [var value: java.lang.String] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/DefaultImpls.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/DefaultImpls.types.fir.txt index 9520b1917aa..5983478af39 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/DefaultImpls.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/DefaultImpls.types.fir.txt @@ -1,6 +1,8 @@ UFile (package = ) [public abstract interface Foo {...] UClass (name = Foo) [public abstract interface Foo {...}] - UMethod (name = bar) [public fun bar() : java.lang.String = "Hello!"] - ULiteralExpression (value = "Hello!") ["Hello!"] : PsiType:String + UMethod (name = bar) [public fun bar() : java.lang.String {...}] + UBlockExpression [{...}] + UReturnExpression [return "Hello!"] + ULiteralExpression (value = "Hello!") ["Hello!"] : PsiType:String UClass (name = Baz) [public final class Baz : null {...}] UMethod (name = Baz) [public fun Baz() = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/DefaultParameterValues.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/DefaultParameterValues.types.fir.txt index 9838a46cb80..dfde2e5bbc4 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/DefaultParameterValues.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/DefaultParameterValues.types.fir.txt @@ -1,8 +1,8 @@ UFile (package = ) [public final class DefaultParameterValuesKt {...] UClass (name = DefaultParameterValuesKt) [public final class DefaultParameterValuesKt {...}] - UMethod (name = foo) [public static final fun foo(a: int, foo: java.lang.String) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public static final fun foo(a: int, foo: java.lang.String) : void {...}] UParameter (name = a) [var a: int = "not-yet-compile-time-constant"] ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] UParameter (name = foo) [var foo: java.lang.String = "not-yet-compile-time-constant"] ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/DeprecatedHidden.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/DeprecatedHidden.types.fir.txt index 76475a3daf0..1c87ddb8c79 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/DeprecatedHidden.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/DeprecatedHidden.types.fir.txt @@ -1,5 +1,5 @@ UFile (package = test.pkg) [package test.pkg...] UClass (name = Test) [public final class Test {...}] UMethod (name = Test) [public fun Test() = UastEmptyExpression] - UMethod (name = test1) [public final fun test1() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = test1) [public final fun test1() : void {...}] + UBlockExpression [{...}] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/DestructuringDeclaration.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/DestructuringDeclaration.types.fir.txt index cb4ba3eb90f..f96d0b10119 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/DestructuringDeclaration.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/DestructuringDeclaration.types.fir.txt @@ -1,5 +1,7 @@ UFile (package = ) [public final class DestructuringDeclarationKt {...] UClass (name = DestructuringDeclarationKt) [public final class DestructuringDeclarationKt {...}] - UMethod (name = foo) [public static final fun foo(data: java.lang.Object) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public static final fun foo(data: java.lang.Object) : void {...}] UParameter (name = data) [var data: java.lang.Object] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (DESTRUCTURING_DECLARATION) [[!] UnknownKotlinExpression (DESTRUCTURING_DECLARATION)] + [!] UnknownKotlinExpression (DESTRUCTURING_DECLARATION) [[!] UnknownKotlinExpression (DESTRUCTURING_DECLARATION)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/Elvis.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/Elvis.types.fir.txt index 059c5a6d5a8..baffa3816cd 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/Elvis.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/Elvis.types.fir.txt @@ -1,9 +1,15 @@ UFile (package = ) [public final class ElvisKt {...] UClass (name = ElvisKt) [public final class ElvisKt {...}] - UMethod (name = foo) [public static final fun foo(bar: java.lang.String) : java.lang.String = "not-yet-compile-time-constant"] + UMethod (name = foo) [public static final fun foo(bar: java.lang.String) : java.lang.String {...}] UParameter (name = bar) [var bar: java.lang.String] - ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] - UMethod (name = bar) [public static final fun bar() : int = "not-yet-compile-time-constant"] - ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] - UMethod (name = baz) [public static final fun baz() : java.lang.String = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + UReturnExpression [return "not-yet-compile-time-constant"] + ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] + UMethod (name = bar) [public static final fun bar() : int {...}] + UBlockExpression [{...}] + UReturnExpression [return "not-yet-compile-time-constant"] + ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] + UMethod (name = baz) [public static final fun baz() : java.lang.String {...}] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (BINARY_EXPRESSION)] + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/ElvisType.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/ElvisType.types.fir.txt index fbc22312e5e..dddb6015e5a 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/ElvisType.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/ElvisType.types.fir.txt @@ -1,8 +1,10 @@ UFile (package = ) [public final class ElvisTypeKt {...] UClass (name = ElvisTypeKt) [public final class ElvisTypeKt {...}] - UMethod (name = foo) [public static final fun foo(text: java.lang.String) : void = [!] UnknownKotlinExpression (CALL_EXPRESSION)] + UMethod (name = foo) [public static final fun foo(text: java.lang.String) : void {...}] UParameter (name = text) [var text: java.lang.String] - [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] - UMethod (name = bar) [public static final fun bar(o: java.lang.Object) : void = [!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (CALL_EXPRESSION)] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + UMethod (name = bar) [public static final fun bar(o: java.lang.Object) : void {...}] UParameter (name = o) [var o: java.lang.Object] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/IfStatement.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/IfStatement.types.fir.txt index e581b364b2c..869e31e784c 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/IfStatement.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/IfStatement.types.fir.txt @@ -1,4 +1,5 @@ UFile (package = ) [public final class IfStatementKt {...] UClass (name = IfStatementKt) [public final class IfStatementKt {...}] - UMethod (name = foo) [public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public static final fun foo() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/In.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/In.types.fir.txt index 516b43857c4..150143fcbcb 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/In.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/In.types.fir.txt @@ -1,4 +1,8 @@ UFile (package = ) [public final class InKt {...] UClass (name = InKt) [public final class InKt {...}] - UMethod (name = foo) [public static final fun foo() : boolean = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public static final fun foo() : boolean {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + UReturnExpression [return [!] UnknownKotlinExpression (BINARY_EXPRESSION)] + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/InferenceInsideUnresolvedConstructor.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/InferenceInsideUnresolvedConstructor.types.fir.txt index 52592c8ddfd..e51d68634c5 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/InferenceInsideUnresolvedConstructor.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/InferenceInsideUnresolvedConstructor.types.fir.txt @@ -1,7 +1,11 @@ UFile (package = ) [public final class InferenceInsideUnresolvedConstructorKt {...] UClass (name = InferenceInsideUnresolvedConstructorKt) [public final class InferenceInsideUnresolvedConstructorKt {...}] - UMethod (name = getBar) [public static final fun getBar() : java.lang.Object = [!] UnknownKotlinExpression (CALL_EXPRESSION)] - [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] - UMethod (name = id) [public static final fun id(x: T) : T = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + UMethod (name = getBar) [public static final fun getBar() : java.lang.Object {...}] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (CALL_EXPRESSION)] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + UMethod (name = id) [public static final fun id(x: T) : T {...}] UParameter (name = x) [var x: T] - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/InnerClasses.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/InnerClasses.types.fir.txt index 69b0f06ea92..8f7af96022e 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/InnerClasses.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/InnerClasses.types.fir.txt @@ -9,9 +9,13 @@ UFile (package = ) [public final class Foo {...] UParameter (name = b) [var b: int] UMethod (name = getA) [public final fun getA() : int = UastEmptyExpression] UMethod (name = getB) [public final fun getB() : int = UastEmptyExpression] - UMethod (name = getAPlusB) [public final fun getAPlusB() : int = [!] UnknownKotlinExpression (BINARY_EXPRESSION)] - [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] + UMethod (name = getAPlusB) [public final fun getAPlusB() : int {...}] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (BINARY_EXPRESSION)] + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] UClass (name = Baz) [public static final class Baz {...}] UMethod (name = Baz) [public fun Baz() = UastEmptyExpression] - UMethod (name = doNothing) [public final fun doNothing() : void = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + UMethod (name = doNothing) [public final fun doNothing() : void {...}] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/InnerNonFixedTypeVariable.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/InnerNonFixedTypeVariable.types.fir.txt index df69d79c559..97c1aef2412 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/InnerNonFixedTypeVariable.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/InnerNonFixedTypeVariable.types.fir.txt @@ -1,7 +1,8 @@ UFile (package = ) [public final class InnerNonFixedTypeVariableKt {...] UClass (name = InnerNonFixedTypeVariableKt) [public final class InnerNonFixedTypeVariableKt {...}] - UMethod (name = test) [public static final fun test(list: java.util.List) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = test) [public static final fun test(list: java.util.List) : void {...}] UParameter (name = list) [var list: java.util.List] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] UClass (name = Some) [public final class Some {...}] UMethod (name = Some) [public fun Some() = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/LambdaReturn.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/LambdaReturn.types.fir.txt index 757a5d25840..98e5d6d391b 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/LambdaReturn.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/LambdaReturn.types.fir.txt @@ -1,4 +1,12 @@ UFile (package = org.jetbrains.uast.kotlin) [package org.jetbrains.uast.kotlin...] UClass (name = LambdaReturnKt) [public final class LambdaReturnKt {...}] - UMethod (name = foo) [public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public static final fun foo() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/Lambdas.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/Lambdas.types.fir.txt index d1d30971dbc..e5d5dc48a85 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/Lambdas.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/Lambdas.types.fir.txt @@ -1,10 +1,15 @@ UFile (package = ) [import java.util.stream.Stream...] UImportStatement (isOnDemand = false) [import java.util.stream.Stream] UClass (name = LambdasKt) [public final class LambdasKt {...}] - UMethod (name = foo) [public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = doSelectItem) [public static final fun doSelectItem(selectItemFunction: kotlin.jvm.functions.Function0) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public static final fun foo() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + UMethod (name = doSelectItem) [public static final fun doSelectItem(selectItemFunction: kotlin.jvm.functions.Function0) : void {...}] UParameter (name = selectItemFunction) [var selectItemFunction: kotlin.jvm.functions.Function0] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = lambdaInPlaceCall) [public static final fun lambdaInPlaceCall() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + UMethod (name = lambdaInPlaceCall) [public static final fun lambdaInPlaceCall() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (WHILE) [[!] UnknownKotlinExpression (WHILE)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/LocalDeclarations.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/LocalDeclarations.types.fir.txt index 0e4d898bce8..1d66737de23 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/LocalDeclarations.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/LocalDeclarations.types.fir.txt @@ -1,4 +1,10 @@ UFile (package = ) [public final class LocalDeclarationsKt {...] UClass (name = LocalDeclarationsKt) [public final class LocalDeclarationsKt {...}] - UMethod (name = foo) [public static final fun foo() : boolean = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public static final fun foo() : boolean {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (CLASS) [[!] UnknownKotlinExpression (CLASS)] + [!] UnknownKotlinExpression (FUN) [[!] UnknownKotlinExpression (FUN)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (FUN) [[!] UnknownKotlinExpression (FUN)] + UReturnExpression [return [!] UnknownKotlinExpression (BINARY_EXPRESSION)] + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/LocalVariableWithAnnotation.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/LocalVariableWithAnnotation.types.fir.txt index 20cfeb2bf11..834341067cf 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/LocalVariableWithAnnotation.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/LocalVariableWithAnnotation.types.fir.txt @@ -1,5 +1,6 @@ UFile (package = ) [public final class LocalVariableWithAnnotationKt {...] UClass (name = LocalVariableWithAnnotationKt) [public final class LocalVariableWithAnnotationKt {...}] - UMethod (name = foo) [public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public static final fun foo() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] UClass (name = TestAnnotation) [public abstract annotation TestAnnotation {...}] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/MethodReference.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/MethodReference.types.fir.txt index 9716268cfea..24a48046837 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/MethodReference.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/MethodReference.types.fir.txt @@ -5,5 +5,5 @@ UFile (package = ) [public final class MethodReferenceKt {...] UMethod (name = getX) [public static final fun getX() : kotlin.reflect.KFunction = UastEmptyExpression] UClass (name = Foo) [public final class Foo {...}] UMethod (name = Foo) [public fun Foo() = UastEmptyExpression] - UMethod (name = bar) [public final fun bar() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = bar) [public final fun bar() : void {...}] + UBlockExpression [{...}] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/NameContainingFile.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/NameContainingFile.types.fir.txt index 593937e1844..c4c010c703b 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/NameContainingFile.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/NameContainingFile.types.fir.txt @@ -2,8 +2,8 @@ UFile (package = ) [public final class NameContainingFileKt {...] UClass (name = NameContainingFileKt) [public final class NameContainingFileKt {...}] UField (name = xyzzy) [private static final var xyzzy: int = "not-yet-compile-time-constant"] ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] - UMethod (name = bar) [public static final fun bar() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = bar) [public static final fun bar() : void {...}] + UBlockExpression [{...}] UMethod (name = getXyzzy) [public static final fun getXyzzy() : int = UastEmptyExpression] UClass (name = Foo) [public final class Foo {...}] UMethod (name = Foo) [public fun Foo() = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/NonTrivialIdentifiers.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/NonTrivialIdentifiers.types.fir.txt index eb2cc1c8f02..b64c6f40de8 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/NonTrivialIdentifiers.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/NonTrivialIdentifiers.types.fir.txt @@ -1,12 +1,16 @@ UFile (package = ) [public final class NonTrivialIdentifiersKt {...] UClass (name = NonTrivialIdentifiersKt) [public final class NonTrivialIdentifiersKt {...}] - UMethod (name = main) [public static final fun main(a: A) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = main) [public static final fun main(a: A) : void {...}] UParameter (name = a) [var a: A] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] UClass (name = A) [public final class A {...}] UMethod (name = A) [public fun A() = UastEmptyExpression] - UMethod (name = invoke) [public final fun invoke() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = invoke) [public final fun invoke(f: kotlin.jvm.functions.Function0) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = invoke) [public final fun invoke() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + UMethod (name = invoke) [public final fun invoke(f: kotlin.jvm.functions.Function0) : void {...}] UParameter (name = f) [var f: kotlin.jvm.functions.Function0] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/ParametersDisorder.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/ParametersDisorder.types.fir.txt index 8dd40a2f8d7..7124bce5111 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/ParametersDisorder.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/ParametersDisorder.types.fir.txt @@ -1,31 +1,42 @@ UFile (package = ) [public final class ParametersDisorderKt {...] UClass (name = ParametersDisorderKt) [public final class ParametersDisorderKt {...}] - UMethod (name = global) [public static final fun global(a: int, b: float) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = global) [public static final fun global(a: int, b: float) : void {...}] UParameter (name = a) [var a: int] UParameter (name = b) [var b: float] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = withDefault) [public static final fun withDefault(c: int, d: java.lang.String) : void = [!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + UMethod (name = withDefault) [public static final fun withDefault(c: int, d: java.lang.String) : void {...}] UParameter (name = c) [var c: int = "not-yet-compile-time-constant"] ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] UParameter (name = d) [var d: java.lang.String = "aaa"] ULiteralExpression (value = "aaa") ["aaa"] : PsiType:String - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = withReceiver) [public static final fun withReceiver($this$withReceiver: java.lang.String, a: int, b: float) : void = [!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + UMethod (name = withReceiver) [public static final fun withReceiver($this$withReceiver: java.lang.String, a: int, b: float) : void {...}] UParameter (name = $this$withReceiver) [var $this$withReceiver: java.lang.String] UParameter (name = a) [var a: int] UParameter (name = b) [var b: float] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = call) [public static final fun call() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = objectLiteral) [public static final fun objectLiteral() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + UMethod (name = call) [public static final fun call() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + UMethod (name = objectLiteral) [public static final fun objectLiteral() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (OBJECT_LITERAL) [[!] UnknownKotlinExpression (OBJECT_LITERAL)] UClass (name = A) [public final class A {...}] UMethod (name = A) [public fun A() = UastEmptyExpression] - UMethod (name = with2Receivers) [public final fun with2Receivers($this$with2Receivers: java.lang.String, a: int, b: float) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = with2Receivers) [public final fun with2Receivers($this$with2Receivers: java.lang.String, a: int, b: float) : void {...}] UParameter (name = $this$with2Receivers) [var $this$with2Receivers: java.lang.String] UParameter (name = a) [var a: int] UParameter (name = b) [var b: float] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] UClass (name = Parent) [public class Parent {...}] UMethod (name = Parent) [public fun Parent(a: java.lang.String, b: int) = UastEmptyExpression] UParameter (name = a) [var a: java.lang.String] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/ParametersWithDefaultValues.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/ParametersWithDefaultValues.types.fir.txt index e6549698cca..78ee768f3a8 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/ParametersWithDefaultValues.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/ParametersWithDefaultValues.types.fir.txt @@ -1,10 +1,10 @@ UFile (package = ) [public final class ParametersWithDefaultValuesKt {...] UClass (name = ParametersWithDefaultValuesKt) [public final class ParametersWithDefaultValuesKt {...}] - UMethod (name = foo) [public static final fun foo(a: int, b: java.lang.String, c: int, flag: boolean) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public static final fun foo(a: int, b: java.lang.String, c: int, flag: boolean) : void {...}] UParameter (name = a) [var a: int] UParameter (name = b) [var b: java.lang.String] UParameter (name = c) [var c: int = "not-yet-compile-time-constant"] ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] UParameter (name = flag) [var flag: boolean = "not-yet-compile-time-constant"] ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyAccessors.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyAccessors.types.fir.txt index 2cd0fc24839..e40bf203584 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyAccessors.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyAccessors.types.fir.txt @@ -1,11 +1,14 @@ UFile (package = ) [public final class PropertyTest {...] UClass (name = PropertyTest) [public final class PropertyTest {...}] UMethod (name = PropertyTest) [public fun PropertyTest() = UastEmptyExpression] - UMethod (name = getStringRepresentation) [public final fun getStringRepresentation() : java.lang.String = [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] - [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] - UMethod (name = setStringRepresentation) [public final fun setStringRepresentation(value: java.lang.String) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = getStringRepresentation) [public final fun getStringRepresentation() : java.lang.String {...}] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + UMethod (name = setStringRepresentation) [public final fun setStringRepresentation(value: java.lang.String) : void {...}] UParameter (name = value) [var value: java.lang.String] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = setDataFromString) [public final fun setDataFromString(data: java.lang.String) : void = [!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + UMethod (name = setDataFromString) [public final fun setDataFromString(data: java.lang.String) : void {...}] UParameter (name = data) [var data: java.lang.String] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyDelegate.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyDelegate.types.fir.txt index 7b3660927db..f557c1ab8fd 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyDelegate.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyDelegate.types.fir.txt @@ -1,6 +1,7 @@ UFile (package = ) [public final class PropertyDelegateKt {...] UClass (name = PropertyDelegateKt) [public final class PropertyDelegateKt {...}] UMethod (name = getSdCardPath) [public static final fun getSdCardPath() : java.lang.String = UastEmptyExpression] - UMethod (name = localPropertyTest) [public static final fun localPropertyTest() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = localPropertyTest) [public static final fun localPropertyTest() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] UMethod (name = getAnnotatedDelegate) [public static final fun getAnnotatedDelegate() : int = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyInitializer.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyInitializer.types.fir.txt index d2b84498171..87a7e4eb815 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyInitializer.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyInitializer.types.fir.txt @@ -1,8 +1,11 @@ UFile (package = ) [public final class TestPropertyInitializer {...] UClass (name = TestPropertyInitializer) [public final class TestPropertyInitializer {...}] UMethod (name = TestPropertyInitializer) [public fun TestPropertyInitializer() = UastEmptyExpression] - UMethod (name = getWithSetter) [public final fun getWithSetter() : java.lang.String = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] - UMethod (name = setWithSetter) [public final fun setWithSetter(p: java.lang.String) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = getWithSetter) [public final fun getWithSetter() : java.lang.String {...}] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + UMethod (name = setWithSetter) [public final fun setWithSetter(p: java.lang.String) : void {...}] UParameter (name = p) [var p: java.lang.String] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyInitializerWithoutSetter.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyInitializerWithoutSetter.types.fir.txt index d63ee365e87..52206cb46c0 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyInitializerWithoutSetter.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyInitializerWithoutSetter.types.fir.txt @@ -2,7 +2,9 @@ UFile (package = ) [public final class PropertyInitializerWithoutSetterKt {...] UClass (name = PropertyInitializerWithoutSetterKt) [public final class PropertyInitializerWithoutSetterKt {...}] UField (name = withoutSetter) [private static var withoutSetter: java.lang.String = "/sdcard"] ULiteralExpression (value = "/sdcard") ["/sdcard"] : PsiType:String - UMethod (name = getWithoutSetter) [public static final fun getWithoutSetter() : java.lang.String = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + UMethod (name = getWithoutSetter) [public static final fun getWithoutSetter() : java.lang.String {...}] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] UMethod (name = setWithoutSetter) [public static final fun setWithoutSetter(value: java.lang.String) : void = UastEmptyExpression] UParameter (name = value) [var value: java.lang.String] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyReferences.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyReferences.types.fir.txt index 72786302aaf..1c19c43e928 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyReferences.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyReferences.types.fir.txt @@ -1,10 +1,21 @@ UFile (package = ) [public final class PropertyReferencesKt {...] UClass (name = PropertyReferencesKt) [public final class PropertyReferencesKt {...}] - UMethod (name = properties) [public static final fun properties() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = ext) [public static final fun ext($this$ext: A) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = properties) [public static final fun properties() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] + [!] UnknownKotlinExpression (PREFIX_EXPRESSION) [[!] UnknownKotlinExpression (PREFIX_EXPRESSION)] + [!] UnknownKotlinExpression (POSTFIX_EXPRESSION) [[!] UnknownKotlinExpression (POSTFIX_EXPRESSION)] + UMethod (name = ext) [public static final fun ext($this$ext: A) : void {...}] UParameter (name = $this$ext) [var $this$ext: A] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] + [!] UnknownKotlinExpression (PREFIX_EXPRESSION) [[!] UnknownKotlinExpression (PREFIX_EXPRESSION)] + [!] UnknownKotlinExpression (POSTFIX_EXPRESSION) [[!] UnknownKotlinExpression (POSTFIX_EXPRESSION)] UClass (name = A) [public final class A {...}] UField (name = privateProp) [private var privateProp: int = "not-yet-compile-time-constant"] ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] @@ -14,6 +25,10 @@ UFile (package = ) [public final class PropertyReferencesKt {...] UMethod (name = getMutableProp) [public final fun getMutableProp() : int = UastEmptyExpression] UMethod (name = setMutableProp) [public final fun setMutableProp(value: int) : void = UastEmptyExpression] UParameter (name = value) [var value: int] - UMethod (name = add) [public final fun add(x: int) : int = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = add) [public final fun add(x: int) : int {...}] UParameter (name = x) [var x: int] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] + UReturnExpression [return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyWithAnnotation.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyWithAnnotation.types.fir.txt index 67f11230c30..74f9822fcf5 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyWithAnnotation.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/PropertyWithAnnotation.types.fir.txt @@ -3,11 +3,16 @@ UFile (package = ) [public final class PropertyWithAnnotationKt {...] UField (name = prop1) [private static final var prop1: int = "not-yet-compile-time-constant"] ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] UMethod (name = getProp1) [public static final fun getProp1() : int = UastEmptyExpression] - UMethod (name = getProp2) [public static final fun getProp2() : int = "not-yet-compile-time-constant"] - ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] - UMethod (name = getProp3) [public static final fun getProp3() : int = "not-yet-compile-time-constant"] - ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] - UMethod (name = setProp3) [public static final fun setProp3(value: int) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = getProp2) [public static final fun getProp2() : int {...}] + UBlockExpression [{...}] + UReturnExpression [return "not-yet-compile-time-constant"] + ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] + UMethod (name = getProp3) [public static final fun getProp3() : int {...}] + UBlockExpression [{...}] + UReturnExpression [return "not-yet-compile-time-constant"] + ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] + UMethod (name = setProp3) [public static final fun setProp3(value: int) : void {...}] UParameter (name = value) [var value: int] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] UClass (name = TestAnnotation) [public abstract annotation TestAnnotation {...}] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/QualifiedConstructorCall.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/QualifiedConstructorCall.types.fir.txt index cb3b7790d57..b9b9c417e6c 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/QualifiedConstructorCall.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/QualifiedConstructorCall.types.fir.txt @@ -3,5 +3,7 @@ UFile (package = A.B.C) [package A.B.C...] UMethod (name = Foo) [public fun Foo() = UastEmptyExpression] UClass (name = Bar) [public final class Bar {...}] UMethod (name = Bar) [public fun Bar() = UastEmptyExpression] - UMethod (name = getFoo) [public final fun getFoo() : A.B.C.Foo = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = getFoo) [public final fun getFoo() : A.B.C.Foo {...}] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/ReceiverFun.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/ReceiverFun.types.fir.txt index 20899369768..154061ba474 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/ReceiverFun.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/ReceiverFun.types.fir.txt @@ -1,10 +1,14 @@ UFile (package = ) [public final class ReceiverFunKt {...] UClass (name = ReceiverFunKt) [public final class ReceiverFunKt {...}] - UMethod (name = foo) [public static final fun foo($this$foo: java.lang.String) : int = [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + UMethod (name = foo) [public static final fun foo($this$foo: java.lang.String) : int {...}] UParameter (name = $this$foo) [var $this$foo: java.lang.String] - [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] - UMethod (name = getRx) [public static final fun getRx($this$rx: java.lang.String) : kotlin.text.Regex = [!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + UMethod (name = getRx) [public static final fun getRx($this$rx: java.lang.String) : kotlin.text.Regex {...}] UParameter (name = $this$rx) [var $this$rx: java.lang.String] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (CALL_EXPRESSION)] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] UClass (name = MyReceiverAnnotation) [public abstract annotation MyReceiverAnnotation {...}] UMethod (name = name) [public abstract fun name() : java.lang.String = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/ReifiedResolve.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/ReifiedResolve.types.fir.txt index 23cc13c7e03..076f62720ca 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/ReifiedResolve.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/ReifiedResolve.types.fir.txt @@ -1,4 +1,9 @@ UFile (package = ) [public final class ReifiedResolveKt {...] UClass (name = ReifiedResolveKt) [public final class ReifiedResolveKt {...}] - UMethod (name = resolve) [public static final fun resolve() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = resolve) [public static final fun resolve() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/ReifiedReturnType.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/ReifiedReturnType.types.fir.txt index 889f189981b..8f21a909a3b 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/ReifiedReturnType.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/ReifiedReturnType.types.fir.txt @@ -1,9 +1,11 @@ UFile (package = ) [public final class ReifiedReturnTypeKt {...] UClass (name = ReifiedReturnTypeKt) [public final class ReifiedReturnTypeKt {...}] - UMethod (name = copyWhenGreater) [public static final fun copyWhenGreater(list: java.util.List, threshold: T, threshold2: B) : B = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = copyWhenGreater) [public static final fun copyWhenGreater(list: java.util.List, threshold: T, threshold2: B) : B {...}] UParameter (name = list) [var list: java.util.List] UParameter (name = threshold) [var threshold: T] UParameter (name = threshold2) [var threshold2: B] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] UClass (name = Foo) [public final class Foo {...}] UMethod (name = Foo) [public fun Foo() = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/Resolve.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/Resolve.types.fir.txt index 4464b9deaa9..82d2be2a0aa 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/Resolve.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/Resolve.types.fir.txt @@ -1,14 +1,30 @@ UFile (package = ) [public final class ResolveKt {...] UClass (name = ResolveKt) [public final class ResolveKt {...}] - UMethod (name = bar) [public static final fun bar() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = barT) [public static final fun barT(t: T) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = bar) [public static final fun bar() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + UMethod (name = barT) [public static final fun barT(t: T) : void {...}] UParameter (name = t) [var t: T] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = barTL) [public static final fun barTL(listT: T) : void = [!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + UMethod (name = barTL) [public static final fun barTL(listT: T) : void {...}] UParameter (name = listT) [var listT: T] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (FOR) [[!] UnknownKotlinExpression (FOR)] UClass (name = A) [public class A {...}] UMethod (name = A) [public fun A() = UastEmptyExpression] - UMethod (name = foo) [public final fun foo() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public final fun foo() : void {...}] + UBlockExpression [{...}] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/SAM.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/SAM.types.fir.txt index 9058f71dba5..dfc5932e999 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/SAM.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/SAM.types.fir.txt @@ -14,21 +14,36 @@ UFile (package = ) [import java.lang.Thread...] UMethod (name = getFoo) [public static final fun getFoo() : java.lang.Runnable = UastEmptyExpression] UMethod (name = setFoo) [public static final fun setFoo(value: java.lang.Runnable) : void = UastEmptyExpression] UParameter (name = value) [var value: java.lang.Runnable] - UMethod (name = bar) [public static final fun bar() : java.lang.Runnable = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = bar) [public static final fun bar() : java.lang.Runnable {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + UReturnExpression [return [!] UnknownKotlinExpression (LAMBDA_EXPRESSION)] + [!] UnknownKotlinExpression (LAMBDA_EXPRESSION) [[!] UnknownKotlinExpression (LAMBDA_EXPRESSION)] UMethod (name = getBaz) [public static final fun getBaz() : java.lang.Runnable = UastEmptyExpression] - UMethod (name = runRunnable) [public static final fun runRunnable(r: java.lang.Runnable) : error.NonExistentClass = [!] UnknownKotlinExpression (CALL_EXPRESSION)] + UMethod (name = runRunnable) [public static final fun runRunnable(r: java.lang.Runnable) : error.NonExistentClass {...}] UParameter (name = r) [var r: java.lang.Runnable] - [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] - UMethod (name = test1) [public static final fun test1() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = test2) [public static final fun test2() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = test3) [public static final fun test3() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = ambiguousSamAcceptor) [public static final fun ambiguousSamAcceptor(s: java.util.function.Supplier) : java.lang.String = [!] UnknownKotlinExpression (CALL_EXPRESSION)] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (CALL_EXPRESSION)] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + UMethod (name = test1) [public static final fun test1() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + UMethod (name = test2) [public static final fun test2() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + UMethod (name = test3) [public static final fun test3() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + UMethod (name = ambiguousSamAcceptor) [public static final fun ambiguousSamAcceptor(s: java.util.function.Supplier) : java.lang.String {...}] UParameter (name = s) [var s: java.util.function.Supplier] - [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] - UMethod (name = ambiguousSamAcceptor) [public static final fun ambiguousSamAcceptor(s: java.util.concurrent.Callable) : java.lang.String = [!] UnknownKotlinExpression (CALL_EXPRESSION)] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (CALL_EXPRESSION)] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + UMethod (name = ambiguousSamAcceptor) [public static final fun ambiguousSamAcceptor(s: java.util.concurrent.Callable) : java.lang.String {...}] UParameter (name = s) [var s: java.util.concurrent.Callable] - [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (CALL_EXPRESSION)] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/Simple.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/Simple.types.fir.txt index e52eb466638..4cce95df2c3 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/Simple.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/Simple.types.fir.txt @@ -3,6 +3,7 @@ UFile (package = ) [public final class Simple {...] UField (name = property) [private final var property: java.lang.String = "Mary"] ULiteralExpression (value = "Mary") ["Mary"] : PsiType:String UMethod (name = Simple) [public fun Simple() = UastEmptyExpression] - UMethod (name = method) [public final fun method() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = method) [public final fun method() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] UMethod (name = getProperty) [public final fun getProperty() : java.lang.String = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/SimpleAnnotated.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/SimpleAnnotated.types.fir.txt index 64bb8b34409..fe563a9b2f8 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/SimpleAnnotated.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/SimpleAnnotated.types.fir.txt @@ -3,6 +3,7 @@ UFile (package = ) [public final class SimpleAnnotated {...] UField (name = property) [private final var property: java.lang.String = "Mary"] ULiteralExpression (value = "Mary") ["Mary"] : PsiType:String UMethod (name = SimpleAnnotated) [public fun SimpleAnnotated() = UastEmptyExpression] - UMethod (name = method) [public final fun method() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = method) [public final fun method() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] UMethod (name = getProperty) [public final fun getProperty() : java.lang.String = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/StringTemplateComplex.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/StringTemplateComplex.types.fir.txt index bbe31e0fe1b..42874d1e853 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/StringTemplateComplex.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/StringTemplateComplex.types.fir.txt @@ -34,9 +34,14 @@ UFile (package = ) [public final class StringTemplateComplexKt {...] UMethod (name = getLiteralInLiteral) [public static final fun getLiteralInLiteral() : java.lang.String = UastEmptyExpression] UMethod (name = getLiteralInLiteral2) [public static final fun getLiteralInLiteral2() : java.lang.String = UastEmptyExpression] UMethod (name = getEmpty) [public static final fun getEmpty() : java.lang.String = UastEmptyExpression] - UMethod (name = simpleForTemplate) [public static final fun simpleForTemplate(i: int) : java.lang.String = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + UMethod (name = simpleForTemplate) [public static final fun simpleForTemplate(i: int) : java.lang.String {...}] UParameter (name = i) [var i: int = "not-yet-compile-time-constant"] ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] - UMethod (name = foo) [public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + UMethod (name = foo) [public static final fun foo() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/StringTemplateComplexForUInjectionHost.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/StringTemplateComplexForUInjectionHost.types.fir.txt index fa80c11ed66..a5a7a7f6d99 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/StringTemplateComplexForUInjectionHost.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/StringTemplateComplexForUInjectionHost.types.fir.txt @@ -34,9 +34,14 @@ UFile (package = ) [public final class StringTemplateComplexForUInjectionHostKt UMethod (name = getLiteralInLiteral) [public static final fun getLiteralInLiteral() : java.lang.String = UastEmptyExpression] UMethod (name = getLiteralInLiteral2) [public static final fun getLiteralInLiteral2() : java.lang.String = UastEmptyExpression] UMethod (name = getEmpty) [public static final fun getEmpty() : java.lang.String = UastEmptyExpression] - UMethod (name = simpleForTemplate) [public static final fun simpleForTemplate(i: int) : java.lang.String = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + UMethod (name = simpleForTemplate) [public static final fun simpleForTemplate(i: int) : java.lang.String {...}] UParameter (name = i) [var i: int = "not-yet-compile-time-constant"] ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] - UMethod (name = foo) [public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + UMethod (name = foo) [public static final fun foo() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/SuperCalls.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/SuperCalls.types.fir.txt index 87b753d88b1..c683a0790d2 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/SuperCalls.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/SuperCalls.types.fir.txt @@ -3,9 +3,9 @@ UFile (package = ) [public final class SuperCallsKt {...] UField (name = anon) [private static final var anon: A = [!] UnknownKotlinExpression (OBJECT_LITERAL)] [!] UnknownKotlinExpression (OBJECT_LITERAL) [[!] UnknownKotlinExpression (OBJECT_LITERAL)] UMethod (name = getAnon) [public static final fun getAnon() : A = UastEmptyExpression] - UMethod (name = cons) [public static final fun cons(a: A) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = cons) [public static final fun cons(a: A) : void {...}] UParameter (name = a) [var a: A] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] UClass (name = A) [public class A {...}] UField (name = str) [private final var str: java.lang.String] UMethod (name = A) [public fun A(str: java.lang.String) = UastEmptyExpression] @@ -13,21 +13,23 @@ UFile (package = ) [public final class SuperCallsKt {...] UMethod (name = A) [public fun A(i: int) = UastEmptyExpression] UParameter (name = i) [var i: int] UMethod (name = getStr) [public final fun getStr() : java.lang.String = UastEmptyExpression] - UMethod (name = foo) [public fun foo(a: long) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public fun foo(a: long) : void {...}] UParameter (name = a) [var a: long] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] UClass (name = B) [public final class B : null {...}] UMethod (name = B) [public fun B(param: java.lang.String) = UastEmptyExpression] UParameter (name = param) [var param: java.lang.String] UClass (name = C) [public final class C : null {...}] UMethod (name = C) [public fun C(p: java.lang.String) = UastEmptyExpression] UParameter (name = p) [var p: java.lang.String] - UMethod (name = C) [public fun C(i: int) = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = C) [public fun C(i: int) {...}] UParameter (name = i) [var i: int] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = foo) [public fun foo(a: long) : void = [!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + UMethod (name = foo) [public fun foo(a: long) : void {...}] UParameter (name = a) [var a: long] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] UClass (name = O) [public final class O : null {...}] UField (name = INSTANCE) [public static final var INSTANCE: O] UMethod (name = O) [private fun O() = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/Suspend.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/Suspend.types.fir.txt index f18de62eeef..d07e275ee3a 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/Suspend.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/Suspend.types.fir.txt @@ -1,10 +1,16 @@ UFile (package = test.pkg) [package test.pkg...] UClass (name = SuspendKt) [public final class SuspendKt {...}] - UMethod (name = top) [public static final fun top() : int = [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] - [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + UMethod (name = top) [public static final fun top() : int {...}] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] UClass (name = Context) [public final class Context {...}] UMethod (name = Context) [public fun Context() = UastEmptyExpression] - UMethod (name = inner) [public final fun inner() : int = [!] UnknownKotlinExpression (CALL_EXPRESSION)] - [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] - UMethod (name = suspendPrivate) [private final fun suspendPrivate() : int = [!] UnknownKotlinExpression (CALL_EXPRESSION)] - [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + UMethod (name = inner) [public final fun inner() : int {...}] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (CALL_EXPRESSION)] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] + UMethod (name = suspendPrivate) [private final fun suspendPrivate() : int {...}] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (CALL_EXPRESSION)] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/TryCatch.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/TryCatch.types.fir.txt index b93db698fec..d80c83fbf4d 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/TryCatch.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/TryCatch.types.fir.txt @@ -1,21 +1,23 @@ UFile (package = ) [public final class TryCatch {...] UClass (name = TryCatch) [public final class TryCatch {...}] UMethod (name = TryCatch) [public fun TryCatch() = UastEmptyExpression] - UMethod (name = catches) [public final fun catches() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = body) [public final fun body() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = catcher) [public final fun catcher() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = finalizer) [public final fun finalizer() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = catches) [public final fun catches() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (TRY) [[!] UnknownKotlinExpression (TRY)] + UMethod (name = body) [public final fun body() : void {...}] + UBlockExpression [{...}] + UMethod (name = catcher) [public final fun catcher() : void {...}] + UBlockExpression [{...}] + UMethod (name = finalizer) [public final fun finalizer() : void {...}] + UBlockExpression [{...}] UClass (name = TryCatchAnnotations) [public final class TryCatchAnnotations {...}] UMethod (name = TryCatchAnnotations) [public fun TryCatchAnnotations() = UastEmptyExpression] - UMethod (name = catches) [public final fun catches() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = body) [public final fun body() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = catcher) [public final fun catcher() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = finalizer) [public final fun finalizer() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = catches) [public final fun catches() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (TRY) [[!] UnknownKotlinExpression (TRY)] + UMethod (name = body) [public final fun body() : void {...}] + UBlockExpression [{...}] + UMethod (name = catcher) [public final fun catcher() : void {...}] + UBlockExpression [{...}] + UMethod (name = finalizer) [public final fun finalizer() : void {...}] + UBlockExpression [{...}] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/TypeAliasExpansionWithOtherAliasInArgument.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/TypeAliasExpansionWithOtherAliasInArgument.types.fir.txt index c6648426e0f..fabfbed2933 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/TypeAliasExpansionWithOtherAliasInArgument.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/TypeAliasExpansionWithOtherAliasInArgument.types.fir.txt @@ -1,10 +1,14 @@ UFile (package = ) [public final class TypeAliasExpansionWithOtherAliasInArgumentKt {...] UClass (name = TypeAliasExpansionWithOtherAliasInArgumentKt) [public final class TypeAliasExpansionWithOtherAliasInArgumentKt {...}] - UMethod (name = foo) [public static final fun foo($this$foo: kotlin.jvm.functions.Function1, x: kotlin.jvm.functions.Function1) : kotlin.jvm.functions.Function1 = "not-yet-compile-time-constant"] + UMethod (name = foo) [public static final fun foo($this$foo: kotlin.jvm.functions.Function1, x: kotlin.jvm.functions.Function1) : kotlin.jvm.functions.Function1 {...}] UParameter (name = $this$foo) [var $this$foo: kotlin.jvm.functions.Function1] UParameter (name = x) [var x: kotlin.jvm.functions.Function1] - ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] - UMethod (name = bar) [public static final fun bar($this$bar: java.util.Map, x: java.util.Map) : java.util.Map = "not-yet-compile-time-constant"] + UBlockExpression [{...}] + UReturnExpression [return "not-yet-compile-time-constant"] + ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] + UMethod (name = bar) [public static final fun bar($this$bar: java.util.Map, x: java.util.Map) : java.util.Map {...}] UParameter (name = $this$bar) [var $this$bar: java.util.Map] UParameter (name = x) [var x: java.util.Map] - ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] + UBlockExpression [{...}] + UReturnExpression [return "not-yet-compile-time-constant"] + ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/TypeInAnnotation.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/TypeInAnnotation.types.fir.txt index a4ea6fe39e3..081d8902d87 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/TypeInAnnotation.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/TypeInAnnotation.types.fir.txt @@ -1,5 +1,5 @@ UFile (package = ) [public final class C {...] UClass (name = C) [public final class C {...}] UMethod (name = C) [public fun C() = UastEmptyExpression] - UMethod (name = foo) [public final fun foo() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public final fun foo() : void {...}] + UBlockExpression [{...}] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/TypeReferences.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/TypeReferences.types.fir.txt index 856b87831e8..f5e2a3a74bd 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/TypeReferences.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/TypeReferences.types.fir.txt @@ -1,8 +1,21 @@ UFile (package = ) [public final class TypeReferencesKt {...] UClass (name = TypeReferencesKt) [public final class TypeReferencesKt {...}] - UMethod (name = foo) [public static final fun foo(parameter: int) : java.lang.String = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public static final fun foo(parameter: int) : java.lang.String {...}] UParameter (name = parameter) [var parameter: int] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] - UMethod (name = parameterizedFoo) [public static final fun parameterizedFoo(arg: T) : void = [!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + UReturnExpression [return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + UMethod (name = parameterizedFoo) [public static final fun parameterizedFoo(arg: T) : void {...}] UParameter (name = arg) [var arg: T] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/UnexpectedContainerException.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/UnexpectedContainerException.types.fir.txt index 36c1279ecf3..9508e7c9d7f 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/UnexpectedContainerException.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/UnexpectedContainerException.types.fir.txt @@ -4,7 +4,8 @@ UFile (package = ) [public abstract interface Callback {...] UParameter (name = throwable) [var throwable: java.lang.Throwable] UClass (name = Model) [public final class Model {...}] UMethod (name = Model) [public fun Model() = UastEmptyExpression] - UMethod (name = crashMe) [public final fun crashMe(clazz: java.lang.Class, factory: kotlin.jvm.functions.Function0) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = crashMe) [public final fun crashMe(clazz: java.lang.Class, factory: kotlin.jvm.functions.Function0) : void {...}] UParameter (name = clazz) [var clazz: java.lang.Class] UParameter (name = factory) [var factory: kotlin.jvm.functions.Function0] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (THROW) [[!] UnknownKotlinExpression (THROW)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/WhenAndDestructing.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/WhenAndDestructing.types.fir.txt index f2635f9ae45..74bc6db56af 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/WhenAndDestructing.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/WhenAndDestructing.types.fir.txt @@ -1,5 +1,7 @@ UFile (package = ) [public final class WhenAndDestructingKt {...] UClass (name = WhenAndDestructingKt) [public final class WhenAndDestructingKt {...}] - UMethod (name = getElementsAdditionalResolve) [public static final fun getElementsAdditionalResolve(string: java.lang.String) : java.lang.String = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = getElementsAdditionalResolve) [public static final fun getElementsAdditionalResolve(string: java.lang.String) : java.lang.String {...}] UParameter (name = string) [var string: java.lang.String] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] + [!] UnknownKotlinExpression (WHEN) [[!] UnknownKotlinExpression (WHEN)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/WhenIs.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/WhenIs.types.fir.txt index 4631fab7724..c36c64b9f62 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/WhenIs.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/WhenIs.types.fir.txt @@ -1,5 +1,7 @@ UFile (package = ) [public final class WhenIsKt {...] UClass (name = WhenIsKt) [public final class WhenIsKt {...}] - UMethod (name = foo) [public static final fun foo(bar: java.lang.Object) : void = [!] UnknownKotlinExpression (WHEN)] + UMethod (name = foo) [public static final fun foo(bar: java.lang.Object) : void {...}] UParameter (name = bar) [var bar: java.lang.Object] - [!] UnknownKotlinExpression (WHEN) [[!] UnknownKotlinExpression (WHEN)] + UBlockExpression [{...}] + UReturnExpression [return [!] UnknownKotlinExpression (WHEN)] + [!] UnknownKotlinExpression (WHEN) [[!] UnknownKotlinExpression (WHEN)] diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/WhenStringLiteral.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/WhenStringLiteral.types.fir.txt index 059ef3dbe4a..51464d463ea 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/WhenStringLiteral.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/WhenStringLiteral.types.fir.txt @@ -6,5 +6,7 @@ UFile (package = ) [public final class WhenStringLiteralKt {...] [!] UnknownKotlinExpression (WHEN) [[!] UnknownKotlinExpression (WHEN)] UMethod (name = getA) [public static final fun getA() : java.lang.String = UastEmptyExpression] UMethod (name = getB) [public static final fun getB() : int = UastEmptyExpression] - UMethod (name = ) [public static final fun () : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = ) [public static final fun () : void {...}] + UBlockExpression [{...}] + ULiteralExpression (value = "abc1") ["abc1"] : PsiType:String + ULiteralExpression (value = "def1") ["def1"] : PsiType:String diff --git a/plugins/uast-kotlin-fir/testData/legacyTypes/ea101715.types.fir.txt b/plugins/uast-kotlin-fir/testData/legacyTypes/ea101715.types.fir.txt index 20d336ab7a9..bdcb3c7e0bb 100644 --- a/plugins/uast-kotlin-fir/testData/legacyTypes/ea101715.types.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyTypes/ea101715.types.fir.txt @@ -1,7 +1,8 @@ UFile (package = ) [public final class Ea101715Kt {...] UClass (name = Ea101715Kt) [public final class Ea101715Kt {...}] - UMethod (name = a) [public static final fun a() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] + UMethod (name = a) [public static final fun a() : void {...}] + UBlockExpression [{...}] + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] UClass (name = Obj) [public final class Obj {...}] UField (name = INSTANCE) [public static final var INSTANCE: Obj] UMethod (name = Obj) [private fun Obj() = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/AnnotatedExpressions.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/AnnotatedExpressions.values.fir.txt index 2942fc899e0..8a53db9d93f 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/AnnotatedExpressions.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/AnnotatedExpressions.values.fir.txt @@ -1,7 +1,15 @@ UFile (package = ) [public final class AnnotatedExpressionsKt {...] UClass (name = AnnotatedExpressionsKt) [public final class AnnotatedExpressionsKt {...}] - UMethod (name = foo) [public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = annotatedSwitch) [public static final fun annotatedSwitch(str: java.lang.String) : java.lang.Integer = [!] UnknownKotlinExpression (WHEN)] + UMethod (name = foo) [public static final fun foo() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (ANNOTATED_EXPRESSION) [[!] UnknownKotlinExpression (ANNOTATED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (ANNOTATED_EXPRESSION) [[!] UnknownKotlinExpression (ANNOTATED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (ANNOTATED_EXPRESSION) [[!] UnknownKotlinExpression (ANNOTATED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + UMethod (name = annotatedSwitch) [public static final fun annotatedSwitch(str: java.lang.String) : java.lang.Integer {...}] UParameter (name = str) [var str: java.lang.String] - [!] UnknownKotlinExpression (WHEN) [[!] UnknownKotlinExpression (WHEN)] = Undetermined + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (WHEN)] = Nothing + [!] UnknownKotlinExpression (WHEN) [[!] UnknownKotlinExpression (WHEN)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/AnnotationParameters.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/AnnotationParameters.values.fir.txt index 635e15ecad9..5ff24c1562f 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/AnnotationParameters.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/AnnotationParameters.values.fir.txt @@ -1,13 +1,21 @@ UFile (package = ) [public final class AnnotationParametersKt {...] UClass (name = AnnotationParametersKt) [public final class AnnotationParametersKt {...}] - UMethod (name = foo) [public static final fun foo() : int = "not-yet-compile-time-constant"] - ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" - UMethod (name = bar) [public static final fun bar() : void = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Undetermined - UMethod (name = fooWithArrLiteral) [public static final fun fooWithArrLiteral() : int = "not-yet-compile-time-constant"] - ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" - UMethod (name = fooWithStrArrLiteral) [public static final fun fooWithStrArrLiteral() : int = "not-yet-compile-time-constant"] - ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" + UMethod (name = foo) [public static final fun foo() : int {...}] + UBlockExpression [{...}] = Nothing + UReturnExpression [return "not-yet-compile-time-constant"] = Nothing + ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" + UMethod (name = bar) [public static final fun bar() : void {...}] + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Undetermined + UMethod (name = fooWithArrLiteral) [public static final fun fooWithArrLiteral() : int {...}] + UBlockExpression [{...}] = Nothing + UReturnExpression [return "not-yet-compile-time-constant"] = Nothing + ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" + UMethod (name = fooWithStrArrLiteral) [public static final fun fooWithStrArrLiteral() : int {...}] + UBlockExpression [{...}] = Nothing + UReturnExpression [return "not-yet-compile-time-constant"] = Nothing + ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" UClass (name = IntRange) [public abstract annotation IntRange {...}] UMethod (name = from) [public abstract fun from() : long = UastEmptyExpression] UMethod (name = to) [public abstract fun to() : long = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/Anonymous.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/Anonymous.values.fir.txt index 9eac2f0f21d..a416ae97e11 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/Anonymous.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/Anonymous.values.fir.txt @@ -2,7 +2,14 @@ UFile (package = ) [import java.io.Closeable...] UImportStatement (isOnDemand = false) [import java.io.Closeable] UImportStatement (isOnDemand = false) [import java.io.InputStream] UClass (name = AnonymousKt) [public final class AnonymousKt {...}] - UMethod (name = foo) [public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = withErr) [public static final fun withErr() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = foo) [public static final fun foo() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + UMethod (name = withErr) [public static final fun withErr() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/Assertion.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/Assertion.values.fir.txt index f701c87556c..bedd9f14635 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/Assertion.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/Assertion.values.fir.txt @@ -1,4 +1,7 @@ UFile (package = ) [public final class AssertionKt {...] UClass (name = AssertionKt) [public final class AssertionKt {...}] - UMethod (name = foo) [public static final fun foo() : java.lang.String = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = foo) [public static final fun foo() : java.lang.String {...}] + UBlockExpression [{...}] = Nothing + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + UReturnExpression [return [!] UnknownKotlinExpression (POSTFIX_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (POSTFIX_EXPRESSION) [[!] UnknownKotlinExpression (POSTFIX_EXPRESSION)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/Bitwise.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/Bitwise.values.fir.txt index 8975810fd09..2b48a4d5a15 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/Bitwise.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/Bitwise.values.fir.txt @@ -1,6 +1,26 @@ UFile (package = ) [public final class BitwiseKt {...] UClass (name = BitwiseKt) [public final class BitwiseKt {...}] - UMethod (name = foo) [public static final fun foo() : int = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = bar) [public static final fun bar() : long = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = foo) [public static final fun foo() : int {...}] + UBlockExpression [{...}] = Nothing + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + UReturnExpression [return [!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Undetermined + UMethod (name = bar) [public static final fun bar() : long {...}] + UBlockExpression [{...}] = Nothing + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + UReturnExpression [return [!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/BrokenMethod.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/BrokenMethod.values.fir.txt index 7260aa6a7b4..0a6b6211804 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/BrokenMethod.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/BrokenMethod.values.fir.txt @@ -1,5 +1,6 @@ UFile (package = ) [public final class BrokenMethodKt {...] UClass (name = BrokenMethodKt) [public final class BrokenMethodKt {...}] - UMethod (name = main) [public static final fun main(args: java.lang.String[]) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = main) [public static final fun main(args: java.lang.String[]) : void {...}] UParameter (name = args) [var args: java.lang.String[]] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (CLASS) [[!] UnknownKotlinExpression (CLASS)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/ConstructorDelegate.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/ConstructorDelegate.values.fir.txt index 9242fa2b166..91ef83e9444 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/ConstructorDelegate.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/ConstructorDelegate.values.fir.txt @@ -1,8 +1,10 @@ UFile (package = ) [public final class ConstructorDelegateKt {...] UClass (name = ConstructorDelegateKt) [public final class ConstructorDelegateKt {...}] - UMethod (name = createBase) [public static final fun createBase(i: int) : Base = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = createBase) [public static final fun createBase(i: int) : Base {...}] UParameter (name = i) [var i: int] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (CALL_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined UClass (name = Base) [public abstract interface Base {...}] UMethod (name = print) [public abstract fun print() : void = UastEmptyExpression] UClass (name = BaseImpl) [public final class BaseImpl : null {...}] @@ -10,8 +12,9 @@ UFile (package = ) [public final class ConstructorDelegateKt {...] UMethod (name = BaseImpl) [public fun BaseImpl(x: int) = UastEmptyExpression] UParameter (name = x) [var x: int] UMethod (name = getX) [public final fun getX() : int = UastEmptyExpression] - UMethod (name = print) [public fun print() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = print) [public fun print() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined UClass (name = Derived) [public final class Derived : null, null {...}] UMethod (name = Derived) [public fun Derived(b: Base) = UastEmptyExpression] UParameter (name = b) [var b: Base] diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/Constructors.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/Constructors.values.fir.txt index 9a1b9f7a239..0db3ad508db 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/Constructors.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/Constructors.values.fir.txt @@ -24,23 +24,29 @@ UFile (package = ) [public final class A {...] UMethod (name = AOnlyInit) [public fun AOnlyInit() = UastEmptyExpression] UClass (name = AWithSecondary) [public final class AWithSecondary {...}] UField (name = a) [private var a: java.lang.String] - UMethod (name = AWithSecondary) [public fun AWithSecondary(i: int) = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = AWithSecondary) [public fun AWithSecondary(i: int) {...}] UParameter (name = i) [var i: int] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = AWithSecondary) [public fun AWithSecondary(s: java.lang.String) = [!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Undetermined + UMethod (name = AWithSecondary) [public fun AWithSecondary(s: java.lang.String) {...}] UParameter (name = s) [var s: java.lang.String] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Undetermined UMethod (name = getA) [public final fun getA() : java.lang.String = UastEmptyExpression] UMethod (name = setA) [public final fun setA(value: java.lang.String) : void = UastEmptyExpression] UParameter (name = value) [var value: java.lang.String] UClass (name = AWithSecondaryInit) [public final class AWithSecondaryInit {...}] UField (name = a) [private var a: java.lang.String] - UMethod (name = AWithSecondaryInit) [public fun AWithSecondaryInit(i: int) = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = AWithSecondaryInit) [public fun AWithSecondaryInit(i: int) {...}] UParameter (name = i) [var i: int] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = AWithSecondaryInit) [public fun AWithSecondaryInit(s: java.lang.String) = [!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Undetermined + UMethod (name = AWithSecondaryInit) [public fun AWithSecondaryInit(s: java.lang.String) {...}] UParameter (name = s) [var s: java.lang.String] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined UMethod (name = getA) [public final fun getA() : java.lang.String = UastEmptyExpression] UMethod (name = setA) [public final fun setA(value: java.lang.String) : void = UastEmptyExpression] UParameter (name = value) [var value: java.lang.String] diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/DefaultImpls.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/DefaultImpls.values.fir.txt index 302334fed92..3a8acc0ea8e 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/DefaultImpls.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/DefaultImpls.values.fir.txt @@ -1,6 +1,8 @@ UFile (package = ) [public abstract interface Foo {...] UClass (name = Foo) [public abstract interface Foo {...}] - UMethod (name = bar) [public fun bar() : java.lang.String = "Hello!"] - ULiteralExpression (value = "Hello!") ["Hello!"] = "Hello!" + UMethod (name = bar) [public fun bar() : java.lang.String {...}] + UBlockExpression [{...}] = Nothing + UReturnExpression [return "Hello!"] = Nothing + ULiteralExpression (value = "Hello!") ["Hello!"] = "Hello!" UClass (name = Baz) [public final class Baz : null {...}] UMethod (name = Baz) [public fun Baz() = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/DefaultParameterValues.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/DefaultParameterValues.values.fir.txt index 7075db3c770..669578a532e 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/DefaultParameterValues.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/DefaultParameterValues.values.fir.txt @@ -1,8 +1,8 @@ UFile (package = ) [public final class DefaultParameterValuesKt {...] UClass (name = DefaultParameterValuesKt) [public final class DefaultParameterValuesKt {...}] - UMethod (name = foo) [public static final fun foo(a: int, foo: java.lang.String) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public static final fun foo(a: int, foo: java.lang.String) : void {...}] UParameter (name = a) [var a: int = "not-yet-compile-time-constant"] ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" UParameter (name = foo) [var foo: java.lang.String = "not-yet-compile-time-constant"] ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/DeprecatedHidden.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/DeprecatedHidden.values.fir.txt index b3efb4e002e..e97ff1e8e60 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/DeprecatedHidden.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/DeprecatedHidden.values.fir.txt @@ -1,5 +1,5 @@ UFile (package = test.pkg) [package test.pkg...] UClass (name = Test) [public final class Test {...}] UMethod (name = Test) [public fun Test() = UastEmptyExpression] - UMethod (name = test1) [public final fun test1() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = test1) [public final fun test1() : void {...}] + UBlockExpression [{...}] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/DestructuringDeclaration.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/DestructuringDeclaration.values.fir.txt index 488611db063..0a03332ae07 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/DestructuringDeclaration.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/DestructuringDeclaration.values.fir.txt @@ -1,5 +1,7 @@ UFile (package = ) [public final class DestructuringDeclarationKt {...] UClass (name = DestructuringDeclarationKt) [public final class DestructuringDeclarationKt {...}] - UMethod (name = foo) [public static final fun foo(data: java.lang.Object) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public static final fun foo(data: java.lang.Object) : void {...}] UParameter (name = data) [var data: java.lang.Object] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (DESTRUCTURING_DECLARATION) [[!] UnknownKotlinExpression (DESTRUCTURING_DECLARATION)] = Undetermined + [!] UnknownKotlinExpression (DESTRUCTURING_DECLARATION) [[!] UnknownKotlinExpression (DESTRUCTURING_DECLARATION)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/Elvis.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/Elvis.values.fir.txt index 2d4c89a7422..83d8b635384 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/Elvis.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/Elvis.values.fir.txt @@ -1,9 +1,15 @@ UFile (package = ) [public final class ElvisKt {...] UClass (name = ElvisKt) [public final class ElvisKt {...}] - UMethod (name = foo) [public static final fun foo(bar: java.lang.String) : java.lang.String = "not-yet-compile-time-constant"] + UMethod (name = foo) [public static final fun foo(bar: java.lang.String) : java.lang.String {...}] UParameter (name = bar) [var bar: java.lang.String] - ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" - UMethod (name = bar) [public static final fun bar() : int = "not-yet-compile-time-constant"] - ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" - UMethod (name = baz) [public static final fun baz() : java.lang.String = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Nothing + UReturnExpression [return "not-yet-compile-time-constant"] = Nothing + ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" + UMethod (name = bar) [public static final fun bar() : int {...}] + UBlockExpression [{...}] = Nothing + UReturnExpression [return "not-yet-compile-time-constant"] = Nothing + ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" + UMethod (name = baz) [public static final fun baz() : java.lang.String {...}] + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/ElvisType.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/ElvisType.values.fir.txt index 190d48200f4..fe71abd7016 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/ElvisType.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/ElvisType.values.fir.txt @@ -1,8 +1,10 @@ UFile (package = ) [public final class ElvisTypeKt {...] UClass (name = ElvisTypeKt) [public final class ElvisTypeKt {...}] - UMethod (name = foo) [public static final fun foo(text: java.lang.String) : void = [!] UnknownKotlinExpression (CALL_EXPRESSION)] + UMethod (name = foo) [public static final fun foo(text: java.lang.String) : void {...}] UParameter (name = text) [var text: java.lang.String] - [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined - UMethod (name = bar) [public static final fun bar(o: java.lang.Object) : void = [!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (CALL_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + UMethod (name = bar) [public static final fun bar(o: java.lang.Object) : void {...}] UParameter (name = o) [var o: java.lang.Object] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/IfStatement.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/IfStatement.values.fir.txt index 67a6cfc34f7..554451df4b2 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/IfStatement.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/IfStatement.values.fir.txt @@ -1,4 +1,5 @@ UFile (package = ) [public final class IfStatementKt {...] UClass (name = IfStatementKt) [public final class IfStatementKt {...}] - UMethod (name = foo) [public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = foo) [public static final fun foo() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/In.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/In.values.fir.txt index 348f5ee9218..ab8c4fb9f7f 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/In.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/In.values.fir.txt @@ -1,4 +1,8 @@ UFile (package = ) [public final class InKt {...] UClass (name = InKt) [public final class InKt {...}] - UMethod (name = foo) [public static final fun foo() : boolean = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = foo) [public static final fun foo() : boolean {...}] + UBlockExpression [{...}] = Nothing + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + UReturnExpression [return [!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/InferenceInsideUnresolvedConstructor.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/InferenceInsideUnresolvedConstructor.values.fir.txt index e8ecf2e5736..e8d36c8c174 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/InferenceInsideUnresolvedConstructor.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/InferenceInsideUnresolvedConstructor.values.fir.txt @@ -1,7 +1,11 @@ UFile (package = ) [public final class InferenceInsideUnresolvedConstructorKt {...] UClass (name = InferenceInsideUnresolvedConstructorKt) [public final class InferenceInsideUnresolvedConstructorKt {...}] - UMethod (name = getBar) [public static final fun getBar() : java.lang.Object = [!] UnknownKotlinExpression (CALL_EXPRESSION)] - [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined - UMethod (name = id) [public static final fun id(x: T) : T = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + UMethod (name = getBar) [public static final fun getBar() : java.lang.Object {...}] + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (CALL_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + UMethod (name = id) [public static final fun id(x: T) : T {...}] UParameter (name = x) [var x: T] - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Undetermined + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/InnerClasses.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/InnerClasses.values.fir.txt index f7549221d47..eb234c7cee4 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/InnerClasses.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/InnerClasses.values.fir.txt @@ -9,9 +9,13 @@ UFile (package = ) [public final class Foo {...] UParameter (name = b) [var b: int] UMethod (name = getA) [public final fun getA() : int = UastEmptyExpression] UMethod (name = getB) [public final fun getB() : int = UastEmptyExpression] - UMethod (name = getAPlusB) [public final fun getAPlusB() : int = [!] UnknownKotlinExpression (BINARY_EXPRESSION)] - [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Undetermined + UMethod (name = getAPlusB) [public final fun getAPlusB() : int {...}] + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Undetermined UClass (name = Baz) [public static final class Baz {...}] UMethod (name = Baz) [public fun Baz() = UastEmptyExpression] - UMethod (name = doNothing) [public final fun doNothing() : void = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Undetermined + UMethod (name = doNothing) [public final fun doNothing() : void {...}] + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/InnerNonFixedTypeVariable.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/InnerNonFixedTypeVariable.values.fir.txt index 0dd559a1eab..a51b4149916 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/InnerNonFixedTypeVariable.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/InnerNonFixedTypeVariable.values.fir.txt @@ -1,7 +1,8 @@ UFile (package = ) [public final class InnerNonFixedTypeVariableKt {...] UClass (name = InnerNonFixedTypeVariableKt) [public final class InnerNonFixedTypeVariableKt {...}] - UMethod (name = test) [public static final fun test(list: java.util.List) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = test) [public static final fun test(list: java.util.List) : void {...}] UParameter (name = list) [var list: java.util.List] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined UClass (name = Some) [public final class Some {...}] UMethod (name = Some) [public fun Some() = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/LambdaReturn.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/LambdaReturn.values.fir.txt index 7b45c7399ff..43c860fa139 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/LambdaReturn.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/LambdaReturn.values.fir.txt @@ -1,4 +1,12 @@ UFile (package = org.jetbrains.uast.kotlin) [package org.jetbrains.uast.kotlin...] UClass (name = LambdaReturnKt) [public final class LambdaReturnKt {...}] - UMethod (name = foo) [public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = foo) [public static final fun foo() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/Lambdas.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/Lambdas.values.fir.txt index eb9309fec89..b1999319174 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/Lambdas.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/Lambdas.values.fir.txt @@ -1,10 +1,15 @@ UFile (package = ) [import java.util.stream.Stream...] UImportStatement (isOnDemand = false) [import java.util.stream.Stream] UClass (name = LambdasKt) [public final class LambdasKt {...}] - UMethod (name = foo) [public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = doSelectItem) [public static final fun doSelectItem(selectItemFunction: kotlin.jvm.functions.Function0) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public static final fun foo() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + UMethod (name = doSelectItem) [public static final fun doSelectItem(selectItemFunction: kotlin.jvm.functions.Function0) : void {...}] UParameter (name = selectItemFunction) [var selectItemFunction: kotlin.jvm.functions.Function0] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = lambdaInPlaceCall) [public static final fun lambdaInPlaceCall() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + UMethod (name = lambdaInPlaceCall) [public static final fun lambdaInPlaceCall() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (WHILE) [[!] UnknownKotlinExpression (WHILE)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/LocalDeclarations.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/LocalDeclarations.values.fir.txt index 6e9b7e58801..d225a58d968 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/LocalDeclarations.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/LocalDeclarations.values.fir.txt @@ -1,4 +1,10 @@ UFile (package = ) [public final class LocalDeclarationsKt {...] UClass (name = LocalDeclarationsKt) [public final class LocalDeclarationsKt {...}] - UMethod (name = foo) [public static final fun foo() : boolean = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = foo) [public static final fun foo() : boolean {...}] + UBlockExpression [{...}] = Nothing + [!] UnknownKotlinExpression (CLASS) [[!] UnknownKotlinExpression (CLASS)] = Undetermined + [!] UnknownKotlinExpression (FUN) [[!] UnknownKotlinExpression (FUN)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (FUN) [[!] UnknownKotlinExpression (FUN)] = Undetermined + UReturnExpression [return [!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/LocalVariableWithAnnotation.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/LocalVariableWithAnnotation.values.fir.txt index 5be449e1eb8..212b5ba9608 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/LocalVariableWithAnnotation.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/LocalVariableWithAnnotation.values.fir.txt @@ -1,5 +1,6 @@ UFile (package = ) [public final class LocalVariableWithAnnotationKt {...] UClass (name = LocalVariableWithAnnotationKt) [public final class LocalVariableWithAnnotationKt {...}] - UMethod (name = foo) [public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = foo) [public static final fun foo() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined UClass (name = TestAnnotation) [public abstract annotation TestAnnotation {...}] diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/MethodReference.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/MethodReference.values.fir.txt index f2bf5e2613d..aead03d0819 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/MethodReference.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/MethodReference.values.fir.txt @@ -5,5 +5,5 @@ UFile (package = ) [public final class MethodReferenceKt {...] UMethod (name = getX) [public static final fun getX() : kotlin.reflect.KFunction = UastEmptyExpression] UClass (name = Foo) [public final class Foo {...}] UMethod (name = Foo) [public fun Foo() = UastEmptyExpression] - UMethod (name = bar) [public final fun bar() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = bar) [public final fun bar() : void {...}] + UBlockExpression [{...}] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/NameContainingFile.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/NameContainingFile.values.fir.txt index a9ee8d301a7..dd30e8648b9 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/NameContainingFile.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/NameContainingFile.values.fir.txt @@ -2,8 +2,8 @@ UFile (package = ) [public final class NameContainingFileKt {...] UClass (name = NameContainingFileKt) [public final class NameContainingFileKt {...}] UField (name = xyzzy) [private static final var xyzzy: int = "not-yet-compile-time-constant"] ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" - UMethod (name = bar) [public static final fun bar() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = bar) [public static final fun bar() : void {...}] + UBlockExpression [{...}] = Undetermined UMethod (name = getXyzzy) [public static final fun getXyzzy() : int = UastEmptyExpression] UClass (name = Foo) [public final class Foo {...}] UMethod (name = Foo) [public fun Foo() = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/NonTrivialIdentifiers.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/NonTrivialIdentifiers.values.fir.txt index d5dd2b2d788..2737d9a9ec1 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/NonTrivialIdentifiers.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/NonTrivialIdentifiers.values.fir.txt @@ -1,12 +1,16 @@ UFile (package = ) [public final class NonTrivialIdentifiersKt {...] UClass (name = NonTrivialIdentifiersKt) [public final class NonTrivialIdentifiersKt {...}] - UMethod (name = main) [public static final fun main(a: A) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = main) [public static final fun main(a: A) : void {...}] UParameter (name = a) [var a: A] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined UClass (name = A) [public final class A {...}] UMethod (name = A) [public fun A() = UastEmptyExpression] - UMethod (name = invoke) [public final fun invoke() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = invoke) [public final fun invoke(f: kotlin.jvm.functions.Function0) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = invoke) [public final fun invoke() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + UMethod (name = invoke) [public final fun invoke(f: kotlin.jvm.functions.Function0) : void {...}] UParameter (name = f) [var f: kotlin.jvm.functions.Function0] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/ParametersDisorder.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/ParametersDisorder.values.fir.txt index 85a18bc735f..6534b1aeb57 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/ParametersDisorder.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/ParametersDisorder.values.fir.txt @@ -1,31 +1,42 @@ UFile (package = ) [public final class ParametersDisorderKt {...] UClass (name = ParametersDisorderKt) [public final class ParametersDisorderKt {...}] - UMethod (name = global) [public static final fun global(a: int, b: float) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = global) [public static final fun global(a: int, b: float) : void {...}] UParameter (name = a) [var a: int] UParameter (name = b) [var b: float] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = withDefault) [public static final fun withDefault(c: int, d: java.lang.String) : void = [!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] = Undetermined + UMethod (name = withDefault) [public static final fun withDefault(c: int, d: java.lang.String) : void {...}] UParameter (name = c) [var c: int = "not-yet-compile-time-constant"] ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" UParameter (name = d) [var d: java.lang.String = "aaa"] ULiteralExpression (value = "aaa") ["aaa"] = "aaa" - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = withReceiver) [public static final fun withReceiver($this$withReceiver: java.lang.String, a: int, b: float) : void = [!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] = Undetermined + UMethod (name = withReceiver) [public static final fun withReceiver($this$withReceiver: java.lang.String, a: int, b: float) : void {...}] UParameter (name = $this$withReceiver) [var $this$withReceiver: java.lang.String] UParameter (name = a) [var a: int] UParameter (name = b) [var b: float] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = call) [public static final fun call() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = objectLiteral) [public static final fun objectLiteral() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined + UMethod (name = call) [public static final fun call() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + UMethod (name = objectLiteral) [public static final fun objectLiteral() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (OBJECT_LITERAL) [[!] UnknownKotlinExpression (OBJECT_LITERAL)] = Undetermined UClass (name = A) [public final class A {...}] UMethod (name = A) [public fun A() = UastEmptyExpression] - UMethod (name = with2Receivers) [public final fun with2Receivers($this$with2Receivers: java.lang.String, a: int, b: float) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = with2Receivers) [public final fun with2Receivers($this$with2Receivers: java.lang.String, a: int, b: float) : void {...}] UParameter (name = $this$with2Receivers) [var $this$with2Receivers: java.lang.String] UParameter (name = a) [var a: int] UParameter (name = b) [var b: float] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined UClass (name = Parent) [public class Parent {...}] UMethod (name = Parent) [public fun Parent(a: java.lang.String, b: int) = UastEmptyExpression] UParameter (name = a) [var a: java.lang.String] diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/ParametersWithDefaultValues.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/ParametersWithDefaultValues.values.fir.txt index 06cb3be626f..abf342df8fd 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/ParametersWithDefaultValues.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/ParametersWithDefaultValues.values.fir.txt @@ -1,10 +1,10 @@ UFile (package = ) [public final class ParametersWithDefaultValuesKt {...] UClass (name = ParametersWithDefaultValuesKt) [public final class ParametersWithDefaultValuesKt {...}] - UMethod (name = foo) [public static final fun foo(a: int, b: java.lang.String, c: int, flag: boolean) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public static final fun foo(a: int, b: java.lang.String, c: int, flag: boolean) : void {...}] UParameter (name = a) [var a: int] UParameter (name = b) [var b: java.lang.String] UParameter (name = c) [var c: int = "not-yet-compile-time-constant"] ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" UParameter (name = flag) [var flag: boolean = "not-yet-compile-time-constant"] ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/PropertyAccessors.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/PropertyAccessors.values.fir.txt index 58383da32f3..9dd36afe3c0 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/PropertyAccessors.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/PropertyAccessors.values.fir.txt @@ -1,11 +1,14 @@ UFile (package = ) [public final class PropertyTest {...] UClass (name = PropertyTest) [public final class PropertyTest {...}] UMethod (name = PropertyTest) [public fun PropertyTest() = UastEmptyExpression] - UMethod (name = getStringRepresentation) [public final fun getStringRepresentation() : java.lang.String = [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] - [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined - UMethod (name = setStringRepresentation) [public final fun setStringRepresentation(value: java.lang.String) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = getStringRepresentation) [public final fun getStringRepresentation() : java.lang.String {...}] + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + UMethod (name = setStringRepresentation) [public final fun setStringRepresentation(value: java.lang.String) : void {...}] UParameter (name = value) [var value: java.lang.String] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = setDataFromString) [public final fun setDataFromString(data: java.lang.String) : void = [!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + UMethod (name = setDataFromString) [public final fun setDataFromString(data: java.lang.String) : void {...}] UParameter (name = data) [var data: java.lang.String] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/PropertyDelegate.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/PropertyDelegate.values.fir.txt index 50f306fa6ae..432ae19fd63 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/PropertyDelegate.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/PropertyDelegate.values.fir.txt @@ -1,6 +1,7 @@ UFile (package = ) [public final class PropertyDelegateKt {...] UClass (name = PropertyDelegateKt) [public final class PropertyDelegateKt {...}] UMethod (name = getSdCardPath) [public static final fun getSdCardPath() : java.lang.String = UastEmptyExpression] - UMethod (name = localPropertyTest) [public static final fun localPropertyTest() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = localPropertyTest) [public static final fun localPropertyTest() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined UMethod (name = getAnnotatedDelegate) [public static final fun getAnnotatedDelegate() : int = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/PropertyInitializer.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/PropertyInitializer.values.fir.txt index 6a9965f448b..713c417dad2 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/PropertyInitializer.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/PropertyInitializer.values.fir.txt @@ -1,8 +1,11 @@ UFile (package = ) [public final class TestPropertyInitializer {...] UClass (name = TestPropertyInitializer) [public final class TestPropertyInitializer {...}] UMethod (name = TestPropertyInitializer) [public fun TestPropertyInitializer() = UastEmptyExpression] - UMethod (name = getWithSetter) [public final fun getWithSetter() : java.lang.String = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Undetermined - UMethod (name = setWithSetter) [public final fun setWithSetter(p: java.lang.String) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = getWithSetter) [public final fun getWithSetter() : java.lang.String {...}] + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Undetermined + UMethod (name = setWithSetter) [public final fun setWithSetter(p: java.lang.String) : void {...}] UParameter (name = p) [var p: java.lang.String] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/PropertyInitializerWithoutSetter.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/PropertyInitializerWithoutSetter.values.fir.txt index 8569e9e3ea7..87314a75306 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/PropertyInitializerWithoutSetter.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/PropertyInitializerWithoutSetter.values.fir.txt @@ -2,7 +2,9 @@ UFile (package = ) [public final class PropertyInitializerWithoutSetterKt {...] UClass (name = PropertyInitializerWithoutSetterKt) [public final class PropertyInitializerWithoutSetterKt {...}] UField (name = withoutSetter) [private static var withoutSetter: java.lang.String = "/sdcard"] ULiteralExpression (value = "/sdcard") ["/sdcard"] = "/sdcard" - UMethod (name = getWithoutSetter) [public static final fun getWithoutSetter() : java.lang.String = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Undetermined + UMethod (name = getWithoutSetter) [public static final fun getWithoutSetter() : java.lang.String {...}] + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Undetermined UMethod (name = setWithoutSetter) [public static final fun setWithoutSetter(value: java.lang.String) : void = UastEmptyExpression] UParameter (name = value) [var value: java.lang.String] diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/PropertyReferences.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/PropertyReferences.values.fir.txt index 01a753eb920..382b9524760 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/PropertyReferences.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/PropertyReferences.values.fir.txt @@ -1,10 +1,21 @@ UFile (package = ) [public final class PropertyReferencesKt {...] UClass (name = PropertyReferencesKt) [public final class PropertyReferencesKt {...}] - UMethod (name = properties) [public static final fun properties() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = ext) [public static final fun ext($this$ext: A) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = properties) [public static final fun properties() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (PREFIX_EXPRESSION) [[!] UnknownKotlinExpression (PREFIX_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (POSTFIX_EXPRESSION) [[!] UnknownKotlinExpression (POSTFIX_EXPRESSION)] = Undetermined + UMethod (name = ext) [public static final fun ext($this$ext: A) : void {...}] UParameter (name = $this$ext) [var $this$ext: A] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (PREFIX_EXPRESSION) [[!] UnknownKotlinExpression (PREFIX_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (POSTFIX_EXPRESSION) [[!] UnknownKotlinExpression (POSTFIX_EXPRESSION)] = Undetermined UClass (name = A) [public final class A {...}] UField (name = privateProp) [private var privateProp: int = "not-yet-compile-time-constant"] ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" @@ -14,6 +25,10 @@ UFile (package = ) [public final class PropertyReferencesKt {...] UMethod (name = getMutableProp) [public final fun getMutableProp() : int = UastEmptyExpression] UMethod (name = setMutableProp) [public final fun setMutableProp(value: int) : void = UastEmptyExpression] UParameter (name = value) [var value: int] - UMethod (name = add) [public final fun add(x: int) : int = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = add) [public final fun add(x: int) : int {...}] UParameter (name = x) [var x: int] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Nothing + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Undetermined + UReturnExpression [return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/PropertyWithAnnotation.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/PropertyWithAnnotation.values.fir.txt index 7a70d2dec7b..c4f2b1ae137 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/PropertyWithAnnotation.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/PropertyWithAnnotation.values.fir.txt @@ -3,11 +3,16 @@ UFile (package = ) [public final class PropertyWithAnnotationKt {...] UField (name = prop1) [private static final var prop1: int = "not-yet-compile-time-constant"] ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" UMethod (name = getProp1) [public static final fun getProp1() : int = UastEmptyExpression] - UMethod (name = getProp2) [public static final fun getProp2() : int = "not-yet-compile-time-constant"] - ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" - UMethod (name = getProp3) [public static final fun getProp3() : int = "not-yet-compile-time-constant"] - ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" - UMethod (name = setProp3) [public static final fun setProp3(value: int) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = getProp2) [public static final fun getProp2() : int {...}] + UBlockExpression [{...}] = Nothing + UReturnExpression [return "not-yet-compile-time-constant"] = Nothing + ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" + UMethod (name = getProp3) [public static final fun getProp3() : int {...}] + UBlockExpression [{...}] = Nothing + UReturnExpression [return "not-yet-compile-time-constant"] = Nothing + ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" + UMethod (name = setProp3) [public static final fun setProp3(value: int) : void {...}] UParameter (name = value) [var value: int] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Undetermined UClass (name = TestAnnotation) [public abstract annotation TestAnnotation {...}] diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/QualifiedConstructorCall.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/QualifiedConstructorCall.values.fir.txt index fc64a2ba9b0..973d91fd1a3 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/QualifiedConstructorCall.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/QualifiedConstructorCall.values.fir.txt @@ -3,5 +3,7 @@ UFile (package = A.B.C) [package A.B.C...] UMethod (name = Foo) [public fun Foo() = UastEmptyExpression] UClass (name = Bar) [public final class Bar {...}] UMethod (name = Bar) [public fun Bar() = UastEmptyExpression] - UMethod (name = getFoo) [public final fun getFoo() : A.B.C.Foo = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = getFoo) [public final fun getFoo() : A.B.C.Foo {...}] + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/ReceiverFun.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/ReceiverFun.values.fir.txt index 89ac0594d0f..273d576cf96 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/ReceiverFun.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/ReceiverFun.values.fir.txt @@ -1,10 +1,14 @@ UFile (package = ) [public final class ReceiverFunKt {...] UClass (name = ReceiverFunKt) [public final class ReceiverFunKt {...}] - UMethod (name = foo) [public static final fun foo($this$foo: java.lang.String) : int = [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] + UMethod (name = foo) [public static final fun foo($this$foo: java.lang.String) : int {...}] UParameter (name = $this$foo) [var $this$foo: java.lang.String] - [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined - UMethod (name = getRx) [public static final fun getRx($this$rx: java.lang.String) : kotlin.text.Regex = [!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + UMethod (name = getRx) [public static final fun getRx($this$rx: java.lang.String) : kotlin.text.Regex {...}] UParameter (name = $this$rx) [var $this$rx: java.lang.String] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (CALL_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined UClass (name = MyReceiverAnnotation) [public abstract annotation MyReceiverAnnotation {...}] UMethod (name = name) [public abstract fun name() : java.lang.String = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/ReifiedResolve.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/ReifiedResolve.values.fir.txt index 27d169d6927..3412669358c 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/ReifiedResolve.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/ReifiedResolve.values.fir.txt @@ -1,4 +1,9 @@ UFile (package = ) [public final class ReifiedResolveKt {...] UClass (name = ReifiedResolveKt) [public final class ReifiedResolveKt {...}] - UMethod (name = resolve) [public static final fun resolve() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = resolve) [public static final fun resolve() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/ReifiedReturnType.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/ReifiedReturnType.values.fir.txt index fe772a7b8b5..af468390926 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/ReifiedReturnType.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/ReifiedReturnType.values.fir.txt @@ -1,9 +1,11 @@ UFile (package = ) [public final class ReifiedReturnTypeKt {...] UClass (name = ReifiedReturnTypeKt) [public final class ReifiedReturnTypeKt {...}] - UMethod (name = copyWhenGreater) [public static final fun copyWhenGreater(list: java.util.List, threshold: T, threshold2: B) : B = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = copyWhenGreater) [public static final fun copyWhenGreater(list: java.util.List, threshold: T, threshold2: B) : B {...}] UParameter (name = list) [var list: java.util.List] UParameter (name = threshold) [var threshold: T] UParameter (name = threshold2) [var threshold2: B] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Undetermined UClass (name = Foo) [public final class Foo {...}] UMethod (name = Foo) [public fun Foo() = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/Resolve.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/Resolve.values.fir.txt index 04459fd1456..afc7fc96a26 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/Resolve.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/Resolve.values.fir.txt @@ -1,14 +1,30 @@ UFile (package = ) [public final class ResolveKt {...] UClass (name = ResolveKt) [public final class ResolveKt {...}] - UMethod (name = bar) [public static final fun bar() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = barT) [public static final fun barT(t: T) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = bar) [public static final fun bar() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + UMethod (name = barT) [public static final fun barT(t: T) : void {...}] UParameter (name = t) [var t: T] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = barTL) [public static final fun barTL(listT: T) : void = [!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + UMethod (name = barTL) [public static final fun barTL(listT: T) : void {...}] UParameter (name = listT) [var listT: T] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (FOR) [[!] UnknownKotlinExpression (FOR)] = Undetermined UClass (name = A) [public class A {...}] UMethod (name = A) [public fun A() = UastEmptyExpression] - UMethod (name = foo) [public final fun foo() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = foo) [public final fun foo() : void {...}] + UBlockExpression [{...}] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/SAM.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/SAM.values.fir.txt index e0e4953f7d8..b83503ffea4 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/SAM.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/SAM.values.fir.txt @@ -14,21 +14,36 @@ UFile (package = ) [import java.lang.Thread...] UMethod (name = getFoo) [public static final fun getFoo() : java.lang.Runnable = UastEmptyExpression] UMethod (name = setFoo) [public static final fun setFoo(value: java.lang.Runnable) : void = UastEmptyExpression] UParameter (name = value) [var value: java.lang.Runnable] - UMethod (name = bar) [public static final fun bar() : java.lang.Runnable = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = bar) [public static final fun bar() : java.lang.Runnable {...}] + UBlockExpression [{...}] = Nothing + [!] UnknownKotlinExpression (BINARY_EXPRESSION) [[!] UnknownKotlinExpression (BINARY_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + UReturnExpression [return [!] UnknownKotlinExpression (LAMBDA_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (LAMBDA_EXPRESSION) [[!] UnknownKotlinExpression (LAMBDA_EXPRESSION)] = Undetermined UMethod (name = getBaz) [public static final fun getBaz() : java.lang.Runnable = UastEmptyExpression] - UMethod (name = runRunnable) [public static final fun runRunnable(r: java.lang.Runnable) : error.NonExistentClass = [!] UnknownKotlinExpression (CALL_EXPRESSION)] + UMethod (name = runRunnable) [public static final fun runRunnable(r: java.lang.Runnable) : error.NonExistentClass {...}] UParameter (name = r) [var r: java.lang.Runnable] - [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined - UMethod (name = test1) [public static final fun test1() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = test2) [public static final fun test2() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = test3) [public static final fun test3() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = ambiguousSamAcceptor) [public static final fun ambiguousSamAcceptor(s: java.util.function.Supplier) : java.lang.String = [!] UnknownKotlinExpression (CALL_EXPRESSION)] + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (CALL_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + UMethod (name = test1) [public static final fun test1() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + UMethod (name = test2) [public static final fun test2() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + UMethod (name = test3) [public static final fun test3() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + UMethod (name = ambiguousSamAcceptor) [public static final fun ambiguousSamAcceptor(s: java.util.function.Supplier) : java.lang.String {...}] UParameter (name = s) [var s: java.util.function.Supplier] - [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined - UMethod (name = ambiguousSamAcceptor) [public static final fun ambiguousSamAcceptor(s: java.util.concurrent.Callable) : java.lang.String = [!] UnknownKotlinExpression (CALL_EXPRESSION)] + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (CALL_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + UMethod (name = ambiguousSamAcceptor) [public static final fun ambiguousSamAcceptor(s: java.util.concurrent.Callable) : java.lang.String {...}] UParameter (name = s) [var s: java.util.concurrent.Callable] - [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (CALL_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/Simple.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/Simple.values.fir.txt index e97722fa19c..8b15d7c7d99 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/Simple.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/Simple.values.fir.txt @@ -3,6 +3,7 @@ UFile (package = ) [public final class Simple {...] UField (name = property) [private final var property: java.lang.String = "Mary"] ULiteralExpression (value = "Mary") ["Mary"] = "Mary" UMethod (name = Simple) [public fun Simple() = UastEmptyExpression] - UMethod (name = method) [public final fun method() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = method) [public final fun method() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined UMethod (name = getProperty) [public final fun getProperty() : java.lang.String = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/SimpleAnnotated.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/SimpleAnnotated.values.fir.txt index 2b98af34623..b707280687e 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/SimpleAnnotated.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/SimpleAnnotated.values.fir.txt @@ -3,6 +3,7 @@ UFile (package = ) [public final class SimpleAnnotated {...] UField (name = property) [private final var property: java.lang.String = "Mary"] ULiteralExpression (value = "Mary") ["Mary"] = "Mary" UMethod (name = SimpleAnnotated) [public fun SimpleAnnotated() = UastEmptyExpression] - UMethod (name = method) [public final fun method() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = method) [public final fun method() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined UMethod (name = getProperty) [public final fun getProperty() : java.lang.String = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/StringTemplateComplex.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/StringTemplateComplex.values.fir.txt index 0662a5ebef0..8024d5bcfab 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/StringTemplateComplex.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/StringTemplateComplex.values.fir.txt @@ -34,9 +34,14 @@ UFile (package = ) [public final class StringTemplateComplexKt {...] UMethod (name = getLiteralInLiteral) [public static final fun getLiteralInLiteral() : java.lang.String = UastEmptyExpression] UMethod (name = getLiteralInLiteral2) [public static final fun getLiteralInLiteral2() : java.lang.String = UastEmptyExpression] UMethod (name = getEmpty) [public static final fun getEmpty() : java.lang.String = UastEmptyExpression] - UMethod (name = simpleForTemplate) [public static final fun simpleForTemplate(i: int) : java.lang.String = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + UMethod (name = simpleForTemplate) [public static final fun simpleForTemplate(i: int) : java.lang.String {...}] UParameter (name = i) [var i: int = "not-yet-compile-time-constant"] ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Undetermined - UMethod (name = foo) [public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Undetermined + UMethod (name = foo) [public static final fun foo() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/StringTemplateComplexForUInjectionHost.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/StringTemplateComplexForUInjectionHost.values.fir.txt index 3cfaa2b8bbe..1ce6cec6e95 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/StringTemplateComplexForUInjectionHost.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/StringTemplateComplexForUInjectionHost.values.fir.txt @@ -34,9 +34,14 @@ UFile (package = ) [public final class StringTemplateComplexForUInjectionHostKt UMethod (name = getLiteralInLiteral) [public static final fun getLiteralInLiteral() : java.lang.String = UastEmptyExpression] UMethod (name = getLiteralInLiteral2) [public static final fun getLiteralInLiteral2() : java.lang.String = UastEmptyExpression] UMethod (name = getEmpty) [public static final fun getEmpty() : java.lang.String = UastEmptyExpression] - UMethod (name = simpleForTemplate) [public static final fun simpleForTemplate(i: int) : java.lang.String = [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] + UMethod (name = simpleForTemplate) [public static final fun simpleForTemplate(i: int) : java.lang.String {...}] UParameter (name = i) [var i: int = "not-yet-compile-time-constant"] ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" - [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Undetermined - UMethod (name = foo) [public static final fun foo() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Undetermined + UMethod (name = foo) [public static final fun foo() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/SuperCalls.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/SuperCalls.values.fir.txt index 74d70cd756c..f3cfa76ea7b 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/SuperCalls.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/SuperCalls.values.fir.txt @@ -3,9 +3,9 @@ UFile (package = ) [public final class SuperCallsKt {...] UField (name = anon) [private static final var anon: A = [!] UnknownKotlinExpression (OBJECT_LITERAL)] [!] UnknownKotlinExpression (OBJECT_LITERAL) [[!] UnknownKotlinExpression (OBJECT_LITERAL)] = Undetermined UMethod (name = getAnon) [public static final fun getAnon() : A = UastEmptyExpression] - UMethod (name = cons) [public static final fun cons(a: A) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = cons) [public static final fun cons(a: A) : void {...}] UParameter (name = a) [var a: A] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined UClass (name = A) [public class A {...}] UField (name = str) [private final var str: java.lang.String] UMethod (name = A) [public fun A(str: java.lang.String) = UastEmptyExpression] @@ -13,21 +13,23 @@ UFile (package = ) [public final class SuperCallsKt {...] UMethod (name = A) [public fun A(i: int) = UastEmptyExpression] UParameter (name = i) [var i: int] UMethod (name = getStr) [public final fun getStr() : java.lang.String = UastEmptyExpression] - UMethod (name = foo) [public fun foo(a: long) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public fun foo(a: long) : void {...}] UParameter (name = a) [var a: long] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined UClass (name = B) [public final class B : null {...}] UMethod (name = B) [public fun B(param: java.lang.String) = UastEmptyExpression] UParameter (name = param) [var param: java.lang.String] UClass (name = C) [public final class C : null {...}] UMethod (name = C) [public fun C(p: java.lang.String) = UastEmptyExpression] UParameter (name = p) [var p: java.lang.String] - UMethod (name = C) [public fun C(i: int) = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = C) [public fun C(i: int) {...}] UParameter (name = i) [var i: int] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = foo) [public fun foo(a: long) : void = [!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + UMethod (name = foo) [public fun foo(a: long) : void {...}] UParameter (name = a) [var a: long] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined UClass (name = O) [public final class O : null {...}] UField (name = INSTANCE) [public static final var INSTANCE: O] UMethod (name = O) [private fun O() = UastEmptyExpression] diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/Suspend.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/Suspend.values.fir.txt index e023bbcd05b..7b3cbd7bc96 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/Suspend.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/Suspend.values.fir.txt @@ -1,10 +1,16 @@ UFile (package = test.pkg) [package test.pkg...] UClass (name = SuspendKt) [public final class SuspendKt {...}] - UMethod (name = top) [public static final fun top() : int = [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] - [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined + UMethod (name = top) [public static final fun top() : int {...}] + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION) [[!] UnknownKotlinExpression (DOT_QUALIFIED_EXPRESSION)] = Undetermined UClass (name = Context) [public final class Context {...}] UMethod (name = Context) [public fun Context() = UastEmptyExpression] - UMethod (name = inner) [public final fun inner() : int = [!] UnknownKotlinExpression (CALL_EXPRESSION)] - [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined - UMethod (name = suspendPrivate) [private final fun suspendPrivate() : int = [!] UnknownKotlinExpression (CALL_EXPRESSION)] - [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + UMethod (name = inner) [public final fun inner() : int {...}] + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (CALL_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined + UMethod (name = suspendPrivate) [private final fun suspendPrivate() : int {...}] + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (CALL_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/TryCatch.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/TryCatch.values.fir.txt index 9e279ca46d1..f72672fc94f 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/TryCatch.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/TryCatch.values.fir.txt @@ -1,21 +1,23 @@ UFile (package = ) [public final class TryCatch {...] UClass (name = TryCatch) [public final class TryCatch {...}] UMethod (name = TryCatch) [public fun TryCatch() = UastEmptyExpression] - UMethod (name = catches) [public final fun catches() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = body) [public final fun body() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = catcher) [public final fun catcher() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = finalizer) [public final fun finalizer() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = catches) [public final fun catches() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (TRY) [[!] UnknownKotlinExpression (TRY)] = Undetermined + UMethod (name = body) [public final fun body() : void {...}] + UBlockExpression [{...}] = Undetermined + UMethod (name = catcher) [public final fun catcher() : void {...}] + UBlockExpression [{...}] = Undetermined + UMethod (name = finalizer) [public final fun finalizer() : void {...}] + UBlockExpression [{...}] = Undetermined UClass (name = TryCatchAnnotations) [public final class TryCatchAnnotations {...}] UMethod (name = TryCatchAnnotations) [public fun TryCatchAnnotations() = UastEmptyExpression] - UMethod (name = catches) [public final fun catches() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = body) [public final fun body() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = catcher) [public final fun catcher() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = finalizer) [public final fun finalizer() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = catches) [public final fun catches() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (TRY) [[!] UnknownKotlinExpression (TRY)] = Undetermined + UMethod (name = body) [public final fun body() : void {...}] + UBlockExpression [{...}] = Undetermined + UMethod (name = catcher) [public final fun catcher() : void {...}] + UBlockExpression [{...}] = Undetermined + UMethod (name = finalizer) [public final fun finalizer() : void {...}] + UBlockExpression [{...}] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/TypeAliasExpansionWithOtherAliasInArgument.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/TypeAliasExpansionWithOtherAliasInArgument.values.fir.txt index 77a65b79d1b..275d840a669 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/TypeAliasExpansionWithOtherAliasInArgument.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/TypeAliasExpansionWithOtherAliasInArgument.values.fir.txt @@ -1,10 +1,14 @@ UFile (package = ) [public final class TypeAliasExpansionWithOtherAliasInArgumentKt {...] UClass (name = TypeAliasExpansionWithOtherAliasInArgumentKt) [public final class TypeAliasExpansionWithOtherAliasInArgumentKt {...}] - UMethod (name = foo) [public static final fun foo($this$foo: kotlin.jvm.functions.Function1, x: kotlin.jvm.functions.Function1) : kotlin.jvm.functions.Function1 = "not-yet-compile-time-constant"] + UMethod (name = foo) [public static final fun foo($this$foo: kotlin.jvm.functions.Function1, x: kotlin.jvm.functions.Function1) : kotlin.jvm.functions.Function1 {...}] UParameter (name = $this$foo) [var $this$foo: kotlin.jvm.functions.Function1] UParameter (name = x) [var x: kotlin.jvm.functions.Function1] - ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" - UMethod (name = bar) [public static final fun bar($this$bar: java.util.Map, x: java.util.Map) : java.util.Map = "not-yet-compile-time-constant"] + UBlockExpression [{...}] = Nothing + UReturnExpression [return "not-yet-compile-time-constant"] = Nothing + ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" + UMethod (name = bar) [public static final fun bar($this$bar: java.util.Map, x: java.util.Map) : java.util.Map {...}] UParameter (name = $this$bar) [var $this$bar: java.util.Map] UParameter (name = x) [var x: java.util.Map] - ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" + UBlockExpression [{...}] = Nothing + UReturnExpression [return "not-yet-compile-time-constant"] = Nothing + ULiteralExpression (value = "not-yet-compile-time-constant") ["not-yet-compile-time-constant"] = "not-yet-compile-time-constant" diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/TypeInAnnotation.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/TypeInAnnotation.values.fir.txt index 1517b1379a4..b2756dbd82c 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/TypeInAnnotation.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/TypeInAnnotation.values.fir.txt @@ -1,5 +1,5 @@ UFile (package = ) [public final class C {...] UClass (name = C) [public final class C {...}] UMethod (name = C) [public fun C() = UastEmptyExpression] - UMethod (name = foo) [public final fun foo() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = foo) [public final fun foo() : void {...}] + UBlockExpression [{...}] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/TypeReferences.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/TypeReferences.values.fir.txt index 54ef3abcc4a..2b75b85e5c2 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/TypeReferences.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/TypeReferences.values.fir.txt @@ -1,8 +1,21 @@ UFile (package = ) [public final class TypeReferencesKt {...] UClass (name = TypeReferencesKt) [public final class TypeReferencesKt {...}] - UMethod (name = foo) [public static final fun foo(parameter: int) : java.lang.String = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = foo) [public static final fun foo(parameter: int) : java.lang.String {...}] UParameter (name = parameter) [var parameter: int] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined - UMethod (name = parameterizedFoo) [public static final fun parameterizedFoo(arg: T) : void = [!] UnknownKotlinExpression (BLOCK)] + UBlockExpression [{...}] = Nothing + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + UReturnExpression [return [!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Nothing + [!] UnknownKotlinExpression (REFERENCE_EXPRESSION) [[!] UnknownKotlinExpression (REFERENCE_EXPRESSION)] = Undetermined + UMethod (name = parameterizedFoo) [public static final fun parameterizedFoo(arg: T) : void {...}] UParameter (name = arg) [var arg: T] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (CALL_EXPRESSION) [[!] UnknownKotlinExpression (CALL_EXPRESSION)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/UnexpectedContainerException.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/UnexpectedContainerException.values.fir.txt index a51160c16e1..f0c3b314be7 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/UnexpectedContainerException.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/UnexpectedContainerException.values.fir.txt @@ -4,7 +4,8 @@ UFile (package = ) [public abstract interface Callback {...] UParameter (name = throwable) [var throwable: java.lang.Throwable] UClass (name = Model) [public final class Model {...}] UMethod (name = Model) [public fun Model() = UastEmptyExpression] - UMethod (name = crashMe) [public final fun crashMe(clazz: java.lang.Class, factory: kotlin.jvm.functions.Function0) : void = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = crashMe) [public final fun crashMe(clazz: java.lang.Class, factory: kotlin.jvm.functions.Function0) : void {...}] UParameter (name = clazz) [var clazz: java.lang.Class] UParameter (name = factory) [var factory: kotlin.jvm.functions.Function0] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (THROW) [[!] UnknownKotlinExpression (THROW)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/WhenAndDestructing.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/WhenAndDestructing.values.fir.txt index ec903826a7e..c7143a9cdb3 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/WhenAndDestructing.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/WhenAndDestructing.values.fir.txt @@ -1,5 +1,7 @@ UFile (package = ) [public final class WhenAndDestructingKt {...] UClass (name = WhenAndDestructingKt) [public final class WhenAndDestructingKt {...}] - UMethod (name = getElementsAdditionalResolve) [public static final fun getElementsAdditionalResolve(string: java.lang.String) : java.lang.String = [!] UnknownKotlinExpression (BLOCK)] + UMethod (name = getElementsAdditionalResolve) [public static final fun getElementsAdditionalResolve(string: java.lang.String) : java.lang.String {...}] UParameter (name = string) [var string: java.lang.String] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined + [!] UnknownKotlinExpression (WHEN) [[!] UnknownKotlinExpression (WHEN)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/WhenIs.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/WhenIs.values.fir.txt index cbfc00bf433..88ecdc5d5ac 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/WhenIs.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/WhenIs.values.fir.txt @@ -1,5 +1,7 @@ UFile (package = ) [public final class WhenIsKt {...] UClass (name = WhenIsKt) [public final class WhenIsKt {...}] - UMethod (name = foo) [public static final fun foo(bar: java.lang.Object) : void = [!] UnknownKotlinExpression (WHEN)] + UMethod (name = foo) [public static final fun foo(bar: java.lang.Object) : void {...}] UParameter (name = bar) [var bar: java.lang.Object] - [!] UnknownKotlinExpression (WHEN) [[!] UnknownKotlinExpression (WHEN)] = Undetermined + UBlockExpression [{...}] = Nothing + UReturnExpression [return [!] UnknownKotlinExpression (WHEN)] = Nothing + [!] UnknownKotlinExpression (WHEN) [[!] UnknownKotlinExpression (WHEN)] = Undetermined diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/WhenStringLiteral.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/WhenStringLiteral.values.fir.txt index ab6142a9f9e..2ff2b684502 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/WhenStringLiteral.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/WhenStringLiteral.values.fir.txt @@ -6,5 +6,7 @@ UFile (package = ) [public final class WhenStringLiteralKt {...] [!] UnknownKotlinExpression (WHEN) [[!] UnknownKotlinExpression (WHEN)] = Undetermined UMethod (name = getA) [public static final fun getA() : java.lang.String = UastEmptyExpression] UMethod (name = getB) [public static final fun getB() : int = UastEmptyExpression] - UMethod (name = ) [public static final fun () : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = ) [public static final fun () : void {...}] + UBlockExpression [{...}] = "def1" + ULiteralExpression (value = "abc1") ["abc1"] = "abc1" + ULiteralExpression (value = "def1") ["def1"] = "def1" diff --git a/plugins/uast-kotlin-fir/testData/legacyValues/ea101715.values.fir.txt b/plugins/uast-kotlin-fir/testData/legacyValues/ea101715.values.fir.txt index 523ba1d7da4..5430d6f7c7f 100644 --- a/plugins/uast-kotlin-fir/testData/legacyValues/ea101715.values.fir.txt +++ b/plugins/uast-kotlin-fir/testData/legacyValues/ea101715.values.fir.txt @@ -1,7 +1,8 @@ UFile (package = ) [public final class Ea101715Kt {...] UClass (name = Ea101715Kt) [public final class Ea101715Kt {...}] - UMethod (name = a) [public static final fun a() : void = [!] UnknownKotlinExpression (BLOCK)] - [!] UnknownKotlinExpression (BLOCK) [[!] UnknownKotlinExpression (BLOCK)] = Undetermined + UMethod (name = a) [public static final fun a() : void {...}] + UBlockExpression [{...}] = Undetermined + [!] UnknownKotlinExpression (PROPERTY) [[!] UnknownKotlinExpression (PROPERTY)] = Undetermined UClass (name = Obj) [public final class Obj {...}] UField (name = INSTANCE) [public static final var INSTANCE: Obj] UMethod (name = Obj) [private fun Obj() = UastEmptyExpression] diff --git a/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/declarations/KotlinUClass.kt b/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/declarations/KotlinUClass.kt index 0f20e2d7099..2aa6ebc1dc4 100644 --- a/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/declarations/KotlinUClass.kt +++ b/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/declarations/KotlinUClass.kt @@ -221,7 +221,7 @@ open class KotlinConstructorUMethod( } val bodyExpressions = getBodyExpressions() if (delegationCall == null && bodyExpressions.isEmpty()) return@lz null - KotlinUBlockExpression.KotlinLazyUBlockExpression(this) { uastParent -> + KotlinLazyUBlockExpression(this) { uastParent -> SmartList().apply { delegationCall?.let { add(KotlinUFunctionCallExpression(it, uastParent)) @@ -338,7 +338,7 @@ class KotlinScriptUClass( ) : KotlinUMethod(psi, psi.kotlinOrigin, givenParent) { override val uastBody: UExpression? by lz { val initializers = script.declarations.filterIsInstance() - KotlinUBlockExpression.create(initializers, this) + KotlinLazyUBlockExpression.create(initializers, this) } override val javaPsi = psi } diff --git a/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/declarations/KotlinUMethod.kt b/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/declarations/KotlinUMethod.kt index afb49b9b9cc..68af3571b3c 100644 --- a/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/declarations/KotlinUMethod.kt +++ b/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/declarations/KotlinUMethod.kt @@ -180,16 +180,3 @@ class KotlinUMethodWithFakeLightDelegate internal constructor( override fun hashCode(): Int = original.hashCode() } - -internal fun wrapExpressionBody(function: UElement, bodyExpression: KtExpression): UExpression? = when (bodyExpression) { - !is KtBlockExpression -> { - KotlinUBlockExpression.KotlinLazyUBlockExpression(function) { block -> - val implicitReturn = KotlinUImplicitReturnExpression(block) - val uBody = function.getLanguagePlugin().convertElement(bodyExpression, implicitReturn) as? UExpression - ?: return@KotlinLazyUBlockExpression emptyList() - listOf(implicitReturn.apply { returnExpression = uBody }) - } - - } - else -> function.getLanguagePlugin().convertElement(bodyExpression, function) as? UExpression -} diff --git a/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/expressions/KotlinUBlockExpression.kt b/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/expressions/KotlinUBlockExpression.kt index feb1fb5cc25..5913b06d4a4 100644 --- a/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/expressions/KotlinUBlockExpression.kt +++ b/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/expressions/KotlinUBlockExpression.kt @@ -16,7 +16,6 @@ package org.jetbrains.uast.kotlin -import com.intellij.psi.PsiElement import org.jetbrains.kotlin.psi.KtAnonymousInitializer import org.jetbrains.kotlin.psi.KtBlockExpression import org.jetbrains.uast.* @@ -24,35 +23,14 @@ import org.jetbrains.uast.* open class KotlinUBlockExpression( override val sourcePsi: KtBlockExpression, givenParent: UElement? -) : KotlinAbstractUExpression(givenParent), UBlockExpression, KotlinUElementWithType { - override val expressions by lz { sourcePsi.statements.map { KotlinConverter.convertOrEmpty(it, this) } } - - class KotlinLazyUBlockExpression( - override val uastParent: UElement?, - expressionProducer: (expressionParent: UElement) -> List - ) : UBlockExpression { - override val psi: PsiElement? get() = null - override val javaPsi: PsiElement? get() = null - override val sourcePsi: PsiElement? get() = null - override val annotations: List = emptyList() - override val expressions by lz { expressionProducer(this) } - } - - companion object { - fun create(initializers: List, uastParent: UElement): UBlockExpression { - val languagePlugin = uastParent.getLanguagePlugin() - return KotlinLazyUBlockExpression(uastParent) { expressionParent -> - initializers.map { languagePlugin.convertOpt(it.body, expressionParent) ?: UastEmptyExpression(expressionParent) } - } - } - } - +) : KotlinAbstractUBlockExpression(sourcePsi, givenParent) { override fun convertParent(): UElement? { val directParent = super.convertParent() if (directParent is UnknownKotlinExpression && directParent.sourcePsi is KtAnonymousInitializer) { val containingUClass = directParent.getContainingUClass() ?: return directParent - containingUClass.methods - .find { it is KotlinConstructorUMethod && it.isPrimary || it is KotlinSecondaryConstructorWithInitializersUMethod }?.let { + containingUClass.methods.find { + it is KotlinConstructorUMethod && it.isPrimary || it is KotlinSecondaryConstructorWithInitializersUMethod + }?.let { return it.uastBody } } diff --git a/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/expressions/KotlinUReturnExpression.kt b/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/expressions/KotlinUReturnExpression.kt deleted file mode 100644 index b1ec9b7e6f2..00000000000 --- a/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/expressions/KotlinUReturnExpression.kt +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright 2010-2016 JetBrains s.r.o. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.jetbrains.uast.kotlin - -import com.intellij.psi.PsiElement -import org.jetbrains.kotlin.psi.KtReturnExpression -import org.jetbrains.uast.UElement -import org.jetbrains.uast.UExpression -import org.jetbrains.uast.UReturnExpression -import org.jetbrains.uast.kotlin.internal.KotlinFakeUElement - -class KotlinUReturnExpression( - override val sourcePsi: KtReturnExpression, - givenParent: UElement? -) : KotlinAbstractUExpression(givenParent), UReturnExpression, KotlinUElementWithType { - override val returnExpression by lz { KotlinConverter.convertOrNull(sourcePsi.returnedExpression, this) } -} - -class KotlinUImplicitReturnExpression( - givenParent: UElement? -) : KotlinAbstractUExpression(givenParent), UReturnExpression, KotlinUElementWithType, KotlinFakeUElement { - override val psi: PsiElement? - get() = null - - override lateinit var returnExpression: UExpression - internal set - - // Due to the lack of [psi], (lazily) delegate to the one in [returnExpression] - override val baseResolveProviderService: BaseKotlinUastResolveProviderService by lz { - (returnExpression as KotlinAbstractUElement).baseResolveProviderService - } - - override fun unwrapToSourcePsi(): List { - return returnExpression.toSourcePsiFakeAware() - } - -} diff --git a/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/expressions/LocalFunction.kt b/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/expressions/LocalFunction.kt index 1f393ee7c8e..8fda38588e8 100644 --- a/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/expressions/LocalFunction.kt +++ b/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/expressions/LocalFunction.kt @@ -7,7 +7,6 @@ import com.intellij.psi.PsiVariable import org.jetbrains.kotlin.psi.KtFunction import org.jetbrains.uast.* import org.jetbrains.uast.kotlin.* -import org.jetbrains.uast.kotlin.declarations.wrapExpressionBody import org.jetbrains.uast.kotlin.psi.UastKotlinPsiParameter import org.jetbrains.uast.kotlin.psi.UastKotlinPsiVariable diff --git a/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/internal/kotlinInternalUastUtils.kt b/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/internal/kotlinInternalUastUtils.kt index 1ad83fe76c6..5ed72c1247b 100644 --- a/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/internal/kotlinInternalUastUtils.kt +++ b/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/internal/kotlinInternalUastUtils.kt @@ -218,13 +218,6 @@ internal fun KtClassOrObject.toPsiType(): PsiType { return PsiTypesUtil.getClassType(lightClass) } -internal fun KtElement.canAnalyze(): Boolean { - if (!isValid) return false - val containingFile = containingFile as? KtFile ?: return false // EA-114080, EA-113475, EA-134193 - if (containingFile.doNotAnalyze != null) return false // To prevent exceptions during analysis - return true -} - internal fun KtElement.analyze(): BindingContext { if (!canAnalyze()) return BindingContext.EMPTY return ServiceManager.getService(project, KotlinUastResolveProviderService::class.java) diff --git a/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/kotlinConvertParentUtils.kt b/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/kotlinConvertParentUtils.kt index da886e6491a..12da6d716fb 100644 --- a/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/kotlinConvertParentUtils.kt +++ b/plugins/uast-kotlin/src/org/jetbrains/uast/kotlin/kotlinConvertParentUtils.kt @@ -205,9 +205,9 @@ fun doConvertParent(element: UElement, parent: PsiElement?): UElement? { && element !is UBlockExpression && element !is UTypeReferenceExpression // when element is a type in extension methods ) { - return KotlinUBlockExpression.KotlinLazyUBlockExpression(result, { block -> + return KotlinLazyUBlockExpression(result) { block -> listOf(KotlinUImplicitReturnExpression(block).apply { returnExpression = element }) - }).expressions.single() + }.expressions.single() } if (result is KotlinULambdaExpression.Body && element is UExpression && result.implicitReturn?.returnExpression == element) {