refactor [uast]: Add explicit types

GitOrigin-RevId: d569747ed93662352b5f8af42897f35ff6b69919
This commit is contained in:
Bart van Helvert
2025-11-18 16:11:06 +00:00
committed by intellij-monorepo-bot
parent 713757d617
commit ec341526ad
48 changed files with 85 additions and 80 deletions
@@ -16,7 +16,7 @@ abstract class KotlinAbstractUExpression(
override val javaPsi: PsiElement? = null
override val psi
override val psi: PsiElement?
get() = sourcePsi
override val uAnnotations: List<UAnnotation>
@@ -123,7 +123,7 @@ class KotlinUElvisExpression(
override val javaPsi: PsiElement? = null
override val sourcePsi: PsiElement = elvisExpression
override val psi: PsiElement = sourcePsi
override val kind = KotlinSpecialExpressionKinds.ELVIS
override val kind: UastSpecialExpressionKind = KotlinSpecialExpressionKinds.ELVIS
override val uAnnotations: List<UAnnotation>
get() {
@@ -31,7 +31,7 @@ class KotlinUIfExpression(
baseResolveProviderService.baseKotlinConverter.convertOrNull(sourcePsi.`else`, this)
}
override val isTernary = false
override val isTernary: Boolean = false
override val ifIdentifier: UIdentifier
get() = UIdentifier(null, this)
@@ -33,7 +33,7 @@ class KotlinUSwitchExpression(
}
}
override fun asRenderString() = buildString {
override fun asRenderString(): String = buildString {
val expr = expression?.let { "(" + it.asRenderString() + ") " } ?: ""
appendLine("switch $expr {")
appendLine(body.asRenderString())
@@ -231,6 +231,6 @@ abstract class AbstractKotlinUClass(
}
}
override fun equals(other: Any?) = other is AbstractKotlinUClass && psi == other.psi
override fun hashCode() = psi.hashCode()
override fun equals(other: Any?): Boolean = other is AbstractKotlinUClass && psi == other.psi
override fun hashCode(): Int = psi.hashCode()
}
@@ -126,7 +126,7 @@ abstract class AbstractKotlinUVariable(
return KotlinUIdentifier({ nameIdentifier }, identifierSourcePsi, this)
}
override fun equals(other: Any?) = other is AbstractKotlinUVariable && psi == other.psi
override fun equals(other: Any?): Boolean = other is AbstractKotlinUVariable && psi == other.psi
class WrappedUAnnotation(
psiAnnotation: PsiAnnotation,
@@ -162,7 +162,7 @@ abstract class AbstractKotlinUVariable(
private val expressionPart = UastLazyPart<UExpression>()
override val name: String? = pair.name
override val psi = pair
override val psi: PsiNameValuePair = pair
override val javaPsi: PsiElement = psi
override val sourcePsi: PsiElement? = null
override val uAnnotations: List<UAnnotation> = emptyList()
@@ -26,7 +26,7 @@ open class KotlinConstructorUMethod(
private val uastBodyPart = UastLazyPart<UExpression?>()
private val uastAnchorPart = UastLazyPart<UIdentifier?>()
override val javaPsi = psi
override val javaPsi: PsiMethod = psi
internal val isPrimary: Boolean
get() = sourcePsi is KtPrimaryConstructor || sourcePsi is KtClassOrObject
@@ -37,7 +37,7 @@ class KotlinScriptUClass(
override val sourcePsi: KtClassOrObject? = psi.kotlinOrigin
override val psi = unwrap<UClass, KtLightClassForScript>(psi)
override val psi: KtLightClassForScript = unwrap<UClass, KtLightClassForScript>(psi)
override fun getSuperClass(): UClass? = super.getSuperClass()
@@ -76,6 +76,6 @@ class KotlinScriptUClass(
KotlinLazyUBlockExpression.create(initializers, this)
}
override val javaPsi = psi
override val javaPsi: KtLightMethod = psi
}
}
@@ -89,7 +89,7 @@ class KotlinUAnnotation(
baseResolveProviderService.convertToPsiAnnotation(annotationEntry)
}
override fun annotationUseSiteTarget() = sourcePsi.useSiteTarget?.getAnnotationUseSiteTarget()
override fun annotationUseSiteTarget(): AnnotationUseSiteTarget? = sourcePsi.useSiteTarget?.getAnnotationUseSiteTarget()
override fun resolve(): PsiClass? {
return baseResolveProviderService.resolveToClass(sourcePsi, this)
@@ -26,7 +26,7 @@ class KotlinUAnonymousClass(
override val sourcePsi: KtClassOrObject? = ktClass
override fun getSourceElement() = sourcePsi ?: this
override fun getSourceElement(): PsiElement = sourcePsi ?: this
override fun getOriginalElement(): PsiElement? = super<AbstractKotlinUClass>.getOriginalElement()
@@ -18,15 +18,15 @@ class KotlinUClass(
) : AbstractKotlinUClass(givenParent), PsiClass by psi {
private val uastAnchorPart = UastLazyPart<UIdentifier?>()
override val ktClass = psi.kotlinOrigin
override val ktClass: KtClassOrObject? = psi.kotlinOrigin
override val javaPsi: KtLightClass = psi
override val sourcePsi: KtClassOrObject? = ktClass
override val psi = unwrap<UClass, PsiClass>(psi)
override val psi: PsiClass = unwrap<UClass, PsiClass>(psi)
override fun getSourceElement() = sourcePsi ?: this
override fun getSourceElement(): PsiElement = sourcePsi ?: this
override fun getOriginalElement(): PsiElement? = super.getOriginalElement()
@@ -32,9 +32,9 @@ class KotlinUEnumConstant(
override fun getOriginalElement(): PsiElement? = super<AbstractKotlinUVariable>.getOriginalElement()
override val javaPsi = unwrap<UEnumConstant, PsiEnumConstant>(psi)
override val javaPsi: PsiEnumConstant = unwrap<UEnumConstant, PsiEnumConstant>(psi)
override val psi = javaPsi
override val psi: PsiEnumConstant = javaPsi
override fun getContainingFile(): PsiFile {
return super.getContainingFile()
@@ -82,7 +82,7 @@ class KotlinUEnumConstant(
override val returnType: PsiType?
get() = uastParent?.getAsJavaPsiElement(PsiClass::class.java)?.let { PsiTypesUtil.getClassType(it) }
override fun resolve() = psi.resolveMethod()
override fun resolve(): PsiMethod? = psi.resolveMethod()
override val methodName: String?
get() = null
@@ -18,11 +18,11 @@ open class KotlinUField(
override val sourcePsi: KtElement?,
givenParent: UElement?
) : AbstractKotlinUVariable(givenParent), UFieldEx, PsiField by psi {
override fun getSourceElement() = sourcePsi ?: this
override fun getSourceElement(): NavigatablePsiElement = sourcePsi ?: this
override val javaPsi = unwrap<UField, PsiField>(psi)
override val javaPsi: PsiField = unwrap<UField, PsiField>(psi)
override val psi = javaPsi
override val psi: PsiField = javaPsi
override fun getType(): PsiType {
val type = delegateExpression?.getExpressionType()
@@ -21,9 +21,9 @@ open class KotlinULocalVariable(
givenParent: UElement?
) : AbstractKotlinUVariable(givenParent), ULocalVariableEx, PsiLocalVariable by psi {
override val javaPsi = unwrap<ULocalVariable, PsiLocalVariable>(psi)
override val javaPsi: PsiLocalVariable = unwrap<ULocalVariable, PsiLocalVariable>(psi)
override val psi = javaPsi
override val psi: PsiLocalVariable = javaPsi
private val uAnnotationsPart = UastLazyPart<List<UAnnotation>>()
@@ -57,9 +57,9 @@ open class KotlinUMethod(
override val psi: PsiMethod = unwrap<UMethod, PsiMethod>(psi)
override val javaPsi = psi
override val javaPsi: PsiMethod = psi
override fun getSourceElement() = sourcePsi ?: this
override fun getSourceElement(): NavigatablePsiElement = sourcePsi ?: this
private val kotlinOrigin = getKotlinMemberOrigin(psi.originalElement) ?: sourcePsi
@@ -68,7 +68,7 @@ open class KotlinUMethod(
return unwrapFakeFileForLightClass(psi.containingFile)
}
override fun getNameIdentifier() = UastLightIdentifier(psi, kotlinOrigin)
override fun getNameIdentifier(): UastLightIdentifier = UastLightIdentifier(psi, kotlinOrigin)
override val uAnnotations: List<UAnnotation>
get() = uAnnotationsPart.getOrBuild {
@@ -16,9 +16,9 @@ open class KotlinUParameter(
private val isLightConstructorParamLazy = UastLazyPart<Boolean?>()
private val isKtConstructorParamLazy = UastLazyPart<Boolean?>()
final override val javaPsi = unwrap<UParameter, PsiParameter>(psi)
final override val javaPsi: PsiParameter = unwrap<UParameter, PsiParameter>(psi)
override val psi = javaPsi
override val psi: PsiParameter = javaPsi
override fun getInitializer(): PsiExpression? {
return super<AbstractKotlinUVariable>.getInitializer()
@@ -14,9 +14,9 @@ class KotlinUVariable(
givenParent: UElement?
) : AbstractKotlinUVariable(givenParent), UVariable, PsiVariable by psi {
override val javaPsi = unwrap<UVariable, PsiVariable>(psi)
override val javaPsi: PsiVariable = unwrap<UVariable, PsiVariable>(psi)
override val psi = javaPsi
override val psi: PsiVariable = javaPsi
override fun getInitializer(): PsiExpression? {
return super<AbstractKotlinUVariable>.getInitializer()
@@ -30,7 +30,7 @@ class KotlinDocUQualifiedReferenceExpression(
createKDocNameSimpleNameReference(parentKDocName = sourcePsi, givenParent = this) ?: UastEmptyExpression(this)
}
override val accessType = UastQualifiedExpressionAccessType.SIMPLE
override val accessType: UastQualifiedExpressionAccessType = UastQualifiedExpressionAccessType.SIMPLE
override fun resolve(): PsiElement? = sourcePsi.reference?.resolve()
@@ -18,7 +18,7 @@ class KotlinLocalFunctionUVariable(
private val uastInitializerPart = UastLazyPart<UExpression?>()
override val psi get() = javaPsi
override val psi: PsiVariable get() = javaPsi
override val sourcePsi: PsiElement = (javaPsi as? UastKotlinPsiVariable?)?.ktElement ?: javaPsi
override val uastInitializer: UExpression?
@@ -33,7 +33,7 @@ class KotlinStringTemplateUPolyadicExpression(
}.takeIf { it.isNotEmpty() } ?: listOf(KotlinStringULiteralExpression(sourcePsi, this, ""))
}
override val operator = UastBinaryOperator.PLUS
override val operator: UastBinaryOperator.ArithmeticOperator = UastBinaryOperator.PLUS
override val psiLanguageInjectionHost: PsiLanguageInjectionHost get() = sourcePsi
override val isString: Boolean get() = true
@@ -23,7 +23,7 @@ class KotlinStringULiteralExpression(
override val value: String
get() = text
override fun evaluate() = value
override fun evaluate(): String = value
override fun getExpressionType(): PsiType = PsiType.getJavaLangString(sourcePsi.manager, sourcePsi.resolveScope)
@@ -25,7 +25,7 @@ class KotlinStringUSimpleReferenceExpression(
private val resolved: PsiElement?
get() = resolvedPart.getOrBuild { referenceAnchor?.references?.singleOrNull()?.resolve() }
override fun resolve() = resolved
override fun resolve(): PsiElement? = resolved
override val resolvedName: String
get() = (resolved as? PsiNamedElement)?.name ?: identifier
@@ -18,7 +18,7 @@ class KotlinUBinaryExpression(
UMultiResolvable {
companion object {
val BITWISE_OPERATORS = mapOf(
val BITWISE_OPERATORS: Map<String, UastBinaryOperator.BitwiseOperator> = mapOf(
"or" to UastBinaryOperator.BITWISE_OR,
"and" to UastBinaryOperator.BITWISE_AND,
"xor" to UastBinaryOperator.BITWISE_XOR,
@@ -36,7 +36,7 @@ class KotlinUBinaryExpressionWithType(
}
}
override val operationKind = when (sourcePsi.operationReference.getReferencedNameElementType()) {
override val operationKind: UastBinaryExpressionWithTypeKind = when (sourcePsi.operationReference.getReferencedNameElementType()) {
KtTokens.AS_KEYWORD -> UastBinaryExpressionWithTypeKind.TypeCast.INSTANCE
KtTokens.AS_SAFE -> KotlinBinaryExpressionWithTypeKinds.SAFE_TYPE_CAST
else -> UastBinaryExpressionWithTypeKind.UNKNOWN
@@ -4,6 +4,7 @@ package org.jetbrains.uast.kotlin
import com.intellij.psi.PsiElement
import org.jetbrains.annotations.ApiStatus
import org.jetbrains.uast.UDeclaration
import org.jetbrains.uast.UElement
@ApiStatus.Internal
@@ -12,5 +13,5 @@ class KotlinUDestructuringDeclarationExpression(
psiAnchor: PsiElement,
) : KotlinUDeclarationsExpression(null, givenParent, psiAnchor) {
val tempVarAssignment get() = declarations.first()
val tempVarAssignment: UDeclaration get() = declarations.first()
}
@@ -3,6 +3,7 @@
package org.jetbrains.uast.kotlin
import com.intellij.psi.PsiElement
import com.intellij.psi.PsiMethod
import com.intellij.psi.PsiType
import org.jetbrains.annotations.ApiStatus
import org.jetbrains.kotlin.asJava.toLightClass
@@ -30,7 +31,7 @@ class KotlinUObjectLiteralExpression(
?: KotlinInvalidUClass("<invalid object code>", sourcePsi, this)
}
override fun getExpressionType() =
override fun getExpressionType(): PsiType =
sourcePsi.objectDeclaration.toPsiType()
private val superClassConstructorCall: KtSuperTypeCallEntry?
@@ -63,7 +64,7 @@ class KotlinUObjectLiteralExpression(
}
}
override fun resolve() =
override fun resolve(): PsiMethod? =
superClassConstructorCall?.let { baseResolveProviderService.resolveCall(it) }
override fun getArgumentForParameter(i: Int): UExpression? =
@@ -25,7 +25,7 @@ class KotlinUPostfixExpression(
baseResolveProviderService.baseKotlinConverter.convertOrEmpty(sourcePsi.baseExpression, this)
}
override val operator = when (sourcePsi.operationToken) {
override val operator: UastPostfixOperator = when (sourcePsi.operationToken) {
KtTokens.PLUSPLUS -> UastPostfixOperator.INC
KtTokens.MINUSMINUS -> UastPostfixOperator.DEC
KtTokens.EXCLEXCL -> KotlinPostfixOperators.EXCLEXCL
@@ -31,7 +31,7 @@ class KotlinUPrefixExpression(
override fun resolveOperator(): PsiMethod? =
baseResolveProviderService.resolveCall(sourcePsi)
override val operator = when (sourcePsi.operationToken) {
override val operator: UastPrefixOperator = when (sourcePsi.operationToken) {
KtTokens.EXCL -> UastPrefixOperator.LOGICAL_NOT
KtTokens.PLUS -> UastPrefixOperator.UNARY_PLUS
KtTokens.MINUS -> UastPrefixOperator.UNARY_MINUS
@@ -41,7 +41,7 @@ class KotlinUQualifiedReferenceExpression(
return selectorPart as UExpression
}
override val accessType = UastQualifiedExpressionAccessType.SIMPLE
override val accessType: UastQualifiedExpressionAccessType = UastQualifiedExpressionAccessType.SIMPLE
override fun resolve(): PsiElement? = sourcePsi.selectorExpression?.let { baseResolveProviderService.resolveToDeclaration(it) }
@@ -36,7 +36,7 @@ class KotlinUSafeQualifiedExpression(
)
}
override val accessType = KotlinQualifiedExpressionAccessTypes.SAFE
override val accessType: UastQualifiedExpressionAccessType = KotlinQualifiedExpressionAccessTypes.SAFE
override val resolvedName: String?
get() = (resolve() as? PsiNamedElement)?.name
@@ -39,9 +39,9 @@ class KotlinUSimpleReferenceExpression(
return resolvedDeclarationPart as PsiElement?
}
override val identifier get() = sourcePsi.getReferencedName()
override val identifier: String get() = sourcePsi.getReferencedName()
override fun resolve() = resolvedDeclaration
override fun resolve(): PsiElement? = resolvedDeclaration
override val resolvedName: String?
get() = (resolvedDeclaration as? PsiNamedElement)?.name
@@ -2,6 +2,7 @@
package org.jetbrains.uast.kotlin
import com.intellij.psi.PsiElement
import org.jetbrains.annotations.ApiStatus
import org.jetbrains.kotlin.psi.KtSuperExpression
import org.jetbrains.uast.UElement
@@ -20,6 +21,6 @@ class KotlinUSuperExpression(
override val labelIdentifier: UIdentifier?
get() = sourcePsi.getTargetLabel()?.let { KotlinUIdentifier(it, this) }
override fun resolve() =
override fun resolve(): PsiElement? =
baseResolveProviderService.resolveToDeclaration(sourcePsi)
}
@@ -2,6 +2,7 @@
package org.jetbrains.uast.kotlin
import com.intellij.psi.PsiElement
import org.jetbrains.annotations.ApiStatus
import org.jetbrains.kotlin.psi.KtThisExpression
import org.jetbrains.uast.UElement
@@ -20,6 +21,6 @@ class KotlinUThisExpression(
override val labelIdentifier: UIdentifier?
get() = sourcePsi.getTargetLabel()?.let { KotlinUIdentifier(it, this) }
override fun resolve() =
override fun resolve(): PsiElement? =
baseResolveProviderService.resolveToDeclaration(sourcePsi)
}
@@ -36,7 +36,7 @@ class KotlinUTypeCheckExpression(
}
}
override val operationKind =
override val operationKind: UastBinaryExpressionWithTypeKind.InstanceCheck =
if (sourcePsi.isNegated)
KotlinBinaryExpressionWithTypeKinds.NEGATED_INSTANCE_CHECK
else
@@ -54,7 +54,7 @@ class KotlinUVarargExpression(
override val returnType: PsiType?
get() = null
override fun resolve() = null
override fun resolve(): Nothing? = null
override val receiver: UExpression?
get() = null
@@ -5,6 +5,7 @@ package org.jetbrains.uast.kotlin
import com.intellij.psi.PsiElement
import com.intellij.psi.PsiMethod
import org.jetbrains.kotlin.kdoc.psi.impl.KDocName
import org.jetbrains.kotlin.lexer.KtToken
import org.jetbrains.kotlin.lexer.KtTokens
import org.jetbrains.kotlin.psi.KtBlockExpression
import org.jetbrains.kotlin.psi.KtExpression
@@ -15,13 +16,13 @@ import org.jetbrains.uast.*
import org.jetbrains.uast.kotlin.internal.KotlinFakeUElement
import org.jetbrains.uast.kotlin.psi.UastKotlinPsiVariable
fun expressionTypes(requiredType: Class<out UElement>?) =
fun expressionTypes(requiredType: Class<out UElement>?): Array<out Class<out UElement>> =
requiredType?.let { arrayOf(it) } ?: DEFAULT_EXPRESSION_TYPES_LIST
fun elementTypes(requiredType: Class<out UElement>?) =
fun elementTypes(requiredType: Class<out UElement>?): Array<Class<out UElement>> =
requiredType?.let { arrayOf(it) } ?: DEFAULT_TYPES_LIST
fun <T : UElement> Array<out Class<out T>>.nonEmptyOr(default: Array<out Class<out UElement>>) =
fun <T : UElement> Array<out Class<out T>>.nonEmptyOr(default: Array<out Class<out UElement>>): Array<out Class<out UElement>> =
takeIf { it.isNotEmpty() } ?: default
inline fun <reified ActualT : UElement> Array<out Class<out UElement>>.el(f: () -> UElement?): UElement? {
@@ -32,9 +33,9 @@ inline fun <reified ActualT : UElement> Array<out Class<out UElement>>.expr(f: (
return if (isAssignableFrom(ActualT::class.java)) f() else null
}
fun Array<out Class<out UElement>>.isAssignableFrom(cls: Class<*>) = any { it.isAssignableFrom(cls) }
fun Array<out Class<out UElement>>.isAssignableFrom(cls: Class<*>): Boolean = any { it.isAssignableFrom(cls) }
val identifiersTokens = setOf(
val identifiersTokens: Set<KtToken> = setOf(
KtTokens.IDENTIFIER, KtTokens.CONSTRUCTOR_KEYWORD, KtTokens.OBJECT_KEYWORD,
KtTokens.THIS_KEYWORD, KtTokens.SUPER_KEYWORD,
KtTokens.GET_KEYWORD, KtTokens.SET_KEYWORD
@@ -8,8 +8,8 @@ import org.jetbrains.uast.UastBinaryExpressionWithTypeKind
@ApiStatus.Internal
object KotlinBinaryExpressionWithTypeKinds {
@JvmField
val NEGATED_INSTANCE_CHECK = UastBinaryExpressionWithTypeKind.InstanceCheck("!is")
val NEGATED_INSTANCE_CHECK: UastBinaryExpressionWithTypeKind.InstanceCheck = UastBinaryExpressionWithTypeKind.InstanceCheck("!is")
@JvmField
val SAFE_TYPE_CAST = UastBinaryExpressionWithTypeKind.TypeCast("as?")
val SAFE_TYPE_CAST: UastBinaryExpressionWithTypeKind.TypeCast = UastBinaryExpressionWithTypeKind.TypeCast("as?")
}
@@ -8,11 +8,11 @@ import org.jetbrains.uast.UastBinaryOperator
@ApiStatus.Internal
object KotlinBinaryOperators {
@JvmField
val IN = UastBinaryOperator("in")
val IN: UastBinaryOperator = UastBinaryOperator("in")
@JvmField
val NOT_IN = UastBinaryOperator("!in")
val NOT_IN: UastBinaryOperator = UastBinaryOperator("!in")
@JvmField
val RANGE_TO = UastBinaryOperator("..")
val RANGE_TO: UastBinaryOperator = UastBinaryOperator("..")
}
@@ -8,5 +8,5 @@ import org.jetbrains.uast.UastPostfixOperator
@ApiStatus.Internal
object KotlinPostfixOperators {
@JvmField
val EXCLEXCL = UastPostfixOperator("!!")
val EXCLEXCL: UastPostfixOperator = UastPostfixOperator("!!")
}
@@ -8,5 +8,5 @@ import org.jetbrains.uast.UastQualifiedExpressionAccessType
@ApiStatus.Internal
object KotlinQualifiedExpressionAccessTypes {
@JvmField
val SAFE = UastQualifiedExpressionAccessType("?.")
val SAFE: UastQualifiedExpressionAccessType = UastQualifiedExpressionAccessType("?.")
}
@@ -8,17 +8,17 @@ import org.jetbrains.uast.UastSpecialExpressionKind
@ApiStatus.Internal
object KotlinSpecialExpressionKinds {
@JvmField
val WHEN = UastSpecialExpressionKind("when")
val WHEN: UastSpecialExpressionKind = UastSpecialExpressionKind("when")
@JvmField
val WHEN_ENTRY = UastSpecialExpressionKind("when_entry")
val WHEN_ENTRY: UastSpecialExpressionKind = UastSpecialExpressionKind("when_entry")
@JvmField
val CLASS_BODY = UastSpecialExpressionKind("class_body")
val CLASS_BODY: UastSpecialExpressionKind = UastSpecialExpressionKind("class_body")
@JvmField
val ELVIS = UastSpecialExpressionKind("elvis")
val ELVIS: UastSpecialExpressionKind = UastSpecialExpressionKind("elvis")
@JvmField
val SUPER_DELEGATION = UastSpecialExpressionKind("super_delegation")
val SUPER_DELEGATION: UastSpecialExpressionKind = UastSpecialExpressionKind("super_delegation")
}
@@ -38,7 +38,7 @@ class UastFakeLightNullabilityAnnotation(
KaTypeNullability.UNKNOWN -> null
}
override fun toString() = "@$qualifiedName"
override fun toString(): String = "@$qualifiedName"
override fun <T : PsiAnnotationMemberValue?> setDeclaredAttributeValue(attributeName: String?, value: T?): T = cannotModify()
}
@@ -21,7 +21,7 @@ open class UastKotlinPsiParameterBase<T : KtElement>(
val ktDefaultValue: KtExpression? = null,
typeProvider: () -> PsiType,
) : LightParameter(name, parent, typeProvider, KotlinLanguage.INSTANCE, isVarArgs) {
protected val typePart = UastLazyPart<PsiType>()
protected val typePart: UastLazyPart<PsiType> = UastLazyPart<PsiType>()
override fun getType(): PsiType {
return typePart.getOrBuild { super.type }
@@ -60,15 +60,15 @@ class UastKotlinPsiVariable private constructor(
override fun getTextRange(): TextRange = ktElement.textRange
override fun getParent() = psiParent
override fun getParent(): PsiElement? = psiParent
override fun hasInitializer() = ktInitializer != null
override fun hasInitializer(): Boolean = ktInitializer != null
override fun getInitializer(): PsiExpression? = psiInitializer
override fun getTypeElement() = psiTypeElement
override fun getTypeElement(): PsiTypeElement = psiTypeElement
override fun setInitializer(initializer: PsiExpression?) = throw NotImplementedError()
override fun setInitializer(initializer: PsiExpression?): Nothing = throw NotImplementedError()
override fun getContainingFile(): PsiFile? = ktElement.containingFile
@@ -80,7 +80,7 @@ class UastKotlinPsiVariable private constructor(
override fun isEquivalentTo(another: PsiElement?): Boolean = this == another || ktElement.isEquivalentTo(another)
override fun hashCode() = ktElement.hashCode()
override fun hashCode(): Int = ktElement.hashCode()
companion object {
fun create(
@@ -5,5 +5,5 @@ import com.intellij.psi.PsiArrayType
import com.intellij.psi.PsiEllipsisType
import com.intellij.psi.PsiType
fun PsiType.toEllipsisTypeIfNeeded(isVarargs: Boolean) =
fun PsiType.toEllipsisTypeIfNeeded(isVarargs: Boolean): PsiType =
if (isVarargs && this is PsiArrayType) PsiEllipsisType(componentType, annotationProvider) else this
@@ -10,7 +10,7 @@ import org.jetbrains.uast.UastLanguagePlugin
@ApiStatus.Internal
object KotlinConverter : BaseKotlinConverter {override val languagePlugin: UastLanguagePlugin
get() = kotlinUastPlugin
var forceUInjectionHost = Registry.`is`("kotlin.uast.force.uinjectionhost", true)
var forceUInjectionHost: Boolean = Registry.`is`("kotlin.uast.force.uinjectionhost", true)
@TestOnly
set(value) {
field = value
@@ -26,7 +26,7 @@ import org.jetbrains.uast.util.ClassSetsWrapper
@InternalIgnoreDependencyViolation
class KotlinUastLanguagePlugin : UastLanguagePlugin {
override val priority = 10
override val priority: Int = 10
override val language: Language
get() = KotlinLanguage.INSTANCE
@@ -47,9 +47,9 @@ class UastAnalysisHandlerExtension : AnalysisHandlerExtension {
private var typeMapper: KotlinTypeMapper? = null
private var languageVersionSettings: LanguageVersionSettings? = null
fun getBindingContext() = context
fun getBindingContext(): BindingContext? = context
fun getLanguageVersionSettings() = languageVersionSettings
fun getLanguageVersionSettings(): LanguageVersionSettings? = languageVersionSettings
override fun doAnalysis(
project: Project,