Commit Graph

1409 Commits

Author SHA1 Message Date
Evgeny Gerashchenko 01b3d75374 Removing redundant projections when loading from Java. 2012-12-07 14:02:54 +04:00
Evgeny Gerashchenko 46a485da01 Supported star projection in alternative signatures. 2012-12-07 14:02:54 +04:00
Evgeny Gerashchenko a4a7e5818c Merged similar methods into getVarargParameterType. 2012-12-07 14:02:54 +04:00
Andrey Breslav 932d29e2ef A case for extending a raw Comparator 2012-12-04 22:58:20 +04:00
Evgeny Gerashchenko aef96e93cf Using signature propagation only if function is owned by class. 2012-12-04 17:09:29 +04:00
Evgeny Gerashchenko 00873b6e8c Reverted loading arrays from java with 'out' projection kind as return value.
#KT-3065
2012-11-29 17:02:43 +04:00
Nikolay Krasko 2dafbdc45a Ask for external annotation only while looking for nullability or kotlin signature annotation 2012-11-28 19:21:33 +04:00
Evgeny Gerashchenko b9b87d894a Asserting parameters in overridability assert, as well. 2012-11-28 15:08:58 +04:00
Evgeny Gerashchenko 88bf3d9298 Processing vararg flag of parameter for primitives and wrappers.
#KT-2776 fixed
2012-11-28 15:08:57 +04:00
Evgeny Gerashchenko 6375ea89a0 Supported propagation of upper bounds of method type parameters.
#KT-2776 in progress
2012-11-28 15:08:57 +04:00
Evgeny Gerashchenko 4252b3bca7 Invoke reportError() instead of passing function all the time
Using superFunctions field instead of passing it as parameter.
2012-11-28 15:08:57 +04:00
Evgeny Gerashchenko e761d69e9c Changed API of SignaturesPropagationData. 2012-11-28 15:08:57 +04:00
Evgeny Gerashchenko 914db59ea0 Renamed SignaturesPropagation to SignaturesPropagationData. 2012-11-28 15:08:57 +04:00
Evgeny Gerashchenko caad1c20a2 Substituting type parameters when checking alt signature. 2012-11-28 15:08:57 +04:00
Evgeny Gerashchenko f4c1722a46 Extracted method creating copy of type parameters (to reuse in SignaturesPropagationData). 2012-11-28 15:08:56 +04:00
Evgeny Gerashchenko 8d7de5d063 Supported checking for changing signature in submethods.
#KT-2776 in progress
2012-11-28 15:08:56 +04:00
Evgeny Gerashchenko dd671313c5 Supported propagation of vararg mark.
#KT-2776 in progress
2012-11-28 15:08:56 +04:00
Evgeny Gerashchenko 795b3bfbe0 Supported propagation of mutability in parameter position.
#KT-2776 in progress
2012-11-28 15:08:56 +04:00
Evgeny Gerashchenko a937d6be91 First converting classifier, and then process arguments. 2012-11-28 15:08:56 +04:00
Evgeny Gerashchenko 4da03f75f9 Supported simplest case of signatures propagation in value parameter position.
#KT-2776 in progress
2012-11-28 15:08:56 +04:00
Evgeny Gerashchenko 6530d48785 Passing super functions instead of method and trace to modifyReturnTypeAccordingToSuperMethods. 2012-11-28 15:08:55 +04:00
Pavel V. Talanov c726c95921 Hack to make tests pass
Inner classes of interfaces and inner interfaces are put in NonStaticMemberScope
2012-11-21 19:49:52 +04:00
Pavel V. Talanov 662acb58b1 Remove JavaPropertyResolver#getRealOwner() which is in fact redundant
Injectors regenerated
2012-11-21 19:49:46 +04:00
Pavel V. Talanov 3ae89dbb1d Test for resolving static members of java enum
Add clarifying note
2012-11-21 19:49:45 +04:00
Pavel V. Talanov 737b246b01 Fix resolve of inner and nested classes in JavaDescriptorResolver 2012-11-21 19:49:44 +04:00
Pavel V. Talanov 613a298e82 Use the same code to resolve classifiers for JavaClassStaticMembersScope as for non static members 2012-11-21 19:46:18 +04:00
Pavel V. Talanov 0c0d4d28c8 Simplify implementation of JavaClassNonStaticMembersScope#getClassifier()
Also cache inner classes and classifiers
2012-11-21 19:46:17 +04:00
Pavel V. Talanov 4b64e312fe Refactor: move ClassDescriptorFromJvmBytecode#getConstructors() logic to JavaClassNonStaticMembersScope 2012-11-21 19:46:16 +04:00
Pavel V. Talanov 8ac63a53ad Minor change to make code green 2012-11-21 19:46:15 +04:00
Pavel V. Talanov 05cf6a407a Refactor: split implementation of JavaBaseScope#computeAllDescriptors() and make computeInnerClasses() abstract, provide implementation in subclasses 2012-11-21 19:46:14 +04:00
Pavel V. Talanov 5bbe9af4bb Minor refactor 2012-11-21 19:46:13 +04:00
Pavel V. Talanov b6aa9b2bce Make JavaClassStaticMembersScope extend JavaClassMembersScope instead of JavaPackageScope, use JavaBaseScope instead of JavaPackageScope in JavaNamespaceResolver 2012-11-21 19:46:13 +04:00
Pavel V. Talanov 1ced967bc9 Refactor: pull getPsiElement() method Up 2012-11-21 19:46:12 +04:00
Pavel V. Talanov 32b7f64792 Refactor: extract JavaBaseScope getResolver() method 2012-11-21 19:46:11 +04:00
Pavel V. Talanov aad4e306b2 Make JavaBaseScope#computeFunctionDescriptor() abstract and provide implementation in subclasses 2012-11-21 19:46:10 +04:00
Pavel V. Talanov 908b58878b Introduce JavaClassNonStaticMembersScope and use instead of JavaClassMembersScope 2012-11-21 19:46:09 +04:00
Pavel V. Talanov eb155bb204 Refactor: remove useless check in PsiDeclarationProviderFactory 2012-11-21 19:46:08 +04:00
Pavel V. Talanov da47c31a86 Introduce JavaScopeForKotlinNamespace, JavaPackageScopeWithoutMembers, JavaClassStaticMembersScope, much clearer and more explicit logic in JavaNamespaceResolver#createNamespaceScope()
These classes explicitly represent 3 types of scopes that are created for NamespaceDescriptor in JDR
2012-11-21 19:46:07 +04:00
Evgeny Gerashchenko 4b465afdfa Saving order of super functions in SignaturesPropagation. 2012-11-21 14:00:51 +04:00
Svetlana Isakova 691cf52835 removed unused component dependencies 2012-11-20 19:54:55 +04:00
Svetlana Isakova 473a969598 ArgumentTypeResolver introduce
(component used in CallResolver)
2012-11-20 19:54:54 +04:00
Evgeny Gerashchenko 837cf38e91 Temporarily disabled assert in SignaturesPropagation which fails due to bug in IDEA. 2012-11-20 17:20:02 +04:00
Evgeny Gerashchenko 8252c51ebc Extracted method checking that loaded functions override super functions correctly. 2012-11-20 17:20:02 +04:00
Evgeny Gerashchenko 60f30732ed Supported several load from Java errors per declaration. 2012-11-20 17:20:02 +04:00
Evgeny Gerashchenko 4525e05268 Throwing exception only if no loading errors happened. 2012-11-20 17:20:02 +04:00
Evgeny Gerashchenko b09e0aa520 Added assert that we load consistent method hierarchy from Java. 2012-11-20 17:20:01 +04:00
Evgeny Gerashchenko 7e56d6eed8 Replaced indexed for loops with foreach. 2012-11-20 17:20:00 +04:00
Evgeny Gerashchenko d37bdbc07d Saving and loading projection kind of array element type in bytecode. 2012-11-20 17:20:00 +04:00
Evgeny Gerashchenko 21e97b408c Loading java arrays as Array<out T> at method return type position, as well. 2012-11-20 16:16:47 +04:00
Evgeny Gerashchenko 62b89655b9 Simplified calculateTypeArgumentsFromSuper and added samples in comments. 2012-11-20 16:16:46 +04:00