KtLightParameter should have a KtLightModifierList anyway
otherwise we wouldn't get proper annotations for `equals` in data-classes
This commit is contained in:
+4
-12
@@ -14,7 +14,7 @@ import com.intellij.psi.search.LocalSearchScope
|
|||||||
import com.intellij.psi.search.SearchScope
|
import com.intellij.psi.search.SearchScope
|
||||||
import com.intellij.util.IncorrectOperationException
|
import com.intellij.util.IncorrectOperationException
|
||||||
import org.jetbrains.annotations.NonNls
|
import org.jetbrains.annotations.NonNls
|
||||||
import org.jetbrains.kotlin.asJava.builder.LightMemberOriginForDeclaration
|
import org.jetbrains.kotlin.asJava.classes.lazyPub
|
||||||
import org.jetbrains.kotlin.idea.KotlinLanguage
|
import org.jetbrains.kotlin.idea.KotlinLanguage
|
||||||
import org.jetbrains.kotlin.psi.KtFunction
|
import org.jetbrains.kotlin.psi.KtFunction
|
||||||
import org.jetbrains.kotlin.psi.KtParameter
|
import org.jetbrains.kotlin.psi.KtParameter
|
||||||
@@ -29,7 +29,8 @@ class KtLightParameter(
|
|||||||
) : LightParameter(clsDelegate.name ?: "p$index", clsDelegate.type, method, KotlinLanguage.INSTANCE),
|
) : LightParameter(clsDelegate.name ?: "p$index", clsDelegate.type, method, KotlinLanguage.INSTANCE),
|
||||||
KtLightDeclaration<KtParameter, PsiParameter> {
|
KtLightDeclaration<KtParameter, PsiParameter> {
|
||||||
|
|
||||||
private val modifierList: PsiModifierList
|
private val lightModifierList by lazyPub { KtLightSimpleModifierList(this, emptySet()) }
|
||||||
|
|
||||||
private var lightIdentifier: KtLightIdentifier? = null
|
private var lightIdentifier: KtLightIdentifier? = null
|
||||||
|
|
||||||
override val kotlinOrigin: KtParameter?
|
override val kotlinOrigin: KtParameter?
|
||||||
@@ -56,16 +57,7 @@ class KtLightParameter(
|
|||||||
return setter?.parameter
|
return setter?.parameter
|
||||||
}
|
}
|
||||||
|
|
||||||
init {
|
override fun getModifierList(): PsiModifierList = lightModifierList
|
||||||
if (method.lightMemberOrigin is LightMemberOriginForDeclaration) {
|
|
||||||
this.modifierList = KtLightSimpleModifierList(this, emptySet())
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
this.modifierList = super.getModifierList()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun getModifierList(): PsiModifierList = modifierList
|
|
||||||
|
|
||||||
override fun getNavigationElement(): PsiElement = kotlinOrigin ?: super.getNavigationElement()
|
override fun getNavigationElement(): PsiElement = kotlinOrigin ?: super.getNavigationElement()
|
||||||
|
|
||||||
|
|||||||
@@ -52,6 +52,7 @@ public final class User {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@org.jetbrains.annotations.NotNull()
|
||||||
@java.lang.Override()
|
@java.lang.Override()
|
||||||
public java.lang.String toString() {
|
public java.lang.String toString() {
|
||||||
return null;
|
return null;
|
||||||
@@ -63,7 +64,8 @@ public final class User {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@java.lang.Override()
|
@java.lang.Override()
|
||||||
public boolean equals(java.lang.Object p0) {
|
public boolean equals(@org.jetbrains.annotations.Nullable()
|
||||||
|
java.lang.Object p0) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user