Commit Graph

416 Commits

Author SHA1 Message Date
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
Dmitry Jemerov 839f197a1e KtFile: J2K and cleanup 2017-09-04 13:21:03 +02:00
Nicolay Mitropolsky 108a40261b KtLightAnnotationForSourceEntry fix for reading unnamed java-annotation parameter 2017-08-29 17:32:07 +03:00
Nicolay Mitropolsky 6953ae79e2 Fix for KtLightParameter and KtLightParameterList equality 2017-08-28 15:57:44 +03:00
Pavel V. Talanov 7fecec1141 lightAnnotations: remove several brittle assertions
Add some test cases with "red" code
2017-08-23 17:12:56 +03:00
Nicolay Mitropolsky a6b446cc4f Correct 'asJava' view of annotations as annotation arguments
Fix light elements for nested arrays/annotations inside annotations

 #KT-18378 Fixed
2017-08-23 17:12:55 +03:00
Vyacheslav Gerasimov c549c63100 Light Classes: Correctly handle annotations for property parameters
When getting annotations for KtLightParameter which is property parameter we should return annotations for parameter instead of property

#KT-19671 Fixed
2017-08-21 15:01:51 +03:00
Mikhail Glukhikh 3623f581b8 Eliminate a set of warnings, mostly nullability ones 2017-08-18 15:10:27 +03:00
Alexey Sedunov 53d12e6cf7 Method Hierarchy: Refactoring
- Do not rely on light methods and Java method hierarchy
- Support val/var parameters
- Support built-in member functions

 #KT-14346 Fixed
2017-08-02 13:08:06 +03:00