Yan Zhulanow
65da1edb56
Download full copy of the Android SDK (needed to run the all Android Lint tests)
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
aa4f2e426b
Lint: Remove lint suppress quickfix (does not work currently with Kotlin)
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
da5e6c4092
Kotlin Uast, Minor: support PsiElementBacked in KotlinUType
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
5cf5024d08
Lint: fix Lint additional checkers with the custom handlers
2016-04-08 15:39:58 +03:00
Yan Zhulanow
37a4d78347
Lint: resolve via the accessor descriptor in PropertyAsCAllAndroidUastAdditionalChecker
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
5bc31112c1
Lint: Remove IntellijApiDetector
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
3a7f29bfc5
Lint: Support visitResourceReference() in Uast
2016-04-08 15:39:58 +03:00
Yan Zhulanow
514e3859da
Uast: Rename JavaPsiElemenStub -> JavaDumbUElement, KotlinPsiElementStub -> KotlinDumbUElement.
...
Use it everywhere in `nameElement`
2016-04-08 15:39:58 +03:00
Yan Zhulanow
6c40fda7b7
Support equals() on UElements (comparation by psi)
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
5c07e6de9d
Kotlin Uast, Refactoring: Extract toSource() function
2016-04-08 15:39:58 +03:00
Yan Zhulanow
ed1e1c6a2b
Uast, Minor: make lateinit mutable propertiy setters internal
2016-04-08 15:39:58 +03:00
Yan Zhulanow
18e963422b
Lint: Remove diagnostics unrelated to uast.
...
All these diagnostics are already present in the Android plugin, so there's no need in them here.
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
335712141d
Java Uast, Minor: Convert Java Uast properties with backing field to properties with getter (optimization)
2016-04-08 15:39:58 +03:00
Yan Zhulanow
f130dc96f7
Lint: Implement Kotlin Java synthetic property calls as Java method calls via the additional checker
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
4ef6016ee8
Lint: Rename all Lint inspections to KLint to provide unique short names
2016-04-08 15:39:58 +03:00
Yan Zhulanow
f4422b3b19
Kotlin Uast: Support type parameters on functions
2016-04-08 15:39:58 +03:00
Yan Zhulanow
668172d68e
Lint, Minor: Group lint-related modules
2016-04-08 15:39:58 +03:00
Yan Zhulanow
4df9e9261e
Lint: Rewrite Lint diagnostics using Uast.
2016-04-08 15:39:58 +03:00
Yan Zhulanow
126cc778e4
Lint: copy diagnostics from IDEA (br143)
2016-04-08 15:39:58 +03:00
Yan Zhulanow
92d2e7a0a9
Kotlin Uast: Initial implementation
2016-04-08 15:39:58 +03:00
Yan Zhulanow
a13a1e1e4a
Java Uast: Initial implementation
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
Dmitry Petrov
aca7050656
KT-11499 Normalize stacks on return from an inline function when the function is inlined at call site.
2016-04-08 14:52:55 +03:00
Michael Bogdanov
a6044c81ff
Write proper start label for loop parameter
2016-04-08 14:32:51 +03:00
Zalim Bashorov
441a442f34
Minor: update testdata
2016-04-08 13:45:37 +03:00
Zalim Bashorov
f5ca949f2c
IC: improve logging in tests and fix DataContainerVersionChangedTestGenerated#testWithError
...
Test logging improvements:
* print which chunk building in the round for multimodule projects
* print actions after cache changed
2016-04-08 13:45:37 +03:00
Kirill Rakhman
da5c963a43
Fix let implement quickfix label for object expressions
...
Fixes #KT-11782
2016-04-08 10:37:25 +03:00
Valentin Kipyatkov
cdab9d5103
KT-11710 "Replace 'if' with elvis operator": incorrect code generated for 'if' expression
...
#KT-11710 Fixed
2016-04-07 18:50:32 +03:00
Valentin Kipyatkov
6a65442095
KT-11811 There is no intention "Make protected" for a val declared in parameters of constructor
...
#KT-11811 Fixed
2016-04-07 18:50:32 +03:00
Valentin Kipyatkov
a9fe999e0e
Fixed StackOverflow in CanBeValInspection.kt
2016-04-07 18:50:31 +03:00
Valentin Kipyatkov
22a4bbe1aa
KT-11805 Invert if-condition intention breaks code in case of end of line comment
...
#KT-11805 Fixed
2016-04-07 18:50:30 +03:00
Valentin Kipyatkov
b258af5288
KT-11724 False suggestion to replace with compound assignment
...
#KT-11724 Fixed
2016-04-07 18:50:30 +03:00
Alexander Udalov
7c90fbe4de
Compute return type for property getters more safely
...
Do not call `isError()` on property's type right after creation of
PropertyGetterDescriptor because the property has no getter yet (it's created
but not yet stored to the property, that happens a bit later), and `isError()`
leads to computation of the delegate type, which for delegated properties
performs some complex resolution (see `VariableTypeResolver#process`) which
relies on the fact that the property already has a getter.
Since the purpose of the original change (883e2e4d ) was to support a quick fix
which would add the type to a property in an expression like "val x get() =
...", check the type (or initializer) presence in the PSI instead, this is
safer and is still suitable for the quick fix.
Also fix arguments to "wrong getter type" diagnostic: previously something
useless like "expected Int, actual Int" was reported
#KT-11809 Fixed
2016-04-07 15:35:58 +03:00