Commit Graph

4556 Commits

Author SHA1 Message Date
Valentin Kipyatkov 820c2c7cd8 Smart completion: inheritors instantiation suggested + fixed a bug with incorrect presentation of generic java class instantiation 2014-11-28 15:33:26 +03:00
Alexander Udalov 4d95bcfc7e Rename CharSequence.get to charAt
This is done for JVM interoperability. There's still a member function
String.get() and an extension function "get" on CharSequence

 #KT-1730 Fixed
 #KT-5389 Fixed
2014-11-27 20:38:18 +03:00
Alexander Udalov a7b88e9485 Make CharSequence.length a function instead of property
And String.length as well.

This is done for JVM interoperability: java.lang.CharSequence is an open class
and has a function 'length()' which should be implemented in subclasses
somehow.

A minor unexpected effect of this is that String.length() is now a compile-time
constant (it wasn't such as a property because properties are not supported in
compile-time constant evaluation)

 #KT-3571 Fixed
2014-11-27 20:38:17 +03:00
Denis Zharkov 37d476c388 Moved DiagnosticFactories about reified to
``Type parameter declarations'' block
2014-11-27 13:49:18 +04:00
Denis Zharkov 02be1063c1 Do not report a warning on an inline function with a reified parameter
#KT-6273 Fixed
2014-11-27 13:49:17 +04:00
Alexey Sedunov ddccc0e640 Change Signature: Update enum entries w/o delegation specifier when changing signature of enum class constructor
#KT-5978 Fixed
2014-11-26 13:07:29 +03:00
Valentin Kipyatkov 32a13502c5 Fixed one of the cases with lambda's returning Nothing 2014-11-24 20:11:29 +03:00
Valentin Kipyatkov d334011d5d Renamed firstOrNullIsInstance 2014-11-24 20:11:28 +03:00
Valentin Kipyatkov ddc60ac5dd Better injecting of partial body resolve filter 2014-11-24 20:11:28 +03:00
Valentin Kipyatkov cd90ab951f Partial body resolve tests: more informative test output 2014-11-24 20:11:27 +03:00
Valentin Kipyatkov 00d9c94a8b Changed way to pass statementFilter from ElementResolver into ExpressionTypingServices 2014-11-24 20:11:26 +03:00
Valentin Kipyatkov a0c9c0e7b2 Added firstOrNullIsInstance and firstIsInstance methods 2014-11-24 20:11:26 +03:00
Valentin Kipyatkov 8010c0f09d Partial body resolve works for local Nothing functions + does not go inside local functions and classes 2014-11-24 20:11:25 +03:00
Valentin Kipyatkov 3b77d337e8 Renames "possibly nothing" to "probably nothing" 2014-11-24 20:11:25 +03:00
Valentin Kipyatkov e5579bcf32 Partial body resolve: to take source Kotlin callables with Nothing type from caches 2014-11-24 20:11:25 +03:00
Valentin Kipyatkov a675b5ba38 Basic implementation of partial body resolve 2014-11-24 20:11:23 +03:00
Nikolay Krasko 92d6ac7e7c Rewrite to Kotlin: LockBasedLazyResolveStorageManager 2014-11-24 19:19:32 +03:00
Nikolay Krasko 2800ab4a12 Rewrite to Kotlin (file rename): LockBasedLazyResolveStorageManager 2014-11-24 19:19:29 +03:00
Nikolay Krasko a456f9d22e Add ability to create memoized functions with custom maps
- Remove cast in ResolveSession class
2014-11-24 19:19:14 +03:00
Stanislav Erokhin 4c0befbfe9 Remove unnecessary lazy value 2014-11-24 15:38:58 +03:00
Stanislav Erokhin 7fa93c4e90 Added support space symbols for diagnostic parameters in DiagnosticTest 2014-11-24 15:38:56 +03:00
Pavel V. Talanov bce399f5fd Rename: AnalyzeExhaust -> AnalysisResult 2014-11-21 15:56:05 +03:00
Pavel V. Talanov 0319ef797e Refactor: Introduce DeclarationDescriptor#module utility 2014-11-21 15:56:03 +03:00
Pavel V. Talanov 1991f0119e Convert AnalyzeExhaust to Kotlin and make it a data class 2014-11-21 15:55:59 +03:00
Svetlana Isakova 2948ca9077 Fixed argument for error message 'TYPE_PARAMETER_AS_REIFIED' 2014-11-21 14:02:43 +03:00
Svetlana Isakova 5d0f004292 Fix for 'if' special construct type
If one branch has Nothing type (contains 'return', etc.),
return result type of corresponding resolved call (it may depend on smart casts)
 #KT-6242 Fixed
