Dmitry Jemerov
ecb9a39f94
Report errors when trying to build decompiled text for light class
2018-04-03 19:45:37 +02:00
Alexey Tsvetkov
8a82c1618c
Use Plugins DSL in Kotlin Gradle scripts
...
When plugins DSL is used, there is no need to
manually generate typesafe accessors for extensions and
conventions (by running `./gradlew kotlinDslAccessorsSnapshot`).
2018-03-26 16:09:29 +03:00
Pavel V. Talanov
dc27a3f6d0
Minor: lightClassUtils, less specific return type
2018-03-12 12:05:08 +01:00
Pavel V. Talanov
32516a3f33
Refactor: split *LightClassGenerationSupport into separate files
...
Move cli binding trace implementation to top level
2018-03-12 12:05:05 +01:00
Pavel V. Talanov
f421181e16
Split LightClassGenerationSupport into separate entities
...
LightClassGenerationSupport:
Includes utilities related to generating light classes
Primary client of this service are KtLight* implementation classes
KotlinAsJavaSupport:
Provides APIs to transform kotlin code into Psi* entities
Primary client of this service is JavaElementFinder
2018-03-12 12:04:59 +01:00
Pavel V. Talanov
27d7bb595f
CliLightClassGenerationSupport: correctly find facade files
...
This fixes a problem where JvmPackageName annotation could force file
facades to be in the package different to declared kotlin package
2018-03-06 12:07:12 +01:00
Pavel V. Talanov
6c4537accc
Create InvalidLightClassDataHolder for expect classes
...
This fixes an exception from duplicateJvmSignature reporter
Fixes "QuickFixTestGenerated$Override.testDontOfferToImplementMembersForExpectedClass" on teamcity
2018-03-05 18:07:38 +01:00
Pavel V. Talanov
89c82a85d0
Do not build light classes for expect classes
...
#KT-15482 Fixed
2018-03-05 18:07:36 +01:00
Yan Zhulanow
34d1611ed4
Add Pill support to compiler and IDE modules
2018-03-02 03:15:17 +03:00
Mikhail Glukhikh
bd0cbb716c
Rename: analyzeWithDeclarations --> analyzeWithContent()
2018-02-20 20:25:41 +03:00
Mikhail Glukhikh
cd1745d354
Light classes: analyzeFully() --> analyzeWithDeclarations()
2018-02-20 20:25:41 +03:00
Nicolay Mitropolsky
bc543b4cdf
LightAnnotations: wrapping all PsiLiterals (not only Strings)
2018-02-19 15:08:02 +03:00
Nicolay Mitropolsky
47f3a0ce0a
Revert "Light annotations made strictly non-physical (KT-22565)"
...
This reverts commit cf6e21d
2018-02-16 16:24:15 +03:00
Nicolay Mitropolsky
cb05baa02b
LightAnnotations: wrapping nested annotations with KtLightAnnotationForSourceEntry
2018-02-07 10:17:40 +03:00
Yan Zhulanow
145ddf3b1f
Parcelable: Add CREATOR field (and other generated declarations) in light classes (KT-19300, KT-19853)
2018-02-06 22:15:59 +03:00
Nicolay Mitropolsky
cf6e21daad
Light annotations made strictly non-physical (KT-22565)
2018-01-31 14:31:35 +03:00
Vyacheslav Gerasimov
89a07ded1c
Extract versions and remove unnecessary '.jar' extensions
2018-01-30 17:06:18 +03:00
Ilya Chernikov
4eb557724c
Convert compiler projects to the new intellij deps
2018-01-30 17:06:13 +03:00
Ilya Chernikov
a4f28cd94f
Make all dependencies to idea sdk intransitive
2018-01-30 17:06:11 +03:00
Alexey Sedunov
c6a9c36275
Analyze Data Flow: Support cross-language analysis
...
#KT-16833 Fixed
2018-01-17 12:40:34 +03:00
xiexed
743dc80b4d
KtLightAbstractAnnotation build fix for 173 (#1283 )
2018-01-12 13:53:04 +03:00
Nicolay Mitropolsky
9cb62d66cb
KtLightAnnotation: handling vararg with single arg (EA-114679)
...
It is deprecated but yet possible form of usage
2018-01-11 14:05:15 +03:00
Dmitry Jemerov
25ea53457e
Send source code in exceptions as attachments, not text (common cases)
...
#KT-17678 In Progress
2017-12-29 15:35:53 +01:00
Dmitry Jemerov
896246a7f5
More cleanup after J2K
2017-12-29 10:19:50 +01:00
Dmitry Jemerov
4b6efe3eb0
Take read action in KtLightParameter.isEquivalentTo()
...
EA-109775 - (OperatorReferencesSearcher) assert: PsiFileImpl.getStubTree
2017-12-29 10:19:50 +01:00
Dmitry Jemerov
7f1dd88600
KtLightParameter: convert to .kt and cleanup
2017-12-29 10:19:50 +01:00
Dmitry Jemerov
98d26ae59f
KtLightElementParameter: rename to .kt
2017-12-29 10:19:50 +01:00
Nicolay Mitropolsky
657123f2c0
LightClassUtil.extractPropertyAccessors refactoring to fix KotlinShortNamesCacheTest.testGetMethodsByNameWithCustomPropertyAccessors test
...
After light classes caching the test started to fail.
Also refer Simon Ogorodnik.
2017-12-21 12:25:51 +03:00
Nicolay Mitropolsky
bb4d6d1059
LightClassEqualsTest fix by creating lightclasses with createNoCache
2017-12-19 20:03:59 +03:00
Nicolay Mitropolsky
6ac345df51
Caching KtLightClassForSourceDeclaration (KT-21701)
...
to make their UserData survive for longer, because otherwise a new LightClass with empty UserData comes to Spring every time, but Spring stores a lot of important things in UserData
2017-12-14 18:05:47 +03:00
Denis Zharkov
a67598e0c1
Minor. Apply intention for "?: false" -> "== true" in light classes
2017-12-07 12:53:33 +03:00
Dmitry Petrov
d976eeabf7
Refactor GenerationState creation
2017-11-29 12:17:06 +03:00
Nicolay Mitropolsky
07601b2ec4
KtLightAnnotationForSourceEntry: varargs handling improved (KT-21335, EA-107118)
2017-11-23 10:37:24 +03:00
Nicolay Mitropolsky
23344783a5
KtLightAnnotationForSourceEntry: made more verbose with errors in arrays in params (KT-21335, EA-107118)
2017-11-23 10:37:24 +03:00
Alexey Sedunov
17abce2811
Misc: Support light-classless classes in inheritors search
...
In particular, support line markers for expect-classes
and navigation to expect-classes from their base class
#KT-20329 Fixed
2017-10-24 15:43:51 +03:00
Nicolay Mitropolsky
d609579e55
FakeFileForLightClass tries to use ktFile.originalFile.virtualFile
2017-10-06 23:53:33 +03:00
Dmitry Jemerov
a4f5a1335a
Fix convering parents of annotations on primary constructor parameters
2017-10-06 20:51:02 +02:00
Dmitry Jemerov
85254838f6
Allow building UAST for in-memory virtual files
2017-10-06 14:43:22 +02:00
Nicolay Mitropolsky
b839081349
Support for collections literals in LightAnnotations (KT-20543)
2017-10-02 18:44:23 +03:00
Alexander Podkhalyuzin
3f8170d369
Clean idea files generated on the gradle import, add them to .gitignore
2017-09-19 23:58:27 +02:00
Ilya Chernikov
27968c8e13
Set proper jvmTarget for projects
2017-09-19 21:37:27 +02:00
Ilya Chernikov
deda50dbbb
Continue switching projects to improved dsl: sourceSets and test running
2017-09-19 21:37:26 +02:00
Ilya Chernikov
61dfb75e0e
Implement Gradle Kotlin DSL build
2017-09-19 21:37:06 +02:00
Vyacheslav Gerasimov
14742a6048
UAST: Fix getContainingFile, should return KtFile instead of FakeFileForLightClass
...
#KT-20170 Fixed
2017-09-16 13:02:08 +03:00
Stanislav Erokhin
4dc47c734c
Rename has[Header|Impl]Modifier() to has[Expect|Actual]Modifier()
2017-09-15 18:25:27 +03:00
Stanislav Erokhin
1ebfe1af43
Refactoring. Replace hasModifier(HEADER_KEYWORD) to hasHeaderModifier()
2017-09-15 18:25:13 +03:00
Alexander Udalov
b01a3eb747
Drop JvmFileClassesProvider and inline implementations
...
Both of its implementations called the same static function; inline
those and move related utilities to JvmFileClassUtil
2017-09-13 15:46:36 +03:00
Vyacheslav Gerasimov
89257e6397
Implement light classes for Kotlin scripts
2017-09-12 13:10:38 +03:00
Nicolay Mitropolsky
be4b86e3d9
KtLightAnnotationForSourceEntry fix for smart-pointers creating
...
`LightElementValue` made PsiCompiledElement to make it properly anchorable when creating smartpointers, when still use `kotlinOrigin.containingFile` for it to be able to `registerProblem` on such elements. (refs KT-18054)
2017-09-04 15:20:20 +03:00
Dmitry Jemerov
f74416a151
Cache the result of hasTopLevelCallables() for a KtFile
...
#KT-19885 Fixed
2017-09-04 13:21:03 +02:00