diff --git a/plugins/uast-java/src/org/jetbrains/uast/java/declarations/JavaParameterUTypeReference.kt b/plugins/uast-java/src/org/jetbrains/uast/java/declarations/JavaParameterUTypeReference.kt index 32c69094d24..dc6cdede9f8 100644 --- a/plugins/uast-java/src/org/jetbrains/uast/java/declarations/JavaParameterUTypeReference.kt +++ b/plugins/uast-java/src/org/jetbrains/uast/java/declarations/JavaParameterUTypeReference.kt @@ -29,7 +29,7 @@ class JavaParameterUTypeReference( override val name: String get() = psi.name.orAnonymous() - override val nameElement by lz { psi.nameIdentifier?.let { JavaPsiElementStub(it, this) } } + override val nameElement by lz { psi.nameIdentifier?.let { JavaDumbUElement(it, this) } } override fun resolve(context: UastContext) = psi.reference?.resolve()?.let { JavaConverter.convertWithParent(it) } as? UClass } \ No newline at end of file diff --git a/plugins/uast-java/src/org/jetbrains/uast/java/declarations/JavaUClass.kt b/plugins/uast-java/src/org/jetbrains/uast/java/declarations/JavaUClass.kt index 219a7b90089..0d57385bd17 100644 --- a/plugins/uast-java/src/org/jetbrains/uast/java/declarations/JavaUClass.kt +++ b/plugins/uast-java/src/org/jetbrains/uast/java/declarations/JavaUClass.kt @@ -32,7 +32,7 @@ class JavaUClass( override val nameElement by lz { if (psi is PsiAnonymousClass && newExpression != null) { - newExpression.classOrAnonymousClassReference?.referenceNameElement?.let { JavaPsiElementStub(it, this) } + newExpression.classOrAnonymousClassReference?.referenceNameElement?.let { JavaDumbUElement(it, this) } } else { JavaConverter.convert(psi.nameIdentifier, this) } diff --git a/plugins/uast-java/src/org/jetbrains/uast/java/declarations/JavaUFunction.kt b/plugins/uast-java/src/org/jetbrains/uast/java/declarations/JavaUFunction.kt index 040b1cf8f30..88627c79bbe 100644 --- a/plugins/uast-java/src/org/jetbrains/uast/java/declarations/JavaUFunction.kt +++ b/plugins/uast-java/src/org/jetbrains/uast/java/declarations/JavaUFunction.kt @@ -29,7 +29,7 @@ class JavaUFunction( override val name: String get() = if (psi.isConstructor) "" else psi.name - override val nameElement by lz { JavaConverter.convert(psi.nameIdentifier, this) } + override val nameElement by lz { JavaDumbUElement(psi.nameIdentifier, this) } override val valueParameters by lz { psi.parameterList.parameters.map { JavaConverter.convert(it, this) } } diff --git a/plugins/uast-java/src/org/jetbrains/uast/java/declarations/JavaUVariable.kt b/plugins/uast-java/src/org/jetbrains/uast/java/declarations/JavaUVariable.kt index 0d7f7f9cc05..0aeaaa0b825 100644 --- a/plugins/uast-java/src/org/jetbrains/uast/java/declarations/JavaUVariable.kt +++ b/plugins/uast-java/src/org/jetbrains/uast/java/declarations/JavaUVariable.kt @@ -30,7 +30,7 @@ class JavaUVariable( override val name: String get() = psi.name.orAnonymous() - override val nameElement by lz { JavaConverter.convert(psi.nameIdentifier, this) } + override val nameElement by lz { JavaDumbUElement(psi.nameIdentifier, this) } override val type by lz { JavaConverter.convert(psi.type, this) } override val initializer by lz { JavaConverter.convertOrEmpty(psi.initializer, this) } diff --git a/plugins/uast-java/src/org/jetbrains/uast/java/declarations/JavaValueParameterUVariable.kt b/plugins/uast-java/src/org/jetbrains/uast/java/declarations/JavaValueParameterUVariable.kt index ac68fbf9361..fcc739e87e2 100644 --- a/plugins/uast-java/src/org/jetbrains/uast/java/declarations/JavaValueParameterUVariable.kt +++ b/plugins/uast-java/src/org/jetbrains/uast/java/declarations/JavaValueParameterUVariable.kt @@ -26,7 +26,7 @@ class JavaValueParameterUVariable( override val name: String get() = psi.name.orAnonymous() - override val nameElement by lz { JavaConverter.convert(psi.nameIdentifier, this) } + override val nameElement by lz { JavaDumbUElement(psi.nameIdentifier, this) } override val type by lz { JavaConverter.convert(psi.type, this) } override val initializer: UExpression? diff --git a/plugins/uast-java/src/org/jetbrains/uast/java/expressions/JavaPsiElementStub.kt b/plugins/uast-java/src/org/jetbrains/uast/java/expressions/JavaDumbUElement.kt similarity index 87% rename from plugins/uast-java/src/org/jetbrains/uast/java/expressions/JavaPsiElementStub.kt rename to plugins/uast-java/src/org/jetbrains/uast/java/expressions/JavaDumbUElement.kt index 795e22bd779..0b133c8ed55 100644 --- a/plugins/uast-java/src/org/jetbrains/uast/java/expressions/JavaPsiElementStub.kt +++ b/plugins/uast-java/src/org/jetbrains/uast/java/expressions/JavaDumbUElement.kt @@ -20,10 +20,10 @@ import org.jetbrains.uast.NoTraverse import org.jetbrains.uast.UElement import org.jetbrains.uast.psi.PsiElementBacked -class JavaPsiElementStub( - override val psi: PsiElement, +class JavaDumbUElement( + override val psi: PsiElement?, override val parent: UElement -) : UElement, PsiElementBacked, NoTraverse { +) : JavaAbstractUElement(), UElement, PsiElementBacked, NoTraverse { override fun logString() = "JavaPsiElementStub" override fun renderString() = "" } \ No newline at end of file diff --git a/plugins/uast-java/src/org/jetbrains/uast/java/expressions/javaUCallExpressions.kt b/plugins/uast-java/src/org/jetbrains/uast/java/expressions/javaUCallExpressions.kt index a940e5f6d14..f701b4500df 100644 --- a/plugins/uast-java/src/org/jetbrains/uast/java/expressions/javaUCallExpressions.kt +++ b/plugins/uast-java/src/org/jetbrains/uast/java/expressions/javaUCallExpressions.kt @@ -25,7 +25,7 @@ import org.jetbrains.uast.psi.PsiElementBacked class JavaUCallExpression( override val psi: PsiMethodCallExpression, override val parent: UElement -) : UCallExpression, PsiElementBacked, JavaTypeHelper, NoEvaluate { +) : JavaAbstractUElement(), UCallExpression, PsiElementBacked, JavaTypeHelper, NoEvaluate { override val kind: UastCallKind get() = UastCallKind.FUNCTION_CALL @@ -54,7 +54,7 @@ class JavaUCallExpression( class JavaConstructorUCallExpression( override val psi: PsiNewExpression, override val parent: UElement -) : UCallExpression, PsiElementBacked, JavaTypeHelper, NoEvaluate { +) : JavaAbstractUElement(), UCallExpression, PsiElementBacked, JavaTypeHelper, NoEvaluate { override val kind by lz { when { psi.arrayInitializer != null -> JavaUastCallKinds.ARRAY_INITIALIZER @@ -110,7 +110,7 @@ class JavaConstructorUCallExpression( else null } - override val functionNameElement by lz { JavaPsiElementStub(psi, this) } + override val functionNameElement by lz { JavaDumbUElement(psi, this) } override fun resolve(context: UastContext) = psi.resolveConstructor()?.let { context.convert(it) } as? UFunction } @@ -118,7 +118,7 @@ class JavaConstructorUCallExpression( class JavaArrayInitializerUCallExpression( override val psi: PsiArrayInitializerExpression, override val parent: UElement -) : UCallExpression, PsiElementBacked, JavaTypeHelper, JavaEvaluateHelper { +) : JavaAbstractUElement(), UCallExpression, PsiElementBacked, JavaTypeHelper, JavaEvaluateHelper { override val functionReference: USimpleReferenceExpression? get() = null @@ -150,7 +150,7 @@ class JavaArrayInitializerUCallExpression( class JavaAnnotationArrayInitializerUCallExpression( override val psi: PsiArrayInitializerMemberValue, override val parent: UElement -) : UCallExpression, PsiElementBacked, JavaTypeHelper, JavaEvaluateHelper { +) : JavaAbstractUElement(), UCallExpression, PsiElementBacked, JavaTypeHelper, JavaEvaluateHelper { override val kind = JavaUastCallKinds.ARRAY_INITIALIZER override val functionReference: USimpleReferenceExpression? diff --git a/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/declarations/KotlinDumbUElement.kt b/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/declarations/KotlinDumbUElement.kt index 873169c3242..3806bada22a 100644 --- a/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/declarations/KotlinDumbUElement.kt +++ b/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/declarations/KotlinDumbUElement.kt @@ -21,8 +21,8 @@ import org.jetbrains.uast.NoTraverse import org.jetbrains.uast.UElement import org.jetbrains.uast.psi.PsiElementBacked -class KotlinPsiElementStub( - override val psi: PsiElement, +class KotlinDumbUElement( + override val psi: PsiElement?, override val parent: UElement ) : KotlinAbstractUElement(), UElement, PsiElementBacked, NoTraverse { override fun logString() = "KotlinPsiElementStub" diff --git a/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/declarations/KotlinParameterUTypeReference.kt b/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/declarations/KotlinParameterUTypeReference.kt index 1c71b639538..5307977ccc7 100644 --- a/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/declarations/KotlinParameterUTypeReference.kt +++ b/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/declarations/KotlinParameterUTypeReference.kt @@ -35,7 +35,7 @@ class KotlinParameterUTypeReference( } override val nameElement: UElement? - get() = KotlinPsiElementStub(psi, this) + get() = KotlinDumbUElement(psi, this) override val name: String get() = psi.name.orAnonymous() diff --git a/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/declarations/KotlinUVariable.kt b/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/declarations/KotlinUVariable.kt index 978b7240f69..4585b73ea8b 100644 --- a/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/declarations/KotlinUVariable.kt +++ b/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/declarations/KotlinUVariable.kt @@ -32,7 +32,7 @@ open class KotlinUVariable( override val name: String get() = psi.name.orAnonymous() - override val nameElement by lz { KotlinConverter.asSimpleReference(psi.nameIdentifier, this) } + override val nameElement by lz { KotlinDumbUElement(psi.nameIdentifier, this) } override val initializer by lz { KotlinConverter.convertOrEmpty(psi.initializer, this) } @@ -90,7 +90,7 @@ class KotlinParameterUVariable( override val name: String get() = psi.name.orAnonymous() - override val nameElement by lz { KotlinConverter.asSimpleReference(psi.nameIdentifier, this) } + override val nameElement by lz { KotlinDumbUElement(psi.nameIdentifier, this) } override val initializer by lz { KotlinConverter.convert(psi.defaultValue, this) as? UExpression } diff --git a/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/declarations/kotlinUFunctions.kt b/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/declarations/kotlinUFunctions.kt index f9c2d6ba47a..9d426e4f622 100644 --- a/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/declarations/kotlinUFunctions.kt +++ b/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/declarations/kotlinUFunctions.kt @@ -57,7 +57,7 @@ class KotlinConstructorUFunction( override val parent: UElement ) : KotlinAbstractUFunction(), PsiElementBacked { override val nameElement by lz { - val constructorKeyword = psi.getConstructorKeyword()?.let { KotlinPsiElementStub(it, this) } + val constructorKeyword = psi.getConstructorKeyword()?.let { KotlinDumbUElement(it, this) } constructorKeyword ?: this.getContainingFunction()?.nameElement } @@ -73,7 +73,7 @@ class KotlinUFunction( override val psi: KtFunction, override val parent: UElement ) : KotlinAbstractUFunction(), PsiElementBacked { - override val nameElement by lz { psi.nameIdentifier?.let { KotlinConverter.convert(it, this) } } + override val nameElement by lz { psi.nameIdentifier?.let { KotlinDumbUElement(it, this) } } override val kind = UastFunctionKind.FUNCTION @@ -117,7 +117,7 @@ class KotlinAnonymousInitializerUFunction( override fun getSuperFunctions(context: UastContext) = emptyList() - override val nameElement by lz { KotlinPsiElementStub(psi.node.findChildByType(KtTokens.INIT_KEYWORD)?.psi ?: psi, this) } + override val nameElement by lz { KotlinDumbUElement(psi.node.findChildByType(KtTokens.INIT_KEYWORD)?.psi ?: psi, this) } override val name: String get() = "" @@ -135,7 +135,7 @@ open class KotlinDefaultPrimaryConstructorUFunction( override val kind: UastFunctionKind get() = UastFunctionKind.CONSTRUCTOR - override val nameElement by lz { psi.nameIdentifier?.let { KotlinPsiElementStub(it, this) } } + override val nameElement by lz { KotlinDumbUElement(psi.nameIdentifier, this) } override val name: String get() = "" @@ -174,7 +174,7 @@ open class KotlinObjectLiteralConstructorUFunction( override val kind: UastFunctionKind get() = UastFunctionKind.CONSTRUCTOR - override val nameElement by lz { psi.nameIdentifier?.let { KotlinPsiElementStub(it, this) } } + override val nameElement by lz { KotlinDumbUElement(psi.nameIdentifier, this) } override val name: String get() = "" diff --git a/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/expressions/KotlinUFunctionCallExpression.kt b/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/expressions/KotlinUFunctionCallExpression.kt index dad7dbc00aa..852fb4c56a7 100644 --- a/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/expressions/KotlinUFunctionCallExpression.kt +++ b/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/expressions/KotlinUFunctionCallExpression.kt @@ -130,7 +130,7 @@ class KotlinUSuperConstructorCallExpression( override val functionNameElement by lz { try { - KotlinPsiElementStub(psi.getObjectKeyword(), this) + KotlinDumbUElement(psi.getObjectKeyword(), this) } catch (e: NullPointerException) { null } diff --git a/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/lint/PropertyAsCallAndroidUastAdditionalChecker.kt b/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/lint/PropertyAsCallAndroidUastAdditionalChecker.kt index 848257562d5..1f7213a576c 100644 --- a/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/lint/PropertyAsCallAndroidUastAdditionalChecker.kt +++ b/plugins/uast-kotlin/src/org/jetbrains/kotlin/uast/lint/PropertyAsCallAndroidUastAdditionalChecker.kt @@ -54,7 +54,7 @@ class PropertyAsCallAndroidUastAdditionalChecker : AndroidUastAdditionalChecker override val functionReference = KotlinNameUSimpleReferenceExpression(expr.psi, expr.identifier, expr.parent) override val classReference = null override val functionName = accessorDescriptor.name.asString() - override val functionNameElement by lz { KotlinPsiElementStub(ktElement, this) } + override val functionNameElement by lz { KotlinDumbUElement(ktElement, this) } override val valueArgumentCount: Int get() = if (setterValue != null) 1 else 0