in src/main/kotlin/org/jetbrains/tinygoplugin/runconfig/TinyGoRunLineMarkerContributor.kt [20:41]
fun getRunLineMarkerInfoForFunction(e: PsiElement): Info? {
if (e.node.elementType === GoTypes.IDENTIFIER) {
val parent = e.parent
val file = e.containingFile
if (e.project.service<InjectedLanguageManager>().isInjectedFragment(file)) {
return null
}
val settings = e.project.tinyGoConfiguration()
if (!settings.enabled) return null
if (!GoUtil.isInProject(file) || !filePredicate(file) || parent !is GoFunctionDeclaration) return null
if (!functionPredicate(parent)) return null
val actions = ExecutorAction.getActions(1).let {
arrayOf(it.first(), it.last())
}
return Info(
TinyGoPluginIcons.TinyGoIcon,
actions,
this::tooltipProvider,
)
}
return null
}