Natalia Ukhorskaya
316057873b
Fix EA-72969 - assert: ExtractFunctionForDebuggerUtilKt$getFunctionForExtractedFragment$.invoke : ERROR_TYPES
...
Context element for codeFragment can be a KtFile (not only KtExpression) ex. in case when file was changed after debugger starts and there is no expression at line with breakpoint
2016-04-15 15:58:07 +03:00
Natalia Ukhorskaya
e55a1ad49c
Get correct target platform for codeFragments
2016-04-15 15:58:07 +03:00
Alexander Udalov
1f3850da6e
Store outer class in ProtoContainer instead of only its kind
2016-04-14 21:08:36 +03:00
Alexander Udalov
8ee278d02f
Fix SourceElement for classes loaded in decompiler
2016-04-14 21:08:36 +03:00
Alexander Udalov
88106bb13b
Get rid of BinarySource interface, use SourceElement instead
2016-04-14 21:08:36 +03:00
Alexander Udalov
ad068ed4ac
Do not call findKotlinClass when loading class annotations
...
The main change is in AbstractBinaryClassAnnotationAndConstantLoader, where we
no longer perform unnecessary IO operations for classes which are already
loaded to memory
2016-04-14 21:08:36 +03:00
Alexander Udalov
7620d66019
Minor, rename PackagePartSource -> BinarySource
2016-04-14 21:08:36 +03:00
Alexander Udalov
ac92be12c6
Minor, take ProtoContainer in AnnotationAndConstantLoader#loadClassAnnotations
2016-04-14 21:08:36 +03:00
Alexander Udalov
2ab68d53fa
J2K KotlinJvmBinaryClass & AnnotationAndConstantLoader: convert
2016-04-14 21:08:36 +03:00
Alexey Sedunov
119cf0f0cd
Spring Support: Support Find Usages/Rename (on both declarations and
...
references) of Kotlin declarations referenced in the XML config
#KT-11719 Fixed
#KT-11652 Fixed
2016-04-09 21:13:30 +03:00
Alexey Sedunov
233f2b468d
Spring Support: "Generate Dependency..." actions
...
#KT-11407 Fixed
2016-04-08 21:11:28 +03:00
Alexey Sedunov
962b312fb7
[RESTORED] Light Classes: Constant expression evaluator for light annotation arguments
2016-04-08 21:11:16 +03:00
Alexey Sedunov
f2e2220560
[RESTORED] Spring Support: Implement Spring-specific references
2016-04-08 21:11:15 +03:00
Yan Zhulanow
4df9e9261e
Lint: Rewrite Lint diagnostics using Uast.
2016-04-08 15:39:58 +03:00
Pavel V. Talanov
f7db1f934c
IDELightClassGenerationSupport#getContextForClassOrObject: do not rely on resolution facade being unchanged
...
ResolutionFacade should only recompute its underlying structures in case of psi change (which is ok) or some exception, but relying on it being unchanged has led to numerous exceptions in backend when building light classes (EA-70985, EA-80756)
Changing this code may not be the solution but it can possibly move failures to other parts of the system, where they can be easier diagnosed
2016-04-06 16:09:17 +03:00
Dmitry Petrov
8377eb4613
KT-11777: no parts for '<root>'
2016-04-06 10:01:01 +03:00
Zalim Bashorov
f2237f675d
Don't use invalid entries (including disposed libraries) when crete module infos to avoid exceptions in the future (see #EA-81326)
2016-04-05 12:44:46 +03:00
Zalim Bashorov
88da3fe44d
Check that library isn't already disposed before use to avoid exceptions like in #EA-79154
2016-04-05 12:44:46 +03:00
Zalim Bashorov
7dad1831e9
Generate stubs only for files from jar
...
#EA-78399 fixed
2016-04-05 12:44:46 +03:00
Nikolay Krasko
04cea0993c
Make idea-analysis depend on Java 8
2016-04-05 00:39:46 +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
e19cc04c63
KT-11678 Support navigation from Java source to Kotlin binaries
...
Introduce LightMemberOriginForCompiledElement which holds logic for finding corresponding decompiled declaration
ByJvmSignatureIndexer stores the required information while building decompiled text
Some are unsolved in this commit:
- constructors
- @Jvm* and other unregular generated members
- annotation methods
#KT-11678 Fixed
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
4824d4b880
Refactor: abstract over decompiled text indexing
...
Move navigation-related code from KtDecompiledFile
2016-03-30 21:35:19 +03:00
Nikolay Krasko
4819c07c95
Extract function for adding annotation to KtModifierListOwner
2016-03-30 16:42:37 +03:00
Valentin Kipyatkov
97311b56fe
Minor changes on code review
2016-03-30 15:58:09 +03:00
Valentin Kipyatkov
99c232df84
Checking that no quickfix reference KotlinType
2016-03-30 15:58:09 +03:00
Valentin Kipyatkov
1f39511950
No i18n
2016-03-30 15:58:08 +03:00
Valentin Kipyatkov
54a69bf21d
ChangeVariableTypeFix to not hold KotlinType
2016-03-30 15:58:05 +03:00
Valentin Kipyatkov
210626a6e1
Merged code into one visitor
2016-03-30 15:58:04 +03:00
Valentin Kipyatkov
f4e3e33bd3
Renamed class
2016-03-30 15:58:04 +03:00
Valentin Kipyatkov
93e170325e
KT-11612 Highlight named arguments in the editor somehow
...
#KT-11612 Fixed
2016-03-30 15:58:04 +03:00
Valentin Kipyatkov
b9865c7225
Minor
2016-03-30 15:58:04 +03:00
Valentin Kipyatkov
2625c6bc29
Converted to Kotlin
2016-03-30 15:58:03 +03:00
Alexey Sedunov
ed9b1ac151
[REVERTED] 0a71eb7 Alexey Sedunov on 2/25/2016 at 14:02 (committed on 3/24/2016 at 18:42)
...
Spring Support: Implement Spring-specific references
2016-03-29 19:17:07 +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
Alexander Udalov
a8bebeb48d
Load annotations of const properties from multifile classes
...
Rework backing field generation logic in PropertyCodegen to switch the
ClassBuilder instance for a multifile part to that of the corresponding facade
class. This became needed because multifile parts, and their metadata, are
generated _before_ the multifile facade class and otherwise we would never
record that there's a synthetic '$annotations' method for a const val and would
not write that to the protobuf message for the property.
See also bad83200
#KT-10892 Fixed
2016-03-28 21:11:14 +03:00
Alexander Udalov
2dab56db8e
Do not report "incomplete hierarchy" in decompiler
...
It's fine if the decompiler can't find some classes; it won't do anything
except render their FQ names which are fully available
2016-03-28 14:13:59 +03:00
Alexander Udalov
8d64ed7f3f
Do not produce error classes for not found annotations
2016-03-28 14:13:59 +03:00
Alexander Udalov
873cf439de
Drop MissingDependencyErrorClass and related code
...
No longer needed because of the proper support for missing classes in
deserialization (see NotFoundClasses.kt)
2016-03-28 14:13:59 +03:00
Natalia Ukhorskaya
a09814961f
Debugger: more precise context expression in codeFragment
...
#KT-11380 Fixed
2016-03-25 20:27:19 +03:00
Alexey Sedunov
8c72b02c9b
Light Classes: Constant expression evaluator for light annotation arguments
2016-03-24 17:42:10 +03:00
Alexey Sedunov
0a71eb777e
Spring Support: Implement Spring-specific references
2016-03-24 17:42:08 +03:00
Alexey Sedunov
fefa0baeee
Light Classes: Generate light wrappers for annotation entries
2016-03-24 17:41:58 +03:00
Valentin Kipyatkov
f0ef04a6a8
Changed highlighting range for unresolved annotation name to not include '@'
...
#KT-11529 Fixed
2016-03-24 16:44:58 +03:00
Natalia Ukhorskaya
6752d0f180
Descriptors from library source should be visible from descriptors from libraries class files
2016-03-18 15:19:03 +03:00
Natalia Ukhorskaya
26c153639a
Skip visibility check when resolving class in debug mode
...
#KT-11326 Fixed
2016-03-18 15:19:03 +03:00
Alexander Udalov
5b7115dc38
Minor, drop deprecated KotlinBuiltIns.getExtensionFunction
2016-03-14 19:45:08 +03:00
Alexander Udalov
c18fab82e5
Simplify and rename function type utilities
...
- isFunctionType -> change the only usage in TracingStrategyForInvoke to check
for exact function type
- isExtensionFunctionType -> change all usages to check for exact extension
function type because extension function types are uninheritable in Kotlin
- isExactFunctionType -> isNonExtensionFunctionType
- isExactExtensionFunctionType -> isExtensionFunctionType
- isExactFunctionOrExtensionFunctionType -> isFunctionType
- isFunctionOrExtensionFunctionType -> isFunctionTypeOrSubtype
2016-03-14 19:24:07 +03:00
Alexander Udalov
fd344561fc
Move static function type utilities from KotlinBuiltIns to functionTypes.kt
2016-03-14 19:24:05 +03:00