Skip to content

Commit a8b1511

Browse files
committed
Uast 1.0.9
1 parent 40c89a7 commit a8b1511

34 files changed

+117
-318
lines changed

plugins/lint/lint-api/src/com/android/tools/klint/client/api/UElementVisitor.java

Lines changed: 4 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,9 @@
1616

1717
package com.android.tools.klint.client.api;
1818

19-
import static com.android.SdkConstants.ANDROID_PKG;
20-
import static com.android.SdkConstants.R_CLASS;
21-
2219
import com.android.annotations.NonNull;
2320
import com.android.annotations.Nullable;
2421
import com.android.annotations.VisibleForTesting;
25-
import com.android.resources.ResourceType;
2622
import com.android.tools.klint.detector.api.Detector;
2723
import com.android.tools.klint.detector.api.Detector.JavaPsiScanner;
2824
import com.android.tools.klint.detector.api.Detector.UastScanner;
@@ -35,30 +31,15 @@
3531
import com.intellij.openapi.project.Project;
3632
import com.intellij.openapi.vfs.StandardFileSystems;
3733
import com.intellij.openapi.vfs.VirtualFile;
38-
import com.intellij.psi.JavaElementVisitor;
39-
import com.intellij.psi.JavaRecursiveElementVisitor;
40-
import com.intellij.psi.PsiClass;
41-
import com.intellij.psi.PsiElement;
42-
import com.intellij.psi.PsiFile;
43-
import com.intellij.psi.PsiJavaCodeReferenceElement;
44-
import com.intellij.psi.PsiManager;
45-
import com.intellij.psi.PsiMethod;
46-
import com.intellij.psi.PsiMethodCallExpression;
47-
import com.intellij.psi.PsiNewExpression;
48-
import com.intellij.psi.PsiReferenceExpression;
49-
import com.intellij.psi.PsiTypeParameter;
50-
34+
import com.intellij.psi.*;
5135
import org.jetbrains.uast.*;
52-
import org.jetbrains.uast.expressions.UTypeReferenceExpression;
5336
import org.jetbrains.uast.util.UastExpressionUtils;
5437
import org.jetbrains.uast.visitor.AbstractUastVisitor;
5538
import org.jetbrains.uast.visitor.UastVisitor;
5639

57-
import java.util.ArrayList;
58-
import java.util.HashMap;
59-
import java.util.List;
60-
import java.util.Map;
61-
import java.util.Set;
40+
import java.util.*;
41+
42+
import static com.android.SdkConstants.ANDROID_PKG;
6243

