Commit Graph

2877 Commits

Author SHA1 Message Date
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
Evgeny Gerashchenko 5ff718b94c Minor. Renamed variables where 'projection kind' term should be used instead of 'variance'. 2012-11-20 16:16:46 +04:00
Evgeny Gerashchenko 4a37c130df Minor. Better name for CollectionClassMapping class. 2012-11-20 16:16:46 +04:00
Evgeny Gerashchenko f287e2b55d Minor. Various fixups after code review. 2012-11-20 16:16:46 +04:00
Evgeny Gerashchenko 94cad16d1d Moved all code relevant to signatures propagation to separate class.
#KT-2776 in progress
2012-11-20 16:16:46 +04:00
Evgeny Gerashchenko 3b63e6e061 Supported variance propagation. 2012-11-20 16:16:45 +04:00
Evgeny Gerashchenko 9177080d8b Fixed loading variance from alternative signature. 2012-11-20 16:16:45 +04:00
Evgeny Gerashchenko c5e9deb906 Reverted modification in TypeTransformingVisitor in "Renamed & moved AllInjectorsGenerator".
It was not relevant to that commit: it was squashed accidentally during interactive rebasing.
2012-11-20 16:16:45 +04:00
Evgeny Gerashchenko 044487cf37 Supported propagating read-onliness.
#KT-2776 in progress
2012-11-20 16:16:45 +04:00
Evgeny Gerashchenko 89b413b7ad Supported generic subclasses in submethods.
#KT-2776 in progress
2012-11-20 16:16:45 +04:00
Evgeny Gerashchenko e2d213f1fd Loading functions from superclasses before current to avoid heisenbug.
Added test with two supertypes.

 #KT-2776 in progress
2012-11-20 16:16:45 +04:00
Evgeny Gerashchenko 494345ce10 Improved algorithm, added simple tests with generic types.
#KT-2776 in progress
2012-11-20 16:16:44 +04:00
Evgeny Gerashchenko 1f4d994480 Introduced simple propagation of nullability on loading Java.
#KT-2776 in progress
2012-11-20 16:16:44 +04:00
Evgeny Gerashchenko 3fce07b83a Arranged generator classes into packages to make it possible to compile GenerateInjectors separately. 2012-11-12 20:40:23 +04:00
Evgeny Gerashchenko 8d7e79c806 Renamed & moved AllInjectorsGenerator. 2012-11-12 19:54:22 +04:00
Svetlana Isakova e7750c6dc7 OverloadingConflictResolver made singleton 2012-11-12 15:32:11 +04:00
Nikolay Krasko 8bb6b651b0 Fix bug - search in classDescriptorCache with javaClassToKotlinFqName 2012-11-09 14:49:24 +04:00
Nikolay Krasko c081ced616 KT-2499 If Java class is imported, it is visible in completion three times: as Java class, Kotlin class and package
- Add java trace into delegation for lazy resolve session
 #KT-2499 Fixed
2012-11-09 14:49:23 +04:00
Pavel V. Talanov e9bf09d240 Rename class: Origin -> DeclarationOrigin 2012-11-07 16:12:57 +04:00
Pavel V. Talanov a657a19253 Fix TypeConstructor#getSupertypes() return type 2012-11-07 16:12:56 +04:00
Pavel V. Talanov daf9c6f2c1 Add TODO 2012-11-07 16:12:56 +04:00
Pavel V. Talanov d1057348da Refactor JavaNamespaceResolver#createNamespaceData 2012-11-07 16:12:55 +04:00
Pavel V. Talanov 9fbecf515e Move NamedMembers and MembersCache to provider package 2012-11-07 16:12:54 +04:00
Pavel V. Talanov 940aba04ff Rename package: data -> provider 2012-11-07 16:12:53 +04:00
Pavel V. Talanov b3e9a78f45 Rename: NamespaceScopeData -> PackagePsiDeclarationImpl 2012-11-07 16:12:52 +04:00
Pavel V. Talanov f0b99848ec Refactor: remove ResolverClassData class 2012-11-07 16:12:51 +04:00
Pavel V. Talanov 51c369db5e Refactor: group methods for creating *PsiDeclarationProvider 2012-11-07 16:12:50 +04:00
Pavel V. Talanov 791120a2be Refactor: remove ResolverScopeData class, hack JavaBaseScope to use ClassPsiDeclarationProvider and PackagePsiDeclarationProvider interfaces
Compilation errors fixed
2012-11-07 16:12:50 +04:00
Pavel V. Talanov 5405b03f21 Refactor: restructure Resolver*Data class hierarchy
Compilation errors still present
2012-11-07 16:12:49 +04:00
Pavel V. Talanov 89c5bef6eb Refactor: introduce and use PackagePsiDeclarationProvider instead of ResolverNamespaceData 2012-11-07 16:12:48 +04:00
Pavel V. Talanov adc0e1fce1 Refactor: use ClassPsiDeclarationProvider instead of ResolverClassData 2012-11-07 16:12:47 +04:00
Pavel V. Talanov 811a65826b Refactor: introduce ClassPsiDeclarationProvider and PsiDeclarationProvider interfaces, use them in JavaFunctionResolver and JavaPropertyResolver 2012-11-07 16:12:46 +04:00
Pavel V. Talanov 1c70daa499 Refactor: use getOrigin instead of isKotlin() 2012-11-07 16:12:45 +04:00