Commit Graph

21074 Commits

Author SHA1 Message Date
Michael Nedzelsky 3bf14518e8 JS backend: add -meta-info command line option for cli compiler 2015-03-18 09:38:53 +03:00
Michael Nedzelsky 711501af56 add new module js.serializer 2015-03-18 09:38:51 +03:00
Michael Nedzelsky af4afaba4a DescriptorUtils: add getPackagesFqNames 2015-03-18 09:38:49 +03:00
Michael Nedzelsky e0c0012a20 add serialization.js module 2015-03-18 09:38:47 +03:00
Michael Nedzelsky 9be62de964 add FlexibleTypeCapabilitiesDeserializer.Dynamic object 2015-03-18 09:38:45 +03:00
Michael Nedzelsky a7ba93c1d1 add flexibleTypeCapabilitiesDeserializer field to BuiltinsPackageFragment 2015-03-18 09:38:42 +03:00
Michael Nedzelsky 77e9ab8ad7 JS: FunctionReader: remove unnecessary check for libraries 2015-03-18 09:38:40 +03:00
Michael Nedzelsky 69417903e2 kotlin_lib_ecma5.js: add metadata function 2015-03-18 09:38:38 +03:00
Michael Nedzelsky a6c21fbe85 JS backend: LibraryUtils: add support for load and write metadata 2015-03-18 09:38:36 +03:00
Michael Nedzelsky c927b69103 DescriptorSerializer: add skip argument to packageProto method 2015-03-18 09:38:33 +03:00
Michael Nedzelsky 930ecb9cf9 move BuiltInsSerializerExtension from builtins-serializer to serialization module 2015-03-18 09:38:25 +03:00
Michael Bogdanov d765d899a7 Fix NPE with origin calculation 2015-03-18 09:22:56 +03:00
Zalim Bashorov 0ddec2d9b5 Minor in JS backend: throw IllegalStateException instead of UnsupportedOperationException inside CallCase 2015-03-18 08:55:56 +03:00
Zalim Bashorov 8421a15521 JS backend: report diagnostic when try to get referenece on builtin members instead of crash with Exception. 2015-03-18 08:55:56 +03:00
Zalim Bashorov 975c4ffab5 JS backend: report diagnostic for class literal(Foo::class) instead of crash with Exception. 2015-03-18 08:55:56 +03:00
Zalim Bashorov 8d6cbb671a JS backend: report diagonstic message for unsupported element instead of throw exception.
#KT-6507 Fixed
2015-03-18 08:55:56 +03:00
Alexander Udalov 593613609f Document JVM-specific reflection API 2015-03-17 23:39:15 +03:00
Alexander Udalov 59d3731b93 Document generated K*Functions 2015-03-17 23:39:14 +03:00
Alexander Udalov e34b3c5298 Document interfaces in package kotlin.reflect 2015-03-17 23:39:14 +03:00
Alexander Udalov fcdd5a872c Rename dispatchReceiver -> instance, T -> E 2015-03-17 23:39:14 +03:00
Alexander Udalov a4f9fe1eaa Filter out invisible fakes in KClass.properties
A user will rarely need those at the moment, and there's currently no other way
to let him filter out them by himself
2015-03-17 23:39:13 +03:00
Alexander Udalov d3abd54b06 Add 'val KClass.declaredProperties', make getProperties a property 2015-03-17 23:39:13 +03:00
Alexander Udalov 4a61f2751c Finish off KObject
The ABI version was increased to 22 in 94937a3
2015-03-17 23:39:13 +03:00
Denis Zharkov 36665fe3b8 Change logic of constructor delegation call resolution
- If class has type arguments (A<T1,..>) then
  resolve it's delegation call to `this` as for expression A<T1, ..>()
  like type arguments are explicitly specified.

- Same logic works for `super` delegation calls.

- It could be just enough to substitute all candidates before resolve
  but diagnostic messages looks more correct when substitution is
  performed within CandidateResolver.performResolutionForCandidateCall
  because it works the same way as when resolving A<T1, ..>().

 #KT-6992 Fixed
 #KT-6993 Fixed
 #KT-6994 Fixed
