Yan Zhulanow
206e439595
KT-12023 Kotlin Lint: Cast doesn't trigger minSdk error
...
Check Kotlin as/is types.
(cherry picked from commit c0db8e0)
2016-06-24 15:10:19 +03:00
Yan Zhulanow
1de05b965e
KT-12015 (Kotlin Lint False Positive for Bundle.getInt())
...
Java approach is not sufficient here, in Kotlin receivers can be implicit.
Use Kotlin extension/dispatch receivers to figure out the receiver type for our method call.
(cherry picked from commit cdedf1d)
2016-06-24 15:10:19 +03:00
Alexander Udalov
da42023dd9
Support new callable reference expressions in UAST
...
Manually mute the class literal test in apiCheck.kt; support for new class
literal expressions is postponed because it's not straightforward to combine
both unbound (Type::class) and bound (instance::class) class literals in one
UClassLiteralExpression: in Java they're two very different expressions
(Type.class and instance.getClass())
2016-05-26 22:22:41 +03:00
Yan Zhulanow
33f9a0c798
Lint: Review changes
2016-04-21 20:08:46 +03:00
Yan Zhulanow
a2b1eb7ee8
Lint: Fix KT-11919 ("Missing Parcelable CREATOR field" rule is not accurate)
2016-04-21 20:08:46 +03:00
Yan Zhulanow
574aa5debe
Lint: Fix KT-11924 (False positive on beginTransaction() should be completed with a commit() call)
2016-04-21 20:08:46 +03:00
Yan Zhulanow
aa06cd8f7d
Lint: Fix EA-81466
2016-04-21 20:08:46 +03:00
Yan Zhulanow
76e5657a99
Minor: add Javadoc for UastContext/UastLanguagePlugin
2016-04-13 18:05:51 +03:00
Yan Zhulanow
29412693db
Uast: add "strict" parameter to getParentOfType()
2016-04-08 15:39:58 +03:00
Yan Zhulanow
c13c24becc
Uast, Lint: Update and fix tests
2016-04-08 15:39:58 +03:00
Yan Zhulanow
21a2115501
Uast: Add Uast visitor extensions instead of additional checkers
2016-04-08 15:39:58 +03:00
Yan Zhulanow
6b30b8ce1f
Other code review changes
2016-04-08 15:39:58 +03:00
Yan Zhulanow
41979de71e
Uast: Rewrite visitor
2016-04-08 15:39:58 +03:00
Yan Zhulanow
04e8161f1d
Code review changes
2016-04-08 15:39:58 +03:00
Yan Zhulanow
7ed5b6c10b
Minor: rename NoTraverse to LeafUElement
2016-04-08 15:39:58 +03:00
Yan Zhulanow
c1e59e4957
Code review changes
2016-04-08 15:39:58 +03:00
Yan Zhulanow
7007261d7b
Rename UastHandler to UastCallback
2016-04-08 15:39:58 +03:00
Yan Zhulanow
3484f92d10
Uast: Update tests, make the tests a bit more readable (provide toString() methods for Uast kinds)
2016-04-08 15:39:58 +03:00
Yan Zhulanow
984f10ddff
Lint: fix some more detectors
2016-04-08 15:39:58 +03:00
Yan Zhulanow
5be2b90c6d
Uast, Minor: Group binary operators
2016-04-08 15:39:58 +03:00
Yan Zhulanow
cdd98592e4
Uast, Minor: UAnnotated is now always an UElement
2016-04-08 15:39:58 +03:00
Yan Zhulanow
2c003d16f2
Uast: support 'override' modifier in Java and Kotlin
2016-04-08 15:39:58 +03:00
Yan Zhulanow
1ac6c0f2e9
Kotlin Uast: support class literal expressions.
...
Ability to get type of class of class literal expressions.
2016-04-08 15:39:58 +03:00
Yan Zhulanow
6172f23d9b
Uast: support new elements in UastVisitor
2016-04-08 15:39:58 +03:00
Yan Zhulanow
3dc091d92c
Uast: support internal class names in Java and method signatures in Java and Kotlin
2016-04-08 15:39:58 +03:00
Yan Zhulanow
3258ebae39
Java Uast: Support try-with-resources
2016-04-08 15:39:58 +03:00
Yan Zhulanow
9d34df2475
Java Uast: Support static imports
2016-04-08 15:39:58 +03:00
Yan Zhulanow
06a88f417c
Uast: support beforeVisit() and afterVisit() in visitor
2016-04-08 15:39:58 +03:00
Yan Zhulanow
985c8660b7
Uast Java, Kotlin: Support all binary operators in Uast
2016-04-08 15:39:58 +03:00
Yan Zhulanow
3f6796f0c2
Uast: Support all basic Java types needed for Lint
2016-04-08 15:39:58 +03:00
Yan Zhulanow
862f824bcc
Kotlin Uast: Support object literals
2016-04-08 15:39:58 +03:00
Yan Zhulanow
78ce025ca3
Uast: Ability to get the default class type from UClass
2016-04-08 15:39:58 +03:00
Yan Zhulanow
ed10829091
Uast: Allow to search for a static members (in Kotlin static members are located inside the companion objects).
...
Companion objects support.
2016-04-08 15:39:58 +03:00
Yan Zhulanow
f1e5c85ba3
Uast: Support Kotlin anonymous initializers
2016-04-08 15:39:58 +03:00
Yan Zhulanow
d1939d52bc
Replace UastConverter with UastLanguagePlugin, allow additional checkers
2016-04-08 15:39:58 +03:00
Yan Zhulanow
16de31aebe
Uast: Unified AST (Kotlin, Java) interfaces set.
...
Goal: support Android Lint diagnostics in Kotlin by switching Lint scanners from the Java Lombok AST to the abstract AST (uast) with Java and Kotlin PsiElement-backed implementations.
2016-04-08 15:39:58 +03:00