Commit Graph

4335 Commits

Author SHA1 Message Date
Dmitry Petrov 9e7222906d Generate (possibly empty) file classes for files with type aliases. 2016-06-06 13:50:37 +03:00
Dmitry Petrov 3500f5a96b Type alias: resolve type alias RHS during force-resolve. 2016-06-03 16:07:20 +03:00
Mikhail Glukhikh de3fbe38f1 KT-12152: quick fix "make final" for member / containing class 2016-06-03 14:46:07 +03:00
Mikhail Glukhikh a22e7d3bcf KT-12152 : leaking this inspection: accessing non-final member / this in non-final class 2016-06-03 14:45:58 +03:00
Alexey Sedunov cf8cf37d69 Light Classes: Drop obsolete constraint which prevents generation of light methods for local class members
#KT-8892 Fixed
2016-06-02 15:28:34 +03:00
Alexey Sedunov d27f3c0189 Rename: Do not replace Java references to synthetic component functions when renaming constructor parameter
#KT-9241 Fixed
2016-06-02 15:28:31 +03:00
Alexey Sedunov 96132fa61a Rename: @JvmName support
#KT-8044 Fixed
 #KT-9432 Fixed
2016-06-02 15:28:27 +03:00
Alexey Sedunov ff4c16d342 Rename: Allow renaming class by constructor delegation call referencing primary constructor
#KT-8860 Fixed
2016-06-02 15:28:22 +03:00
Alexey Sedunov e89e809dc7 Rename: Respect naming conventions in automatic variable rename
#KT-7851 Fixed
2016-06-02 15:28:19 +03:00
Alexey Sedunov 691de677b3 Rename: Quote non-identifier names in Kotlin references
#KT-9156 Fixed
2016-06-02 15:28:11 +03:00
Nikolay Krasko 3f4cde3d25 NoSuchFieldError in Evaluate Expression on a property of a derived class (KT-12206)
#KT-12206 Fixed
2016-06-02 14:39:51 +03:00
Kirill Rakhman c24960f8d9 Formatter: handle spaces between class name and type parameters (#875)
Fixes #KT-12446
2016-06-01 21:20:56 +03:00
Mikhail Glukhikh 33b6780ce2 Quick fix "add !!" for SMARTCAST_IMPOSSIBLE in certain situations 2016-06-01 19:48:26 +03:00
Mikhail Glukhikh 9f819b1c03 Convert to expression body: take nested whens into account 2016-06-01 16:19:55 +03:00
Mikhail Glukhikh 2350caf177 Convert to expression body is forbidden on single non-exhaustive when statement with Unit result #KT-12502 Fixed 2016-06-01 16:02:15 +03:00
Mikhail Glukhikh 91ce8cc612 "Make abstract" is no longer applicable to object / enum entry members #KT-3797 Fixed 2016-06-01 16:02:11 +03:00
Dmitry Petrov 0319d5a5aa KT-11588 Type aliases
- Nested type aliases
- UNSUPPORTED_TYPEALIAS error (language level < 1.1)
- tests for is/as/as? with type alias
2016-06-01 14:32:46 +03:00
Kirill Rakhman 93ebb3da65 Formatter: handle spaces around 'is' keyword (#874)
Fixes #KT-12548
2016-05-30 20:35:33 +03:00
Mikhail Glukhikh 7a24429b53 Simplify for intention: apply name validator to prevent conflicts 2016-05-30 12:15:13 +03:00
Mikhail Glukhikh 792b37bce4 Simplify for intention: applicable of any numbers of properties used #KT-10779 Fixed 2016-05-30 12:15:09 +03:00
Mikhail Glukhikh c26d7e0eba Attach "add remaining branches" and "add else branch" fixes to NON_EXHAUSTIVE_WHEN warning #KT-12503 Fixed 2016-05-27 18:08:20 +03:00
Pavel V. Talanov 3a3e145de2 KtLightMethod: Wrap return type so it resolves to light method's type parameter as opposed to delegate's
Affects java type inference in IDEA

  #KT-12090 Fixed
  #KT-11095 Fixed
2016-05-27 13:13:01 +03:00
Alexey Sedunov ec0f21c887 Spring Support: Fixed rename of custom-named beans specified with Kotlin annotation
#KT-12096 Fixed
2016-05-26 20:59:09 +03:00
Alexander Udalov 159d88102f Use MODULE_NAME configuration key in JS instead of MODULE_ID 2016-05-26 11:47:30 +03:00
Alexander Udalov cad4b6973c Introduce and use JSConfigurationKeys similar to JVMConfigurationKeys
Use type-safe keys in CompilerConfiguration instead of multiple parameters,
duplicated in the base class (JsConfig), derived class (LibrarySourcesConfig)
and its builder (LibrarySourcesConfig.Builder)
2016-05-26 11:47:30 +03:00
Alexander Udalov b65980f3b7 Drop JsConfig#inlineEnabled flag
Use CommonConfigurationKeys#DISABLE_INLINE flag (moved from
JVMConfigurationKeys) in CompilerConfiguration instead, similarly to the JVM
compiler
2016-05-26 11:47:30 +03:00
Alexander Udalov 6889bdbef8 Add CompilerConfiguration to JsConfig
Will be used to store common compiler options (such as source version, inline
disabled, etc) as well as JS-specific options, to unify the logic of compiler
option initialization between JS and JVM compilers
2016-05-26 11:47:30 +03:00
Alexander Udalov 116e4a5ced Rename Config -> JsConfig 2016-05-26 11:47:30 +03:00
Alexander Udalov c5e2f55ea7 Get rid of getModuleName(), pass configuration to createContextWithSealedModule
Add KotlinTestUtils.newConfiguration() which creates a configuration and sets
the module name to the default test one ("test-module")
2016-05-26 11:47:30 +03:00
Alexander Udalov 69343549b7 Move TEST_MODULE_NAME to KotlinTestUtils and change value to "test-module"
This name is more generic and thus can be used everywhere, not only in Java
integration tests
2016-05-26 11:47:30 +03:00
Dmitry Jemerov 636bbd026c test for KT-9454 2016-05-25 15:41:25 +02:00
Stanislav Erokhin 4b9aac6318 Replace not debug usages of DescriptorRenderer.DEBUG_TEXT to DescriptorRenderer.FQ_NAMES_IN_TYPES. 2016-05-25 16:31:34 +03:00
Pavel V. Talanov 710e920df7 lightClassUtils: Fix CCE when trying to obtain KtLightTypeParameter
#KT-12259 Fixed
2016-05-25 15:58:11 +03:00
Pavel V. Talanov 62421bbf7b 'const val' are now considered constants by Java in IDEA
#KT-12026 Fixed
2016-05-25 15:58:09 +03:00
Pavel V. Talanov c7cefad7d5 Implement IdeReplCompletionTest to test completion of entities declared in already evaluated lines 2016-05-24 15:42:09 +03:00
Pavel V. Talanov 4d75355cf2 Minor: Rename KotlinReplTest 2016-05-24 15:41:58 +03:00
Mikhail Glukhikh fa5e284bf8 Convert to block body: when expression with Unit result is now handled as "return needed" #KT-12193 Fixed 2016-05-24 14:29:01 +03:00
Mikhail Glukhikh 93defed324 KT-12302: ABSTRACT_MODIFIER_IN_INTERFACE warning is removed as obsolete 2016-05-24 14:25:18 +03:00
Vladislav Golub bb32c2d350 KT-12019 Highlighting of redundant 'if' statements (#871) 2016-05-23 21:02:38 +03:00
Alexander Udalov f8816b5d67 Pass CompilerConfiguration to GenerationState instead of ton of parameters 2016-05-23 14:49:26 +03:00
Alexander Udalov a85e98a078 Minor, inline unnecessary method of TopDownAnalyzerFacadeForJVM
The TopDownAnalysisMode parameter was TopLevelDeclarations everywhere
2016-05-23 14:47:00 +03:00
Alexander Udalov 0124cb64f0 Cleanup test utilities in JvmResolveUtil and GenerationUtils
Simplify usages and fix some warnings along the way.

Rename:
- analyzeFilesWithJavaIntegration, analyzeOneFileWithJavaIntegration -> analyze
- analyzeFilesWithJavaIntegrationAndCheckForErrors,
  analyzeOneFileWithJavaIntegrationAndCheckForErrors -> analyzeAndCheckForErrors
- compileFilesGetGenerationState, compileManyFilesGetGenerationStateForTest ->
  compileFiles
- compileFileGetGenerationStateForTest -> compileFile
- compileFileGetClassFileFactoryForTest -> compileFileTo
2016-05-23 14:47:00 +03:00
Alexander Udalov 6d6488e795 Pass CompilerConfiguration to TopDownAnalyzerFacadeForJVM
In most cases, the configuration can be loaded from KotlinCoreEnvironment. In
other cases, such as IDE tests, there's no environment, so we pass EMPTY. Since
currently the configuration is only used to load incremental compilation
components and module information, it's fine to pass EMPTY
2016-05-23 14:47:00 +03:00
Dmitry Petrov a2ec580119 KT-11588 Type aliases
Type alias stubs indexing (required for index-based declaration providers)
2016-05-20 14:17:26 +03:00
Alexey Sedunov 85d07e5f6d Spring Support: Implement Spring @Autowired inspection
#KT-12278 Fixed
 #KT-12147 Fixed
 #KT-12366 Fixed
 #KT-12122 Fixed
2016-05-19 13:56:06 +03:00
Mikhail Glukhikh f81192d48f Simplify for: take into account two or more possible local variables for the same loop parameter property 2016-05-18 19:56:19 +03:00
Mikhail Glukhikh 9108ab1923 Simplify for: take into account local property mutability 2016-05-18 19:56:14 +03:00
Mikhail Glukhikh d0fd3dea67 Simplify for: take into account loop parameter nullability 2016-05-18 19:56:10 +03:00
Mikhail Glukhikh a56248a11a Simplify for now works even if no variables are declared inside loop #KT-12145 Fixed 2016-05-18 19:56:06 +03:00
Mikhail Glukhikh c95e11cc7e Import as alias with another name is now counted as usage itself #KT-11933 Fixed 2016-05-18 17:46:18 +03:00