mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-02-04 23:39:07 +07:00
K2 UAST: static modifier of fake PSI for inline function from binary deps
GitOrigin-RevId: 0beb538ff3af22c14f5d381625533a339db4a9f5
This commit is contained in:
committed by
intellij-monorepo-bot
parent
1e49336fc1
commit
d9d1f0fe08
@@ -1,6 +1,7 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package org.jetbrains.uast.test.common.kotlin
|
||||
|
||||
import com.intellij.lang.jvm.JvmModifier
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.openapi.util.io.FileUtil
|
||||
import com.intellij.platform.uast.testFramework.env.findElementByText
|
||||
@@ -2327,12 +2328,14 @@ interface UastResolveApiFixtureTestBase {
|
||||
TestCase.assertEquals("mock", resolved!!.name)
|
||||
if (first) {
|
||||
TestCase.assertEquals("Mock", resolved.containingClass?.name)
|
||||
TestCase.assertFalse(resolved.hasModifier(JvmModifier.STATIC))
|
||||
first = false
|
||||
} else {
|
||||
TestCase.assertEquals(
|
||||
if (withJvmName) "Mocking" else "MockingKt",
|
||||
resolved.containingClass?.name
|
||||
)
|
||||
TestCase.assertTrue(resolved.hasModifier(JvmModifier.STATIC))
|
||||
}
|
||||
TestCase.assertNotNull(resolved.returnType)
|
||||
TestCase.assertEquals("MyClass", resolved.returnType!!.canonicalText)
|
||||
|
||||
@@ -6,6 +6,7 @@ import com.intellij.psi.impl.light.LightModifierList
|
||||
import com.intellij.psi.impl.light.LightParameterListBuilder
|
||||
import org.jetbrains.kotlin.analysis.api.KaExperimentalApi
|
||||
import org.jetbrains.kotlin.analysis.api.symbols.KaNamedFunctionSymbol
|
||||
import org.jetbrains.kotlin.analysis.api.symbols.KaSymbolLocation
|
||||
import org.jetbrains.kotlin.analysis.api.symbols.KaTypeParameterSymbol
|
||||
import org.jetbrains.kotlin.analysis.api.symbols.pointers.KaSymbolPointer
|
||||
import org.jetbrains.kotlin.analysis.api.symbols.receiverType
|
||||
@@ -47,6 +48,17 @@ internal class UastFakeDeserializedSymbolLightMethod(
|
||||
containingClass
|
||||
) {
|
||||
|
||||
init {
|
||||
analyzeForUast(context) {
|
||||
val functionSymbol = original.restoreSymbol()
|
||||
if (functionSymbol?.location == KaSymbolLocation.TOP_LEVEL ||
|
||||
functionSymbol?.isStatic == true
|
||||
) {
|
||||
addModifier(PsiModifier.STATIC)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private val returnTypePart = UastLazyPart<PsiType?>()
|
||||
|
||||
private val _returnType: PsiType?
|
||||
|
||||
Reference in New Issue
Block a user