6344
/**
6445
* Specialized visitor for running detectors on a Java AST.

plugins/lint/lint-api/src/com/android/tools/klint/client/api/UastLintUtils.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
import com.intellij.psi.*;
2727

2828
import org.jetbrains.uast.*;
29-
import org.jetbrains.uast.expressions.UReferenceExpression;
29+
import org.jetbrains.uast.UReferenceExpression;
3030
import org.jetbrains.uast.java.JavaAbstractUExpression;
3131
import org.jetbrains.uast.java.JavaUDeclarationsExpression;
3232

plugins/lint/lint-api/src/com/android/tools/klint/detector/api/ConstantEvaluator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@
6464
import com.intellij.psi.util.PsiTreeUtil;
6565

6666
import org.jetbrains.uast.*;
67-
import org.jetbrains.uast.expressions.UReferenceExpression;
67+
import org.jetbrains.uast.UReferenceExpression;
6868
import org.jetbrains.uast.util.UastExpressionUtils;
6969
import org.jetbrains.uast.visitor.AbstractUastVisitor;
7070

plugins/lint/lint-api/src/com/android/tools/klint/detector/api/Detector.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
import org.jetbrains.uast.UClass;
4040
import org.jetbrains.uast.UElement;
4141
import org.jetbrains.uast.UMethod;
42-
import org.jetbrains.uast.expressions.UReferenceExpression;
42+
import org.jetbrains.uast.UReferenceExpression;
4343
import org.jetbrains.uast.visitor.UastVisitor;
4444
import org.jetbrains.org.objectweb.asm.tree.AbstractInsnNode;
4545
import org.jetbrains.org.objectweb.asm.tree.ClassNode;

plugins/lint/lint-api/src/com/android/tools/klint/detector/api/ResourceEvaluator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@
6060
import org.jetbrains.uast.UParenthesizedExpression;
6161
import org.jetbrains.uast.UQualifiedReferenceExpression;
6262
import org.jetbrains.uast.UastUtils;
63-
import org.jetbrains.uast.expressions.UReferenceExpression;
63+
import org.jetbrains.uast.UReferenceExpression;
6464

6565
import java.util.EnumSet;
6666
import java.util.List;

plugins/lint/lint-api/src/com/android/tools/klint/detector/api/TypeEvaluator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@
5656
import org.jetbrains.uast.UMethod;
5757
import org.jetbrains.uast.UVariable;
5858
import org.jetbrains.uast.UastUtils;
59-
import org.jetbrains.uast.expressions.UReferenceExpression;
59+
import org.jetbrains.uast.UReferenceExpression;
6060
import org.jetbrains.uast.util.UastExpressionUtils;
6161

6262
import java.util.ListIterator;

plugins/lint/lint-checks/src/com/android/tools/klint/checks/AlwaysShowActionDetector.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838
import com.intellij.psi.PsiElement;
3939
import com.intellij.psi.PsiField;
4040

41-
import org.jetbrains.uast.expressions.UReferenceExpression;
41+
import org.jetbrains.uast.UReferenceExpression;
4242
import org.jetbrains.uast.visitor.UastVisitor;
4343
import org.w3c.dom.Attr;
4444

plugins/lint/lint-checks/src/com/android/tools/klint/checks/AnnotationDetector.java

Lines changed: 10 additions & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -16,102 +16,33 @@
1616

1717
package com.android.tools.klint.checks;
1818

19-
import static com.android.SdkConstants.ATTR_VALUE;
20-
import static com.android.SdkConstants.FQCN_SUPPRESS_LINT;
21-
import static com.android.SdkConstants.INT_DEF_ANNOTATION;
22-
import static com.android.SdkConstants.STRING_DEF_ANNOTATION;
23-
import static com.android.SdkConstants.SUPPORT_ANNOTATIONS_PREFIX;
24-
import static com.android.SdkConstants.TYPE_DEF_FLAG_ATTRIBUTE;
25-
import static com.android.tools.klint.checks.PermissionRequirement.getAnnotationBooleanValue;
26-
import static com.android.tools.klint.checks.SupportAnnotationDetector.ATTR_ALL_OF;
27-
import static com.android.tools.klint.checks.SupportAnnotationDetector.ATTR_ANY_OF;
28-
import static com.android.tools.klint.checks.SupportAnnotationDetector.ATTR_FROM;
29-
import static com.android.tools.klint.checks.SupportAnnotationDetector.ATTR_MAX;
30-
import static com.android.tools.klint.checks.SupportAnnotationDetector.ATTR_MIN;
31-
import static com.android.tools.klint.checks.SupportAnnotationDetector.ATTR_MULTIPLE;
32-
import static com.android.tools.klint.checks.SupportAnnotationDetector.ATTR_TO;
33-
import static com.android.tools.klint.checks.SupportAnnotationDetector.CHECK_RESULT_ANNOTATION;
34-
import static com.android.tools.klint.checks.SupportAnnotationDetector.FLOAT_RANGE_ANNOTATION;
35-
import static com.android.tools.klint.checks.SupportAnnotationDetector.INT_RANGE_ANNOTATION;
36-
import static com.android.tools.klint.checks.SupportAnnotationDetector.PERMISSION_ANNOTATION;
37-
import static com.android.tools.klint.checks.SupportAnnotationDetector.PERMISSION_ANNOTATION_READ;
38-
import static com.android.tools.klint.checks.SupportAnnotationDetector.PERMISSION_ANNOTATION_WRITE;
39-
import static com.android.tools.klint.checks.SupportAnnotationDetector.SIZE_ANNOTATION;
40-
import static com.android.tools.klint.checks.SupportAnnotationDetector.filterRelevantAnnotations;
41-
import static com.android.tools.klint.checks.SupportAnnotationDetector.getDoubleAttribute;
42-
import static com.android.tools.klint.checks.SupportAnnotationDetector.getLongAttribute;
43-
import static com.android.tools.klint.client.api.JavaParser.TYPE_DOUBLE;
44-
import static com.android.tools.klint.client.api.JavaParser.TYPE_FLOAT;
45-
import static com.android.tools.klint.client.api.JavaParser.TYPE_INT;
46-
import static com.android.tools.klint.client.api.JavaParser.TYPE_LONG;
47-
import static com.android.tools.klint.client.api.JavaParser.TYPE_STRING;
48-
import static com.android.tools.klint.detector.api.LintUtils.findSubstring;
49-
import static com.android.tools.klint.detector.api.LintUtils.getAutoBoxedType;
50-
import static com.android.tools.klint.detector.api.ResourceEvaluator.COLOR_INT_ANNOTATION;
51-
import static com.android.tools.klint.detector.api.ResourceEvaluator.PX_ANNOTATION;
52-
import static com.android.tools.klint.detector.api.ResourceEvaluator.RES_SUFFIX;
53-
5419
import com.android.annotations.NonNull;
5520
import com.android.annotations.Nullable;
5621
import com.android.tools.klint.client.api.ExternalReferenceExpression;
5722
import com.android.tools.klint.client.api.IssueRegistry;
58-
import com.android.tools.klint.client.api.JavaEvaluator;
5923
import com.android.tools.klint.client.api.UastLintUtils;
60-
import com.android.tools.klint.detector.api.Category;
61-
import com.android.tools.klint.detector.api.ConstantEvaluator;
62-
import com.android.tools.klint.detector.api.Detector;
63-
import com.android.tools.klint.detector.api.Implementation;
64-
import com.android.tools.klint.detector.api.Issue;
65-
import com.android.tools.klint.detector.api.JavaContext;
66-
import com.android.tools.klint.detector.api.Location;
67-
import com.android.tools.klint.detector.api.Scope;
68-
import com.android.tools.klint.detector.api.Severity;
69-
import com.android.tools.klint.detector.api.TextFormat;
24+
import com.android.tools.klint.detector.api.*;
7025
import com.google.common.base.Joiner;
71-
import com.google.common.base.Splitter;
7226
import com.google.common.collect.Lists;
7327
import com.google.common.collect.Maps;
7428
import com.google.common.collect.Sets;
75-
import com.intellij.psi.PsiAnnotation;
76-
import com.intellij.psi.PsiAnnotationMemberValue;
77-
import com.intellij.psi.PsiAnnotationOwner;
78-
import com.intellij.psi.PsiArrayInitializerMemberValue;
79-
import com.intellij.psi.PsiArrayType;
80-
import com.intellij.psi.PsiClass;
81-
import com.intellij.psi.PsiClassType;
82-
import com.intellij.psi.PsiDeclarationStatement;
83-
import com.intellij.psi.PsiElement;
84-
import com.intellij.psi.PsiExpression;
85-
import com.intellij.psi.PsiField;
86-
import com.intellij.psi.PsiJavaCodeReferenceElement;
87-
import com.intellij.psi.PsiLiteral;
88-
import com.intellij.psi.PsiLocalVariable;
89-
import com.intellij.psi.PsiMethod;
90-
import com.intellij.psi.PsiModifierList;
91-
import com.intellij.psi.PsiModifierListOwner;
92-
import com.intellij.psi.PsiNameValuePair;
93-
import com.intellij.psi.PsiParameter;
94-
import com.intellij.psi.PsiReferenceExpression;
95-
import com.intellij.psi.PsiType;
96-
import com.intellij.psi.PsiVariable;
29+
import com.intellij.psi.*;
9730
import com.intellij.psi.util.InheritanceUtil;
98-
import com.intellij.psi.util.PsiTreeUtil;
99-
10031
import org.jetbrains.uast.*;
101-
import org.jetbrains.uast.expressions.UReferenceExpression;
10232
import org.jetbrains.uast.java.JavaUAnnotation;
10333
import org.jetbrains.uast.java.JavaUTypeCastExpression;
10434
import org.jetbrains.uast.util.UastExpressionUtils;
10535
import org.jetbrains.uast.visitor.AbstractUastVisitor;
10636
import org.jetbrains.uast.visitor.UastVisitor;
10737

108-
import java.util.ArrayList;
109-
import java.util.Arrays;
110-
import java.util.Collections;
111-
import java.util.List;
112-
import java.util.ListIterator;
113-
import java.util.Map;
114-
import java.util.Set;
38+
import java.util.*;
39+
40+
import static com.android.SdkConstants.*;
41+
import static com.android.tools.klint.checks.PermissionRequirement.getAnnotationBooleanValue;
42+
import static com.android.tools.klint.checks.SupportAnnotationDetector.*;
43+
import static com.android.tools.klint.client.api.JavaParser.*;
44+
import static com.android.tools.klint.detector.api.LintUtils.getAutoBoxedType;
45+
import static com.android.tools.klint.detector.api.ResourceEvaluator.*;
11546

11647
/**
11748
* Checks annotations to make sure they are valid

plugins/lint/lint-checks/src/com/android/tools/klint/checks/ApiDetector.java

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,6 @@
4040
import org.jetbrains.android.inspections.klint.IntellijLintUtils;
4141
import org.jetbrains.annotations.NotNull;
4242
import org.jetbrains.uast.*;
43-
import org.jetbrains.uast.expressions.UReferenceExpression;
44-
import org.jetbrains.uast.expressions.UTypeReferenceExpression;
4543
import org.jetbrains.uast.util.UastExpressionUtils;
4644
import org.jetbrains.uast.visitor.AbstractUastVisitor;
4745
import org.jetbrains.uast.visitor.UastVisitor;
@@ -1325,9 +1323,7 @@ private void visitAssignmentExpression(UBinaryExpression expression) {
13251323

13261324
@Override
13271325
public boolean visitTryExpression(@NotNull UTryExpression statement) {
1328-
List<PsiResourceListElement> resourceList = statement.getResources();
1329-
//noinspection VariableNotUsedInsideIf
1330-
if (resourceList != null && !resourceList.isEmpty()) {
1326+
if (statement.getHasResources()) {
13311327
int api = 19; // minSdk for try with resources
13321328
int minSdk = getMinSdk(mContext);
13331329

plugins/lint/lint-checks/src/com/android/tools/klint/checks/BatteryDetector.java

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -16,26 +16,12 @@
1616

1717
package com.android.tools.klint.checks;
1818

19-
import static com.android.SdkConstants.ANDROID_URI;
20-
import static com.android.SdkConstants.ATTR_NAME;
21-
import static com.android.SdkConstants.TAG_RECEIVER;
22-
2319
import com.android.annotations.NonNull;
2420
import com.android.annotations.Nullable;
25-
import com.android.tools.klint.detector.api.Category;
26-
import com.android.tools.klint.detector.api.Detector;
27-
import com.android.tools.klint.detector.api.Implementation;
28-
import com.android.tools.klint.detector.api.Issue;
29-
import com.android.tools.klint.detector.api.JavaContext;
30-
import com.android.tools.klint.detector.api.ResourceXmlDetector;
31-
import com.android.tools.klint.detector.api.Scope;
32-
import com.android.tools.klint.detector.api.Severity;
33-
import com.android.tools.klint.detector.api.XmlContext;
34-
import com.intellij.psi.JavaElementVisitor;
21+
import com.android.tools.klint.detector.api.*;
3522
import com.intellij.psi.PsiElement;
3623
import com.intellij.psi.PsiField;
37-
38-
import org.jetbrains.uast.expressions.UReferenceExpression;
24+
import org.jetbrains.uast.UReferenceExpression;
3925
import org.jetbrains.uast.visitor.UastVisitor;
4026
import org.w3c.dom.Attr;
4127
import org.w3c.dom.Element;
@@ -45,6 +31,8 @@
4531
import java.util.EnumSet;
4632
import java.util.List;
4733

34+
import static com.android.SdkConstants.*;
35+
4836
/**
4937
* Checks looking for issues that negatively affect battery life
5038
*/

