mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[groovy] follow up @Synchronized IDEA-CR-13312
This commit is contained in:
+1
-1
@@ -45,7 +45,7 @@ fun getImplicitLockUsages(field: GrField): Sequence<PsiAnnotation> {
|
||||
}
|
||||
|
||||
private fun getImplicitLockUsages(clazz: PsiClass, static: Boolean) = clazz.methods.asSequence().filter { method ->
|
||||
!static.xor(method.isStatic())
|
||||
static == method.isStatic()
|
||||
}.mapNotNull { method ->
|
||||
AnnotationUtil.findAnnotation(method, ANNO_FQN)
|
||||
}.filter { anno ->
|
||||
|
||||
+2
-5
@@ -16,10 +16,10 @@
|
||||
package org.jetbrains.plugins.groovy.transformations.impl.synch
|
||||
|
||||
import com.intellij.psi.*
|
||||
import com.intellij.psi.util.PsiTreeUtil
|
||||
import com.intellij.util.ProcessingContext
|
||||
import org.jetbrains.plugins.groovy.lang.psi.api.statements.expressions.literals.GrLiteral
|
||||
import org.jetbrains.plugins.groovy.lang.psi.api.statements.typedef.GrTypeDefinition
|
||||
import org.jetbrains.plugins.groovy.lang.psi.api.statements.typedef.members.GrMethod
|
||||
|
||||
class SynchronizedReferenceContributor : PsiReferenceContributor() {
|
||||
|
||||
@@ -38,11 +38,8 @@ class SynchronizedReferenceProvider : PsiReferenceProvider() {
|
||||
|
||||
class FieldReference(literal: GrLiteral) : PsiReferenceBase<GrLiteral>(literal) {
|
||||
|
||||
private val GrLiteral.annotatedMethod: GrMethod?
|
||||
get() = parent?.parent?.parent?.parent?.parent as? GrMethod
|
||||
|
||||
private val GrLiteral.containingClass: GrTypeDefinition?
|
||||
get() = annotatedMethod?.containingClass as? GrTypeDefinition
|
||||
get() = PsiTreeUtil.getParentOfType(this, GrTypeDefinition::class.java)
|
||||
|
||||
override fun getVariants(): Array<out Any> = element.containingClass?.codeFields ?: emptyArray()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user