[groovy] extract findDeclaredDetachedValue() to utility file
authorDaniil Ovchinnikov <daniil.ovchinnikov@jetbrains.com>
Mon, 7 Nov 2016 13:56:42 +0000 (16:56 +0300)
committerDaniil Ovchinnikov <daniil.ovchinnikov@jetbrains.com>
Mon, 7 Nov 2016 17:31:09 +0000 (20:31 +0300)
plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/psi/impl/grAnnotationUtil.kt [new file with mode: 0644]
plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/transformations/impl/autoClone/AutoCloneTransformationSupport.kt

diff --git a/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/psi/impl/grAnnotationUtil.kt b/plugins/groovy/groovy-psi/src/org/jetbrains/plugins/groovy/lang/psi/impl/grAnnotationUtil.kt
new file mode 100644 (file)
index 0000000..61bb815
--- /dev/null
@@ -0,0 +1,30 @@
+/*
+ * Copyright 2000-2016 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.jetbrains.plugins.groovy.lang.psi.impl
+
+import com.intellij.codeInsight.AnnotationUtil
+import com.intellij.psi.PsiAnnotation
+import com.intellij.psi.PsiAnnotationMemberValue
+import com.intellij.psi.PsiNameValuePair
+
+fun PsiAnnotation.findDeclaredDetachedValue(attributeName: String?): PsiAnnotationMemberValue? {
+  val styleAttribute = AnnotationUtil.findDeclaredAttribute(this, attributeName)
+  return when (styleAttribute) {
+    null -> null
+    is PsiNameValuePair.Detachable -> styleAttribute.detachedValue
+    else -> styleAttribute.value
+  }
+}
index 6c6990feb7a7792e7097dbdd08060d2aa32d5cec..ef4f17cf04298f39a40e9427ae17dcb6355ccebc 100644 (file)
  */
 package org.jetbrains.plugins.groovy.transformations.impl.autoClone
 
-import com.intellij.codeInsight.AnnotationUtil
-import com.intellij.psi.*
+import com.intellij.psi.CommonClassNames
+import com.intellij.psi.PsiEnumConstant
+import com.intellij.psi.PsiModifier
+import com.intellij.psi.PsiType
 import com.intellij.psi.impl.light.LightMethodBuilder
 import org.jetbrains.plugins.groovy.GroovyLanguage
 import org.jetbrains.plugins.groovy.lang.psi.api.statements.expressions.GrReferenceExpression
+import org.jetbrains.plugins.groovy.lang.psi.impl.findDeclaredDetachedValue
 import org.jetbrains.plugins.groovy.lang.psi.impl.statements.expressions.TypesUtil
 import org.jetbrains.plugins.groovy.transformations.AstTransformationSupport
 import org.jetbrains.plugins.groovy.transformations.TransformationContext
@@ -82,13 +85,4 @@ class AutoCloneTransformationSupport : AstTransformationSupport {
       }
     }
   }
-
-  private fun PsiAnnotation.findDeclaredDetachedValue(attributeName: String?): PsiAnnotationMemberValue? {
-    val styleAttribute = AnnotationUtil.findDeclaredAttribute(this, attributeName)
-    return when (styleAttribute) {
-      null -> null
-      is PsiNameValuePair.Detachable -> styleAttribute.detachedValue
-      else -> styleAttribute.value
-    }
-  }
 }