Commit Graph

210 Commits

Author SHA1 Message Date
Alexey Sedunov b8905645ae Light Classes: Navigate to KtFile from light class containing file
#KT-11689 Fixed
2016-04-09 21:13:11 +03:00
Alexey Sedunov eeac739f69 Spring Support: Fixed computation of values in Java annotations referred by Kotlin annotation entries
#KT-11702 Fixed
2016-04-09 21:13:07 +03:00
Alexey Sedunov 9aeca98b82 [RESTORED] Spring Support: Inspection for Spring configuration 2016-04-08 21:11:22 +03:00
Alexey Sedunov a89dbfcfd4 [RESTORED] Spring Support: Show Spring line markers for Kotlin classes
#KT-3741 Fixed
2016-04-08 21:11:19 +03:00
Alexey Sedunov 962b312fb7 [RESTORED] Light Classes: Constant expression evaluator for light annotation arguments 2016-04-08 21:11:16 +03:00
Pavel V. Talanov e46d713bba KtLightClassForFacade is no longer valid if some of the files have changed their name
#KT-11580 Fixed
2016-04-04 21:10:04 +03:00
Dmitry Petrov 92ddbb271a KT-11410: generate light classes from multifile class parts in binaries
if explicitly requested by fqName
2016-04-01 10:13:22 +03:00
Pavel V. Talanov 484167e9d9 KtLightModifierList* is created only for light classes build for sources
This is a hacky solution to avoid calling lightMemberOrigin.originalElement inside
Moreover it needs to resolve descriptor for sources inside computeAnnotations and it is used only for kotlin sources so this will have to do for now
2016-03-30 21:35:24 +03:00
Pavel V. Talanov f9fa365059 LightElements: avoid computation of LightMemberOrigin.originalElement on common api calls 2016-03-30 21:35:23 +03:00
Pavel V. Talanov f40a04c5a2 Refactor light elements
KtLightElement#delegate -> clsDelegate, KtLightElement#origin -> kotlinOrigin and make them properties
KtLightClassForDecompiledDeclaration stores KtClsFile
KtLightField stores LightMemberOrigin
2016-03-30 21:35:22 +03:00
Pavel V. Talanov 02543295f9 Refactor: Make LightMemberOrigin an interface, extract one implementation 2016-03-30 21:35:21 +03:00
Alexey Sedunov 95f6acdddf [REVERTED] 8c72b02 Alexey Sedunov on 3/21/2016 at 19:14 (committed on 3/24/2016 at 18:42)
Light Classes: Constant expression evaluator for light annotation arguments
2016-03-29 19:17:05 +03:00
Alexey Sedunov 4896d90c79 [REVERTED] 28b8cfc Alexey Sedunov on 3/22/2016 at 21:26 (committed on 3/24/2016 at 18:42)
Spring Support: Show Spring line markers for Kotlin classes
2016-03-29 19:17:04 +03:00
Alexey Sedunov 1970582dd8 [REVERTED] 2692a7d Alexey Sedunov on 2/21/2016 at 00:50 (committed on 3/24/2016 at 18:42)
Spring Support: Inspection for Spring configuration
2016-03-29 19:17:00 +03:00
Valentin Kipyatkov 03d7c5764d Moved confusing utility from KtPsiUtil (but the code in KtLightClassForExplicitDeclaration is still incorrect!) 2016-03-25 18:11:34 +03:00
Alexey Sedunov 2692a7d35c Spring Support: Inspection for Spring configuration 2016-03-24 17:42:13 +03:00
Alexey Sedunov 28b8cfc3d5 Spring Support: Show Spring line markers for Kotlin classes
#KT-3741 Fixed
2016-03-24 17:42:11 +03:00
Alexey Sedunov 8c72b02c9b Light Classes: Constant expression evaluator for light annotation arguments 2016-03-24 17:42:10 +03:00
Alexey Sedunov d76e8f2d67 Light Classes: Generate light wrappers for name identifiers 2016-03-24 17:42:01 +03:00
Alexey Sedunov fefa0baeee Light Classes: Generate light wrappers for annotation entries 2016-03-24 17:41:58 +03:00
Alexey Sedunov 4debf0cc45 Java To Kotlin: KtLightModifierList 2016-03-24 17:41:57 +03:00
Alexey Sedunov 19850ffb86 Java To Kotlin: KtLightModifierList.java (rename to .kt) 2016-03-24 17:41:56 +03:00
Pavel V. Talanov 4246c7f326 Refactor: Provide API to create KtLightClassForFacade by synthetic file 2016-03-10 19:41:57 +03:00
Pavel V. Talanov 725f128b64 Minor: remove obsolete properties from KtLightClassForFacade 2016-03-10 19:41:55 +03:00
Valentin Kipyatkov 05dc4c1c48 ResolutionFacade for synthetic files should be invalidated on changes in these synthetic files
Fixed EA-77017
2016-03-04 16:30:24 +03:00
Pavel V. Talanov f12c653aed KtLightClassForFacade is not valid if any of the files it was built for doesn't have top level callables
#KT-9434 Fixed
2016-02-08 16:45:47 +03:00
Pavel V. Talanov f59a4c537e Minor: remove some dead code 2016-02-08 16:45:46 +03:00
Pavel V. Talanov abcdae8e69 Prevent recursion when computing parameter list of KtLightMethod (part 2)
Use ClsWrapperStubPsiFactory when building light classes for decompiled kotlin classes
2016-02-04 12:55:19 +03:00
Alexey Sedunov 48b538cebf Light Classes: Provide backing fields (if any) as one of property's light elements 2016-02-04 12:26:15 +03:00
Pavel V. Talanov c5be8ce1d3 Prevent recursion when computing parameter list of KtLightMethod
#KT-10890 Fixed
 #KT-10851 Fixed