plugins/lint/lint-checks/src/com/android/tools/klint/checks/CallSuperDetector.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
import org.jetbrains.uast.UElement;
4040
import org.jetbrains.uast.UMethod;
4141
import org.jetbrains.uast.USuperExpression;
42-
import org.jetbrains.uast.expressions.UReferenceExpression;
42+
import org.jetbrains.uast.UReferenceExpression;
4343
import org.jetbrains.uast.visitor.AbstractUastVisitor;
4444
import org.jetbrains.uast.visitor.UastVisitor;
4545

plugins/lint/lint-checks/src/com/android/tools/klint/checks/CleanupDetector.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@
6363
import org.jetbrains.uast.UWhileExpression;
6464
import org.jetbrains.uast.UastCallKind;
6565
import org.jetbrains.uast.UastUtils;
66-
import org.jetbrains.uast.expressions.UReferenceExpression;
66+
import org.jetbrains.uast.UReferenceExpression;
6767
import org.jetbrains.uast.util.UastExpressionUtils;
6868
import org.jetbrains.uast.visitor.AbstractUastVisitor;
6969
import org.jetbrains.uast.visitor.UastVisitor;

plugins/lint/lint-checks/src/com/android/tools/klint/checks/CutPasteDetector.java

Lines changed: 3 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -16,41 +16,12 @@
1616

