Commit Graph

1832 Commits

Author SHA1 Message Date
Valentin Kipyatkov 68174470c3 Add BodyResolveMode parameter to resolveToDescriptor() 2016-11-02 19:25:27 +03:00
Yan Zhulanow 951868f590 Explicitly filter out classes found by DataBindingClassFinder and DataBindingComponentClassFinder for scope without sources (KT-12402)
This change is temporary, and it should be reverted when the original problem in DataBinding IDE support is fixed.
2016-11-01 19:36:33 +03:00
Valentin Kipyatkov 046c55a7ac Caching for PARTIAL_FOR_COMPLETION resolve too (because it's used not only in completion) 2016-10-28 09:47:27 +03:00
Ilya Chernikov 2e03a6f1fd Add script dependencies modification tracker, some optimizations 2016-10-27 23:36:54 +02:00
Simon Ogorodnik b802ca0af5 Fix for non-resolving of KtReference, which getTargetDescriptors returning multiple descriptors to same element 2016-10-27 20:02:25 +03:00
Nikolay Krasko 0261385681 Report file name for getDefaultPlatform() information 2016-10-27 14:26:07 +03:00
Dmitry Jemerov 38a448ebbd use a non-deprecated API 2016-10-27 12:50:39 +02:00
Alexander Udalov e0989caf46 Load built-ins from module dependencies in JVM compiler
Introduce a new method KotlinClassFinder#findBuiltInsData, which is only
implemented correctly in the JvmCliVirtualFileFinder because it's only used in
the compiler code at the moment.

Introduce JvmBuiltInsPackageFragmentProvider, the purpose of which is to look
for .kotlin_builtins files in the classpath and provide definitions of
built-ins from those files.

Also exclude script.runtime from compilation because, as other excluded
modules, it has no dependency on the stdlib and is no longer compilable from
the IDE now, because it cannot resolve built-ins from anywhere
2016-10-26 16:31:09 +03:00
Alexander Udalov 035d6156a7 Drop Cloneable in JS, synthesize it at compile-time on JVM
Use the same approach that is used for creating function type classes
(Function{0,1,...}) + add Cloneable to supertypes of Array and primitive arrays

 #KT-5537 Fixed
2016-10-25 15:42:33 +03:00
Alexander Udalov 0e9f29fdba Make ClassDescriptor#classId nullable
Local classes or anonymous objects do not have a class id. Use "!!" almost
everywhere to make assertion explicit
2016-10-25 15:42:32 +03:00
Alexander Udalov c0147860bd Allow multiple ClassDescriptorFactory instances in deserialization 2016-10-25 15:42:32 +03:00
Nikolay Krasko a344ad0644 Fix absence of annotation for function type in cls stubs and ignore @ExtensionFunctionType 2016-10-25 13:30:35 +03:00
Nikolay Krasko d1dfcfaca1 Fix stub-psi mismatch exception on restoring annotation for nullable types
(cherry picked from commit 1aa37f11258dde289a9f7cb700294a038168fbdc)

Conflicts:
	compiler/frontend/src/org/jetbrains/kotlin/psi/stubs/KotlinStubVersions.kt
	idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/stubBuilder/TypeClsStubBuilder.kt
2016-10-25 13:22:53 +03:00
Mikhail Glukhikh e53940f4af KT-8442 related: correct handling of erroneous destructuring references, fixes EA-90434 2016-10-25 13:13:15 +03:00
Mikhail Glukhikh e7e56ab85c KT-8442 related: destructuring declarations aren't taken into account during light classes generation, fixes EA-81204 2016-10-25 13:13:11 +03:00
Valentin Kipyatkov f5d4b1dc8d KT-14191 FormattingModelInconsistencyException Exception on applying intention Replace with count()
#KT-14191 Fixed
2016-10-24 18:32:01 +03:00
Mikhail Glukhikh 6b9252a5d3 KT-7929 related: incorrect KtDestructuringDeclarationEntry is not resolved to descriptor, fixes EA-76715 2016-10-24 15:17:52 +03:00
Mikhail Glukhikh 1c8a2bb4cc No more attempts to resolve KtDestructuringDeclaration to descriptor #KT-7929 Fixed
Also #KT-8442 Fixed
2016-10-24 15:17:48 +03:00
Alexander Udalov 4c52ce37d2 Drop TargetPlatform in utilities for module creation 2016-10-21 17:10:40 +03:00
Alexander Udalov 9ec781e859 Get rid of ModuleDescriptor#defaultImports, use DefaultImportProvider 2016-10-21 17:04:59 +03:00
Dmitry Jemerov 32290ec1d3 add missing prepareForWrite() calls 2016-10-19 13:24:42 +02:00
Dmitry Jemerov 5db67ba2df diagnostics for EA-79913 - AIOOBE: ByDescriptorIndexer.getDeclarationForDescriptor$idea_analysis 2016-10-18 16:48:09 +03:00
Dmitry Jemerov 221b55550c handle elements with null containing file (EA-84533 - IAE: KtPsiFactoryKt.getModuleInfo) 2016-10-18 16:48:09 +03:00
Valentin Kipyatkov 76fe1ec0d9 KT-14353 ClassCastException during offline inspections
#KT-14353 Fixed
2016-10-13 21:51:38 +03:00
Valentin Kipyatkov 29fe63d5a9 More correct code - ensure that equals works correctly! 2016-10-13 15:56:18 +03:00
Alexander Udalov 2f616bdd33 Drop ModuleParameters, inline defaultImports everywhere 2016-10-12 17:07:09 +03:00
Alexander Udalov 88af36001c Introduce DeserializationConfiguration
Will be used soon to deliver the language/API-version-related behavior to the
deserialization
2016-10-12 12:19:17 +03:00
Valentin Kipyatkov 968a6cfd04 DescriptorRenderer to skip @ExtensionFunctionType and @ParameterName only when it's redundant 2016-10-11 23:38:54 +03:00
Valentin Kipyatkov ec51076355 DescriptorRenderer to render annotations for all types + separate option to render annotation arguments + use it in IdeDescriptorRenderers 2016-10-11 23:38:54 +03:00
Pavel V. Talanov 14f3e4c758 Cls stubs and decompiled text: Do not render parameter names in decompiled text and do not load ParameterName annotation in stubs
Add tests for decompiled text and stubs
2016-10-11 23:38:53 +03:00
Valentin Kipyatkov 3bd39df587 No parameter names in types for error messages 2016-10-11 23:38:50 +03:00
Valentin Kipyatkov 73dc5fefcb KT-12077 Code completion inserts FQN for annotations with use-site target inside primary constructor
KT-13009 Kotlin: annotation auto-import is broken in multiple ways

  #KT-12077 Fixed
  #KT-13009 Fixed
2016-10-11 17:26:52 +03:00
Valentin Kipyatkov b84260f39f Fixed multiple bugs in optimize imports for JS-target
#KT-13689 Fixed
2016-10-10 14:48:16 +03:00
Mikhail Glukhikh e7d290f726 Refactor PSI for destructuring declarations in for: they are now children of KtParameter and not instead of it 2016-10-06 21:03:19 +03:00
Alexander Udalov 0905b361d0 Drop LazyTopDownAnalyzerForTopLevel
Replace it everywhere with LazyTopDownAnalyzer
2016-10-06 14:40:20 +03:00
Alexander Udalov 7070b88ea4 Move PlatformToKotlinClassMap out from ModuleParameters
Configure it in the same way as other platform-specific components instead,
simplify some code
2016-10-06 14:40:20 +03:00
Alexey Sedunov ba1ee99e97 Navigation: Filter out candidate declarations coming from the wrong library
#KT-13726 In Progress
2016-10-05 11:32:36 +03:00
Denis Zharkov 4910024cdb Fix suppress at statement intention for asigmnents
There's no need now to consider precedence of element as
annotation preceding the beginning of block statement
is always now attached to the whole statement

 #KT-11673 Fixed
 #KT-12780 Fixed
2016-10-05 10:29:29 +03:00
Dmitry Jemerov d8b0c7aaec Binding trace filtering: do not calculate diagnostics if no one is going to query them 2016-10-04 18:50:30 +02:00
Valentin Kipyatkov af0b027952 All operator usages are searched with new searcher 2016-10-04 19:34:58 +03:00
Valentin Kipyatkov ba76e4d24d Quick search of getValue/setValue operator usages 2016-10-04 19:34:57 +03:00
Valentin Kipyatkov 75a6b0ca5a Quick search of iterator operator usages 2016-10-04 19:34:57 +03:00
Valentin Kipyatkov f2e5662154 Quick search of compareTo operator usages 2016-10-04 19:34:57 +03:00
Valentin Kipyatkov ee64a1a2b7 Quick search of equals operator usages 2016-10-04 19:34:57 +03:00
Valentin Kipyatkov 309d82308f Optimization 2016-10-04 19:34:56 +03:00
Valentin Kipyatkov 4cc16e42b2 Use partial resolve multiple in operator reference search 2016-10-04 19:34:56 +03:00
Valentin Kipyatkov f181458a58 More efficient way 2016-10-04 19:34:56 +03:00
Valentin Kipyatkov 5f8dca29aa Renames 2016-10-04 19:34:56 +03:00
Valentin Kipyatkov 32a436e893 Refactoring 2016-10-04 19:34:55 +03:00
Valentin Kipyatkov c8260f8d98 Refactoring 2016-10-04 19:34:55 +03:00