Minor: rename NoTraverse to LeafUElement

This commit is contained in:
Yan Zhulanow
2016-03-29 22:26:37 +03:00
parent c1e59e4957
commit 7ed5b6c10b
11 changed files with 18 additions and 14 deletions
@@ -125,7 +125,11 @@ public class SharedPrefsDetector extends Detector implements UastScanner {
} else { } else {
if (!verifiedType) { if (!verifiedType) {
UType type = definition.getType(); UType type = definition.getType();
String possiblefqName = type.resolveOrEmpty(context).getFqNameOrName(); UClass clazz = type.resolveOrEmpty(context);
String possiblefqName = clazz.getFqName();
if (possiblefqName == null) {
possiblefqName = clazz.getName();
}
if (possiblefqName.endsWith("SharedPreferences.Editor")) { //$NON-NLS-1$ if (possiblefqName.endsWith("SharedPreferences.Editor")) { //$NON-NLS-1$
if (!type.matchesFqName("Editor") || //$NON-NLS-1$ if (!type.matchesFqName("Editor") || //$NON-NLS-1$
!LintUtils.isImported(context.getLintContext().getCompilationUnit(), !LintUtils.isImported(context.getLintContext().getCompilationUnit(),
@@ -15,7 +15,7 @@
*/ */
package org.jetbrains.uast package org.jetbrains.uast
interface UAnnotation : UElement, UNamed, UFqNamed, NoTraverse { interface UAnnotation : UElement, UNamed, UFqNamed, LeafUElement {
fun resolve(context: UastContext): UClass? fun resolve(context: UastContext): UClass?
val valueArguments: List<UNamedExpression> val valueArguments: List<UNamedExpression>
@@ -38,7 +38,7 @@ interface UModifierOwner {
fun hasModifier(modifier: UastModifier): Boolean fun hasModifier(modifier: UastModifier): Boolean
} }
interface NoTraverse : UElement { interface LeafUElement : UElement {
override fun traverse(callback: UastCallback) {} override fun traverse(callback: UastCallback) {}
} }
@@ -34,6 +34,6 @@ interface NoModifiers : UModifierOwner {
override fun hasModifier(modifier: UastModifier) = false override fun hasModifier(modifier: UastModifier) = false
} }
class EmptyExpression(override val parent: UElement) : UExpression, NoTraverse, NoEvaluate { class EmptyExpression(override val parent: UElement) : UExpression, LeafUElement, NoEvaluate {
override fun logString() = "EmptyExpression" override fun logString() = "EmptyExpression"
} }
@@ -19,7 +19,7 @@ interface UDeclaration : UElement, UNamed {
val nameElement: UElement? val nameElement: UElement?
} }
object UDeclarationNotResolved : UDeclaration, NoTraverse { object UDeclarationNotResolved : UDeclaration, LeafUElement {
override val name = "<declaration not resolved>" override val name = "<declaration not resolved>"
override val nameElement = null override val nameElement = null
override val parent = null override val parent = null
@@ -15,7 +15,7 @@
*/ */
package org.jetbrains.uast package org.jetbrains.uast
interface UType : UElement, UNamed, UFqNamed, UAnnotated, UResolvable, NoTraverse { interface UType : UElement, UNamed, UFqNamed, UAnnotated, UResolvable, LeafUElement {
override fun matchesName(name: String) = this.name == name || this.name.endsWith(".$name") override fun matchesName(name: String) = this.name == name || this.name.endsWith(".$name")
/* The simple type name is only for the debug purposes. Do not check against it in the production code */ /* The simple type name is only for the debug purposes. Do not check against it in the production code */
@@ -37,7 +37,7 @@ interface UType : UElement, UNamed, UFqNamed, UAnnotated, UResolvable, NoTravers
override fun resolveOrEmpty(context: UastContext) = resolve(context) ?: UClassNotResolved override fun resolveOrEmpty(context: UastContext) = resolve(context) ?: UClassNotResolved
} }
interface UTypeReference : UDeclaration, UResolvable, NoTraverse { interface UTypeReference : UDeclaration, UResolvable, LeafUElement {
override fun renderString() = "" override fun renderString() = ""
override fun logString() = log("UTypeReference") override fun logString() = log("UTypeReference")
@@ -15,7 +15,7 @@
*/ */
package org.jetbrains.uast package org.jetbrains.uast
interface UClassLiteralExpression : UExpression, NoTraverse { interface UClassLiteralExpression : UExpression, LeafUElement {
override fun logString() = "UClassLiteralExpression" override fun logString() = "UClassLiteralExpression"
override fun renderString() = getExpressionType()?.name ?: "::class" override fun renderString() = getExpressionType()?.name ?: "::class"
@@ -15,7 +15,7 @@
*/ */
package org.jetbrains.uast package org.jetbrains.uast
interface USimpleReferenceExpression : UExpression, UResolvable, NoTraverse { interface USimpleReferenceExpression : UExpression, UResolvable, LeafUElement {
val identifier: String val identifier: String
override fun logString() = "USimpleReferenceExpression ($identifier)" override fun logString() = "USimpleReferenceExpression ($identifier)"
@@ -16,14 +16,14 @@
package org.jetbrains.uast.java package org.jetbrains.uast.java
import com.intellij.psi.PsiElement import com.intellij.psi.PsiElement
import org.jetbrains.uast.NoTraverse import org.jetbrains.uast.LeafUElement
import org.jetbrains.uast.UElement import org.jetbrains.uast.UElement
import org.jetbrains.uast.psi.PsiElementBacked import org.jetbrains.uast.psi.PsiElementBacked
class JavaDumbUElement( class JavaDumbUElement(
override val psi: PsiElement?, override val psi: PsiElement?,
override val parent: UElement override val parent: UElement
) : JavaAbstractUElement(), UElement, PsiElementBacked, NoTraverse { ) : JavaAbstractUElement(), UElement, PsiElementBacked, LeafUElement {
override fun logString() = "JavaPsiElementStub" override fun logString() = "JavaPsiElementStub"
override fun renderString() = "<stub@$psi>" override fun renderString() = "<stub@$psi>"
} }
@@ -22,6 +22,6 @@ import org.jetbrains.uast.psi.PsiElementBacked
class UnknownJavaExpression( class UnknownJavaExpression(
override val psi: PsiElement, override val psi: PsiElement,
override val parent: UElement override val parent: UElement
) : UExpression, PsiElementBacked, NoEvaluate, NoTraverse { ) : UExpression, PsiElementBacked, NoEvaluate, LeafUElement {
override fun logString() = "[!] UnknownJavaExpression ($psi)" override fun logString() = "[!] UnknownJavaExpression ($psi)"
} }
@@ -17,14 +17,14 @@
package org.jetbrains.kotlin.uast package org.jetbrains.kotlin.uast
import com.intellij.psi.PsiElement import com.intellij.psi.PsiElement
import org.jetbrains.uast.NoTraverse import org.jetbrains.uast.LeafUElement
import org.jetbrains.uast.UElement import org.jetbrains.uast.UElement
import org.jetbrains.uast.psi.PsiElementBacked import org.jetbrains.uast.psi.PsiElementBacked
class KotlinDumbUElement( class KotlinDumbUElement(
override val psi: PsiElement?, override val psi: PsiElement?,
override val parent: UElement override val parent: UElement
) : KotlinAbstractUElement(), UElement, PsiElementBacked, NoTraverse { ) : KotlinAbstractUElement(), UElement, PsiElementBacked, LeafUElement {
override fun logString() = "KotlinPsiElementStub" override fun logString() = "KotlinPsiElementStub"
override fun renderString() = "<stub@$psi>" override fun renderString() = "<stub@$psi>"
} }