From d2e8cc872c3017d05eaf36a09a7bee1e244a8714 Mon Sep 17 00:00:00 2001 From: Konstantin Aleev Date: Mon, 9 Jul 2018 17:40:53 +0300 Subject: [PATCH] refactoring: take UMethod instead of PsiMethod for checking --- .../src/org/jetbrains/uast/qualifiedUtils.kt | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/uast/uast-common/src/org/jetbrains/uast/qualifiedUtils.kt b/uast/uast-common/src/org/jetbrains/uast/qualifiedUtils.kt index 567cbebdee38..53a996e6b699 100644 --- a/uast/uast-common/src/org/jetbrains/uast/qualifiedUtils.kt +++ b/uast/uast-common/src/org/jetbrains/uast/qualifiedUtils.kt @@ -19,7 +19,6 @@ package org.jetbrains.uast import com.intellij.psi.PsiClass -import com.intellij.psi.PsiMethod import com.intellij.psi.util.PsiMethodUtil import org.jetbrains.uast.visitor.UastVisitor @@ -211,12 +210,14 @@ fun UElement.asRecursiveLogString(render: (UElement) -> String = { it.asLogStrin * or companion object's containing class if the given method is main method annotated with [kotlin.jvm.JvmStatic] in companion object, * otherwise *null*. */ -fun findMainClass(mainMethod: PsiMethod): PsiClass? { - var mainClassCandidate = mainMethod.containingClass ?: return null - if (PsiMethodUtil.isMainMethod(mainMethod)) return mainClassCandidate +fun findMainClass(mainMethod: UMethod): PsiClass? { + val psiMethod = mainMethod.javaPsi + if ("main" != psiMethod.name) return null + var mainClassCandidate = psiMethod.containingClass ?: return null + if (PsiMethodUtil.isMainMethod(psiMethod)) return mainClassCandidate // Check for @JvmStatic main method in companion object mainClassCandidate = mainClassCandidate.containingClass ?: return null val mainInClass = PsiMethodUtil.findMainInClass(mainClassCandidate) - return if (mainMethod.manager.areElementsEquivalent(mainMethod, mainInClass)) mainClassCandidate else null + return if (psiMethod.manager.areElementsEquivalent(psiMethod, mainInClass)) mainClassCandidate else null } \ No newline at end of file