Commit Graph

24256 Commits

Author SHA1 Message Date
Valentin Kipyatkov b612e7a6b0 On-the-fly import optimization 2015-07-22 21:16:12 +03:00
Valentin Kipyatkov 8793c6fb76 Lowered intention priority 2015-07-22 21:16:12 +03:00
Valentin Kipyatkov 1324ce5928 Added quickfix on unused import 2015-07-22 21:16:11 +03:00
Valentin Kipyatkov af192698ed Imports from current package are redundant too 2015-07-22 21:11:00 +03:00
Valentin Kipyatkov 68dec99ad7 KT-8389 Meaningless self-import insterted on "optimize imports"
#KT-8389 Fixed
2015-07-22 21:11:00 +03:00
Valentin Kipyatkov 344529a09a Fixed test 2015-07-22 21:11:00 +03:00
Valentin Kipyatkov e5d8eecc9d Unused import highlighting
#KT-5236 Fixed
2015-07-22 21:11:00 +03:00
Valentin Kipyatkov 8c02ce73a4 Corrections on code review 2015-07-22 21:06:14 +03:00
Valentin Kipyatkov 2ad981d5c9 Smart completion: don't use outer call's expected type too much 2015-07-22 21:06:14 +03:00
Valentin Kipyatkov a5384cdc28 Smart completion works for cases when no exact type known (generic parameter substitution is not known) 2015-07-22 21:06:13 +03:00
Valentin Kipyatkov 7b0b2d38c5 KT-8560 Smart completion for lambda value and more in smart completion
#KT-8560 Fixed
2015-07-22 21:04:30 +03:00
Mikhail Glukhikh f551d64ea2 Refactoring: AnnotationTarget / AnnotationRetention renamed to KotlinTarget / KotlinRetention
(for not clashing with the same built-in classes)
2015-07-22 19:01:25 +03:00
Mikhail Glukhikh 414c44ade5 Make retention of 'kotlin.annotation.annotation' to SOURCE. Serialize / deserialize it instead. Some fixed tests. 2015-07-22 19:00:51 +03:00
Mikhail Glukhikh 11f87e6ca1 No more java Target / Retention loaded. Render java Retention / Target. Related test changes. 2015-07-22 19:00:39 +03:00
Mikhail Glukhikh c2480d1183 Java to Kotlin annotation retention mapping + new test + JvmLoader test adaptation 2015-07-22 19:00:26 +03:00
Mikhail Glukhikh c3c02e49c9 Retention for 'kotlin.throws' 2015-07-22 18:58:21 +03:00
Nikolay Krasko bab01f3822 Use partial resolve for getting annotation fqn
#KT-8557 In Progress
2015-07-22 12:59:49 +03:00
Nikolay Krasko cbd4b6e204 Additional resolve for annotation on top level classes 2015-07-22 12:59:48 +03:00
Nikolay Krasko 7b85f88dfd Minor: remove commented code 2015-07-22 12:59:47 +03:00
Dmitry Petrov 0ca5cc63e0 Fix accidentally pushed compiler.xml 2015-07-22 09:59:51 +03:00
Valentin Kipyatkov bddcd58665 Fixed test 2015-07-22 09:55:32 +03:00
Valentin Kipyatkov 10b405f961 Merge branch 'rr/valentin/for-loop-indices' 2015-07-22 09:48:18 +03:00
Zalim Bashorov 679d5fe496 Introduce UsageCollector 2015-07-21 22:27:27 +03:00
Zalim Bashorov 91b87f41bc incremental.cache -> incremental.components; IncrementalCacheProvider -> IncrementalCompilationComponents 2015-07-21 22:27:26 +03:00
Zalim Bashorov 1a96b45f27 To avoid NoSuchMethodError when overriden method declare more specific return type and the super method has an argument with default value (KT-5785) 2015-07-21 22:27:26 +03:00
Zalim Bashorov df4f43267b Provide location parameter in delegations 2015-07-21 22:27:26 +03:00
Zalim Bashorov 41449c107e Location.NOWHERE -> UsageLocation.NO_LOCATION 2015-07-21 22:27:25 +03:00
Zalim Bashorov e2e3520c3d Add location parameter to JetScope::getClassifier 2015-07-21 22:27:25 +03:00
Zalim Bashorov 0f92036353 Add location parameter to JetScope::getFunctions 2015-07-21 22:27:25 +03:00
Zalim Bashorov f79155df97 Add location parameter to JetScope::getProperties 2015-07-21 22:27:24 +03:00
Zalim Bashorov 2d2d510ef0 Introduce Location class to provide usage information in scopes 2015-07-21 22:27:24 +03:00
Stanislav Erokhin 8c912fdb6d Fixed compilation 2015-07-21 21:59:17 +03:00
Stanislav Erokhin 47be8a7f06 Optimized equals method for TypeConstructor 2015-07-21 21:50:28 +03:00
Stanislav Erokhin 9e36e5a8b1 Not store call to resolutionResultsCache in INDEPENDENT mode 2015-07-21 21:50:27 +03:00
Stanislav Erokhin f802d79305 Minor. move method 2015-07-21 21:50:27 +03:00
Pavel V. Talanov edc3755b91 Do not build light classes for decompiled enum entries 2015-07-21 20:52:44 +03:00
Pavel V. Talanov 4e0d2bc23c CompileTimeConstantUtils: use getConstant instead of evaluate
Hacky way to avoid passing builtins into this code
2015-07-21 20:52:43 +03:00
Pavel V. Talanov 855e3d2bf4 Inject ConstantExpressionEvaluator in BasicExpressionTypingVisitor via ExpressionTypingComponents 2015-07-21 20:52:42 +03:00
Pavel V. Talanov add8387141 Fix some problems with jsCode function
1. Fix a bug in frontend when passing non-String constant led to exception
2. Fix a bug in backend when passing non-JetStringTeplate string constant led to exception
3. Avoid recomputing constant argument in backend
2015-07-21 20:52:42 +03:00
Pavel V. Talanov b4825ada69 Refactor ExpressionTypingVisitorDispatcher
Inject in in ExpressionTypingServices
2015-07-21 20:52:41 +03:00
Dmitry Jemerov 3012815f5f create KotlinReferenceUsageInfo in read action 2015-07-21 18:26:47 +02:00
Alexander Udalov 90d2a0dd3c Revert incorrect change to .idea/compiler.xml 2015-07-21 19:12:06 +03:00
Dmitry Petrov 6437a4bdc6 Support overload ambiguity resolution for callable references by expected type.
Resolve callable references taking into account expected callable types.