2016-02-03 16:08:05 +03:00
Michael Bogdanov 71c2a6e792 Generate package private visibility in bytecode for private classes 2016-02-03 10:32:41 +03:00
Nikolay Krasko 6ac73eb760 Remove blocking cache in Kotlin JavaElementFinder (KT-9811)
Attempt to remove cache completely. There's now cache in JavaPsiFacadeImpl.findClass() that probably solves the original problem.
2016-01-25 17:08:22 +03:00
Pavel V. Talanov 1fe749c114 Refactor: get rid of LightClassUtil#getPsiClass() in favor of KtClassOrObject:toLightClass extension 2016-01-21 20:47:22 +03:00
Pavel V. Talanov 2972dbca00 Rename LightClassGenerationSupport.getPsiClass -> getLightClass and make it return KtLightClass 2016-01-21 20:47:21 +03:00
Pavel V. Talanov b34a91eeaa Changes inside init blocks should be considered out of block modifications 2016-01-20 19:02:53 +03:00
Alexander Udalov e2f49536f5 Move OldPackageFacadeClassUtils to module light-classes 2016-01-19 18:54:08 +03:00
Pavel V. Talanov 8d22eafe3f Minor: prettify code 2016-01-11 16:33:20 +03:00
Pavel V. Talanov 41a8ded182 getting rid of ClsFileImpl.setPhysical
patch by Roman Shevchenko
2016-01-11 16:29:19 +03:00
Dmitry Jemerov f885459a43 fix compilation after cleanup 2016-01-08 16:01:28 +01:00
Dmitry Jemerov 117a0d8b7b compiler: cleanup 'public', property access syntax 2016-01-07 17:57:38 +01:00
Ilya Gorbunov 80916d5ed7 Cleanup in compiler modules 2015-12-29 18:04:15 +03:00
Ilya Gorbunov b71b336a69 Fix fq names of moved facade classes in imports and other code occurrences 2015-12-29 18:04:13 +03:00
Pavel V. Talanov 9096a443ea Do not build light classes for local classes when the there is no class descriptor
These cases should be dealt with and this is only a way to degrade gracefully
2015-12-29 15:57:01 +03:00
Pavel V. Talanov 4f5f56e4a5 Add and use KtPropertyAccessor#getProperty() 2015-12-29 12:32:12 +03:00
Michael Bogdanov aeb6486473 Deprecated 'INSTANCE$' replaced with 'INSTANCE' 2015-12-24 13:59:43 +03:00
Pavel V. Talanov 99966c17da Go to (show) implementations: skip light methods that are generated with DELEGATION or DELEGATION_TO_DEFAULT_IMPLS JvmDeclarationOriginKind
Add some unrelated tests for fake overrides
2015-12-22 17:30:51 +03:00
Pavel V. Talanov 8d5d1b7dcc LightClassUtil: files can no longer "belong to builtIns" 2015-12-15 20:22:14 +03:00
Michael Bogdanov a849f3f5d4 Fixed filtering error 2015-12-12 11:41:37 +03:00
Alexey Sedunov 8fcda32287 Unit Test Tooling: Support Go to Test/Create Test actions for top-level declarations
#KT-10133 Fixed
2015-12-08 16:20:47 +03:00
Alexander Udalov caa6cdb3f7 Remove obsolete code in KotlinBuilder, rename PackageClassUtils 2015-11-27 21:41:26 +03:00