Skip to content

Commit 08f92a3

Browse files
committed
fix: need endpoint id to be available
1 parent 61a1868 commit 08f92a3

File tree

1 file changed

+20
-1
lines changed

1 file changed

+20
-1
lines changed

core/src/main/kotlin/spp/jetbrains/command/LiveLocationContext.kt

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,30 @@
1717
package spp.jetbrains.command
1818

1919
import com.intellij.psi.PsiElement
20+
import spp.jetbrains.marker.SourceMarker
2021
import spp.jetbrains.marker.source.SourceFileMarker
22+
import spp.jetbrains.marker.source.mark.guide.GuideMark
23+
import spp.jetbrains.marker.source.mark.guide.MethodGuideMark
2124
import spp.protocol.artifact.ArtifactQualifiedName
2225

2326
data class LiveLocationContext(
2427
val qualifiedName: ArtifactQualifiedName,
2528
val fileMarker: SourceFileMarker,
2629
val element: PsiElement,
27-
)
30+
) {
31+
fun getFunctionGuideMark(): GuideMark? {
32+
var qualifiedName: ArtifactQualifiedName? = qualifiedName
33+
var guideMark: GuideMark? = null
34+
do {
35+
if (qualifiedName == null) continue
36+
guideMark = SourceMarker.getInstance(fileMarker.project).getGuideMark(qualifiedName)
37+
38+
if (guideMark is MethodGuideMark) {
39+
return guideMark
40+
}
41+
qualifiedName = qualifiedName.asParent()
42+
} while (guideMark == null && qualifiedName != null)
43+
44+
return null
45+
}
46+
}

0 commit comments

Comments
 (0)