Commit Graph

254 Commits

Author SHA1 Message Date
Andrey Breslav 8dc9aecbf8 DescriptorSearchRule removed 2014-02-05 18:12:01 +04:00
Andrey Breslav aa0dde3a78 Old implementation of JavaDescriptorResolver deleted 2014-02-05 18:12:01 +04:00
Andrey Breslav 9f918d48b5 JavaDescriptorResolver always uses lazy mode 2014-02-05 18:12:01 +04:00
Andrey Breslav 76c722b81c Utilities moved closer to their usages and rewritten to Kotlin 2014-02-05 18:12:00 +04:00
Andrey Breslav e119ca27ca AnnotationLoadingUtil created. Relevant code/constants moved there 2014-02-05 18:11:51 +04:00
Andrey Breslav aed1ccf771 getKotlinBuiltinClassDescriptor() moved to DescriptorResolverUtils 2014-02-05 18:07:35 +04:00
Andrey Breslav 3d1f2c25e2 resolveCompileTimeConstantValue() rewritten to Kotlin 2014-02-05 18:07:35 +04:00
Andrey Breslav 6aca05023a OBJECT_FQ_NAME moved to DescriptorResolverUtils 2014-02-05 18:07:35 +04:00
Natalia Ukhorskaya 36810c5bbb Move IS_PURE for constant inside CompileTimeConstant 2014-01-28 18:21:45 +04:00
Natalia Ukhorskaya 3f429116e5 Add constructor parameter for compileTimeConstant (can be used in annotation) 2014-01-28 18:21:44 +04:00
Alexander Udalov c1777f28f9 Fix NPE in annotation deserializer 2014-01-23 22:02:59 +04:00
Andrey Breslav ca7d5a2988 Java annotation resolution made lazy 2014-01-22 19:04:43 +04:00
Andrey Breslav 6ce0b9b919 Annotations used instead of List<AnnotationDescriptor> 2014-01-20 16:17:54 +04:00
Andrey Breslav 1af71c4dbe Using common storage manager for all lazy services 2014-01-20 16:17:53 +04:00
Evgeny Gerashchenko 292f0e4a38 Introduced lazy type and some related optimizations. 2014-01-16 20:34:10 +04:00
Nikolay Krasko 72d3b46fc6 Revert "Add method for getting all classifiers with given name from the scope"
This reverts commit 97759f5bb7.
2014-01-15 22:01:04 +04:00
Andrey Breslav ca5cf6f3cc Infinite recursion broken for subpackage search 2014-01-15 16:16:22 +04:00
Andrey Breslav 6fe122e7db Correct nullability when loading annotations from Java 2014-01-15 16:16:22 +04:00
Andrey Breslav 8be8ab9c9b Useless method removed
Package fragments do not nest, do there's no need to account for subpackages in member scopes
2014-01-15 16:16:22 +04:00
Andrey Breslav ff6cbca797 Cryptic-looking functions (iif, eq, neq etc) removed 2014-01-15 16:16:21 +04:00
Andrey Breslav 935fae70ea Prefer sources to binaries in JDR 2014-01-15 16:16:20 +04:00
Andrey Breslav 5a49b6fda5 Loading classes with wrong ABI version as Java classes 2014-01-15 16:16:20 +04:00
Andrey Breslav 2e4d166d6f Loading deseralized descriptors integrated with loading from bare Java code 2014-01-15 16:16:19 +04:00
Andrey Breslav 672594cb92 Deserialization made available through context 2014-01-15 16:16:19 +04:00
Andrey Breslav 2febcb175d Minor: typo fixed 2014-01-15 16:16:18 +04:00
Andrey Breslav 308e438671 Java package fragment's provider is JavaPackageFragmentProvider 2014-01-15 16:16:18 +04:00
Andrey Breslav 1f382ca744 JavaDescriptorResolver exposes ModuleDescriptor 2014-01-15 16:16:17 +04:00
Andrey Breslav 48ac30a933 Add getPackageFragment() to JavaDescriptorResolver 2014-01-15 16:16:16 +04:00
Andrey Breslav cedbc0ea53 Add default supertype to enum class objects 2014-01-15 16:16:15 +04:00
Andrey Breslav 5d9c11a61e JavaDescriptorResolver returns LazyJavaPackageFragmentProvider in LAZY mode 2014-01-15 16:16:14 +04:00
Andrey Breslav ada79588f6 Names of subpackages and classes are computed in LazyJavaPackageFragmentProvider 2014-01-15 16:16:14 +04:00
Andrey Breslav c01705f542 Unneeded subclasses replaced by factory methods 2014-01-15 16:16:14 +04:00
Andrey Breslav 09c33044f3 Rename: LazyJavaSubModule -> LazyJavaPackageFragmentProvider 2014-01-15 16:16:13 +04:00
Andrey Breslav 96a3905dec LazyJavaPackageFragment implements JavaPackageFragmentDescriptor 2014-01-15 16:16:13 +04:00
Andrey Breslav 512599bdf1 LazyJavaSubModule turned into a JavaPackageFragmentProvider 2014-01-15 16:16:13 +04:00
Andrey Breslav b9526f8907 Members of Java interfaces annotated @ReadOnly 2014-01-15 16:16:12 +04:00
Andrey Breslav 4176ce4e6c Fixing compilation errors to account for package fragment/view 2014-01-15 16:16:10 +04:00
Andrey Breslav a26c37419e Synthetic classes created for enum entries 2014-01-15 16:14:58 +04:00
Andrey Breslav c4fe79f81e Special case for enum entries is not needed any more 2014-01-15 16:14:58 +04:00
Andrey Breslav 811bf22375 Account for API changes 2014-01-15 16:14:58 +04:00
Andrey Breslav 81069cd213 Minor code improvements 2014-01-15 16:14:57 +04:00
Andrey Breslav d52a1b56ae Rename innerC to c 2014-01-15 16:14:57 +04:00
Andrey Breslav 5442eaf15f Useless method removed 2014-01-15 16:14:56 +04:00
Andrey Breslav 3e4c533167 Do not allow built-in classes in Java resolve 2014-01-15 16:14:56 +04:00
Andrey Breslav 01b456f5c2 Temporarily caching resolved classes in the trace (for existing code in the IDE to be happy) 2014-01-15 16:14:55 +04:00
Andrey Breslav ef220eff92 Record Java packages in the trace
Account for LazyJavaPackageFragment in FindUsages
2014-01-15 16:14:55 +04:00
Andrey Breslav ec1960a960 Detect Kotlin binaries by actually loading binary data, not simply checking whether the annotation is present
This is needed because even if the annotation is present, the ABI version may be wrong, and we should load such class as a Java class anyways
2014-01-15 16:14:55 +04:00
Andrey Breslav b16b9c58e1 If all supertypes are errors, do not leave the supertype list empty 2014-01-15 16:14:54 +04:00
Andrey Breslav 6915773150 Record lazy classes created 2014-01-15 16:14:54 +04:00
Andrey Breslav 382b29edc8 Fix qualified name construction for the case when IDEA distorts them (e.g. replaces all '$' by '.') 2014-01-15 16:14:54 +04:00