This affects call resolution procedure (resolve 'foo' in for 'foo(::bar)') similar to the approach used for function literals:

* During "shape arguments" phase of call resolution, callable references are resolved in independent context without expected type. If the callable reference is ambiguous, its shape type is a function placeholder type without parameter types and return type information. Otherwise, it is a reflection type for the resolved function or property. Upper-level call is resolved without taking into account ambiguous callable references.

* During "complete call" phase of call resolution, resolve callable reference arguments to actual descriptors (if possible), and update constraint system for the given call accordingly.

 #KT-6982 Fixed
 #KT-5780 Fixed
2015-07-21 18:33:15 +03:00
Dmitry Jemerov b3a2ee2148 delete KDoc Maven plugin 2015-07-21 16:48:38 +02:00
Dmitry Jemerov b791ea03a9 code cleanup: cli-common module 2015-07-21 16:21:48 +02:00
Dmitry Jemerov aa1f6f2252 code cleanup: core modules 2015-07-21 16:21:45 +02:00
Dmitry Jemerov 6a6f369e5d code cleanup: plugin-api module 2015-07-21 16:20:56 +02:00
Dmitry Jemerov 43d2af166e code cleanup: light-classes module 2015-07-21 16:20:56 +02:00
Dmitry Jemerov a73df901ae code cleanup: frontend.java module 2015-07-21 16:20:55 +02:00
Dmitry Jemerov 6bf934b472 code cleanup: frontend module 2015-07-21 16:20:51 +02:00