2014-11-21 14:02:42 +03:00
Svetlana Isakova 36fd8a1a08 Set the right call operation node for implicit invoke
Make a call for implicit invoke safe if an outer call is safe
2014-11-21 14:02:42 +03:00
Svetlana Isakova 7f62675665 Fixed error reporting for special constructions (if, elvis)
Track whether an error was reported for sub expressions (like 'if' branches) or it should be reported for the whole expression
 #KT-6189 Fixed
2014-11-21 14:02:42 +03:00
Svetlana Isakova 8109b1f997 DONT_CARE placeholder can be nullable after a substitution
Interpret it as DONT_CARE as well (not as an error type where an error was generated before)
 #KT-6175 Fixed
2014-11-21 14:02:41 +03:00
Svetlana Isakova 8ad017c071 Extracted 'deparenthesizeArgument', used it where necessary
#KT-6176 Fixed
2014-11-21 14:02:41 +03:00
Michael Bogdanov 2cc9d8e29b Support platformStatic for properties
#KT-5766 Fixed
2014-11-20 10:20:31 +03:00
Michael Bogdanov 5412a67d29 Generate static backing fields for properties in object
#KT-4973 Fixed
2014-11-20 10:20:31 +03:00
Valentin Kipyatkov 153b53baa8 Moved method checkIsExtensionCallable from ExpressionTypingUtils to TipsManager (converting it to Kottlin) 2014-11-19 16:01:19 +03:00
Valentin Kipyatkov 376e12b6f3 Removed code which does not seem to be needed at all 2014-11-19 16:01:18 +03:00
Nikolay Krasko 1fb0dc2d92 LTDA: Refactoring - extract processClassOrObject method from TDA 2014-11-18 17:10:25 +03:00
Nikolay Krasko 1a359fbcf6 LTDA: Refactoring - Move "analyzeFiles" to LazyTopDownAnalyzer 2014-11-18 17:10:24 +03:00
Nikolay Krasko 7b15f4125d LTDA: Fix configuration of package fragment provider in lazy resolve test code 2014-11-18 17:10:22 +03:00
Nikolay Krasko ad05b5a709 Injector for additional body resolve with lazy analyzer
Fix resolve JS modules with JVM resolver
2014-11-18 17:10:21 +03:00
Valentin Kipyatkov d061c3d771 Completion: bold members from immediate class 2014-11-17 22:06:16 +03:00
Stanislav Erokhin caf44969a4 Add support for check diagnostic parameters in test. 2014-11-17 17:45:06 +03:00
Stanislav Erokhin 5a192f58ea Create AbstractDiagnosticWithParametersRenderer with renderParameters method. 2014-11-17 17:45:06 +03:00
Stanislav Erokhin 12f2c0861f Added DiagnosticFactoryToRendererMap.put(Renderers.MultiRenderer) 2014-11-17 17:45:05 +03:00
Stanislav Erokhin 65c9ea2465 Fix variance problems. 2014-11-17 17:45:05 +03:00
Stanislav Erokhin c10c1ad7f6 Fix wrong containingDeclaration for property type parameter. 2014-11-17 17:45:05 +03:00
Stanislav Erokhin 2033042d33 Make candidates lazy in ResolutionTask & ResolutionTaskHolder 2014-11-17 17:38:52 +03:00
Stanislav Erokhin eb50e4adb3 Inject StorageManager to ResolutionTaskHolder 2014-11-17 17:38:52 +03:00
Stanislav Erokhin b7f7a3349d Rename ResolutionTaskHolder.java -> ResolutionTaskHolder.kt 2014-11-17 17:38:52 +03:00
Stanislav Erokhin f59d54e64f Convert ResolutionTaskHolder to kotlin 2014-11-17 17:38:51 +03:00
Nikolay Krasko b5fb27b485 LTDA: Register script files in packages slice 2014-11-17 16:15:26 +03:00
Nikolay Krasko 365319a8e6 LTDA: Make supertypes in lazy type parameters be recorded in order of declaration 2014-11-17 16:15:26 +03:00