2015-03-17 23:18:35 +03:00
Denis Zharkov e37cf6b6a1 Minor, change method contract to @NotNull 2015-03-17 23:18:35 +03:00
Denis Zharkov 52ba8333dc Refactor delegation call resolution
- Move resolution logic from BodyResolver to CallResolver
- Call resolveConstructorDelegationCall explicitly without resolveFunctionCall
- Drop dead condition and unused method
2015-03-17 23:18:35 +03:00
Denis Zharkov 9cecd69a9e Drop unneeded condition that leads to error
This check is obsolete but leads to problems.

It appears when resolving recursive calls (see sameTypeParameterUse.kt):

`foo<R>(x: R, y: R)` within call `foo<R>(x, "")` after substitution
has R as type of it's second argument, and when checking value arguments,
x is not checked because supposed to be dependent on type parameter of candidate
(that is effectively false), so there are two successful candidates
in resolution results and wrong OVERLOAD_RESOLUTION_AMBIGUITY error.
2015-03-17 23:18:34 +03:00
Denis Zharkov 682f8a3110 Use original constructor descriptor when searching cycles 2015-03-17 23:18:34 +03:00
Denis Zharkov 6c46606f2b Fix constructors redeclaration message
#KT-6966 Fixed
2015-03-17 23:18:34 +03:00
Denis Zharkov 22425de5cb Setup spacing rules for secondary constructors
#KT-6968 Fixed
2015-03-17 23:18:34 +03:00
Denis Zharkov 9e5192e0e3 Prohibit val/vars/modifiers on secondary constructor parameter
#KT-6962 Fixed
2015-03-17 23:18:33 +03:00
Nikolay Krasko 99fb75c943 Consider bundled library version to be plugin version without identifier parts 2015-03-17 20:44:18 +03:00
Zalim Bashorov 8054f18287 Minor in JS backend: add @Nullable to JsNameRef#getQualifier and JsNameRef#getSymbol. 2015-03-17 19:00:51 +03:00
Zalim Bashorov d6c70cc143 JS backend: added @Nullable to JsNameRef#getName and added assertion to get more information for reproduce #EA-66032 2015-03-17 19:00:50 +03:00
Zalim Bashorov 7d3094a0f1 JS backend: use FqNameUnsafe when generate delegateName to avoid problems with special names.
#EA-64029 Fixed
2015-03-17 19:00:50 +03:00
Pavel V. Talanov dfa8fbcb0d default -> companion: Replace missed default in error message 2015-03-17 18:26:59 +03:00
Yan Zhulanow e56d67f4b8 Android synthetic properties are now properties with flexible type 2015-03-17 17:37:14 +03:00
Yan Zhulanow 01c79c6d00 Make Android bytecode shape tests more readable 2015-03-17 17:35:24 +03:00
Yan Zhulanow 15f8ba811b Return moduleInfo UserDataProperty if it was explicitly set 2015-03-17 17:35:24 +03:00
Yan Zhulanow b04d14f79d Move plugin-related String constants to the object 2015-03-17 17:35:23 +03:00
Pavel V. Talanov a50b218c6a default -> companion: Replace some missed usages of "isDefault" 2015-03-17 17:10:53 +03:00
Evgeny Gerashchenko 3ec6ffc906 KT-7007 Go to declaration doesn't work inside enum class
#KT-7007 fixed
2015-03-17 16:10:51 +03:00
Pavel V. Talanov 94937a39be Increase ABI and stub versions 2015-03-17 15:52:41 +03:00
Pavel V. Talanov 06916d98c6 default -> companion: replace all mentions of default and default object 2015-03-17 15:47:39 +03:00
Pavel V. Talanov a0783757e8 Delete libraries/sandbox folder with old experimental stuff 2015-03-17 15:46:52 +03:00
Pavel V. Talanov 498bb89358 Delete docs folder with old confluence documentation and talks presentations 2015-03-17 15:46:52 +03:00
Pavel V. Talanov 2a6facaef6 default -> companion: default object -> class object in project code, builtins and libs code 2015-03-17 15:46:48 +03:00
Alexander Udalov 444b461ba7 Run preloader in new-kotlinc, fix reflect->runtime class-path reference 2015-03-17 15:46:47 +03:00
Dmitry Jemerov 9ea0c999fc quick doc: use check instead of assertion when getting descriptor for declaration (EA-62592) 2015-03-17 12:48:58 +01:00
Zalim Bashorov 5e782dd547 Switch to the new(right) API for register extension points and extensions. 2015-03-17 14:11:00 +03:00