1717
package com.android.tools.klint.checks;
1818

19-
import static com.android.SdkConstants.RESOURCE_CLZ_ID;
20-
import static com.android.tools.klint.detector.api.LintUtils.skipParentheses;
21-
2219
import com.android.annotations.NonNull;
2320
import com.android.annotations.Nullable;
24-
import com.android.tools.klint.detector.api.Category;
25-
import com.android.tools.klint.detector.api.Detector;
26-
import com.android.tools.klint.detector.api.Implementation;
27-
import com.android.tools.klint.detector.api.Issue;
28-
import com.android.tools.klint.detector.api.JavaContext;
29-
import com.android.tools.klint.detector.api.Location;
30-
import com.android.tools.klint.detector.api.Scope;
31-
import com.android.tools.klint.detector.api.Severity;
21+
import com.android.tools.klint.detector.api.*;
3222
import com.google.common.collect.Maps;
33-
import com.intellij.psi.PsiBreakStatement;
34-
import com.intellij.psi.PsiContinueStatement;
35-
import com.intellij.psi.PsiElement;
36-
import com.intellij.psi.PsiIfStatement;
37-
import com.intellij.psi.PsiJavaToken;
38-
import com.intellij.psi.PsiLoopStatement;
3923
import com.intellij.psi.PsiMethod;
40-
import com.intellij.psi.PsiReturnStatement;
41-
import com.intellij.psi.PsiStatement;
42-
import com.intellij.psi.PsiWhiteSpace;
43-
44-
import org.jetbrains.uast.UArrayAccessExpression;
4524
import org.jetbrains.uast.*;
46-
import org.jetbrains.uast.UCallExpression;
47-
import org.jetbrains.uast.UElement;
48-
import org.jetbrains.uast.UExpression;
49-
import org.jetbrains.uast.ULocalVariable;
50-
import org.jetbrains.uast.UMethod;
51-
import org.jetbrains.uast.UQualifiedReferenceExpression;
52-
import org.jetbrains.uast.UastUtils;
53-
import org.jetbrains.uast.expressions.UReferenceExpression;
5425
import org.jetbrains.uast.util.UastExpressionUtils;
5526
import org.jetbrains.uast.visitor.AbstractUastVisitor;
5627
import org.jetbrains.uast.visitor.UastVisitor;
@@ -59,6 +30,8 @@
5930
import java.util.List;
6031
import java.util.Map;
6132

33+
import static com.android.SdkConstants.RESOURCE_CLZ_ID;
34+
6235
/**
6336
* Detector looking for cut &amp; paste issues
6437
*/

0 commit comments

Comments
 (0)