Commit Graph

140 Commits

Author SHA1 Message Date
Andrey Breslav b3f4527bb8 KotlinJvmBinaryClass now has a getClassHeader() method 2014-01-09 20:41:43 +04:00
Andrey Breslav 7fc9772930 Direct instantiations of VirtualFileKotlinClass are replaced by access to caching service 2014-01-09 20:41:43 +04:00
Andrey Breslav 8fcaf511dc Methods renamed to avoid ambiguity 2014-01-09 20:41:43 +04:00
Andrey Breslav debacf0554 Instances of ChainedScope should always have a debugMessage 2013-12-26 16:36:31 +04:00
Andrey Breslav 22bc499b96 Check header kind when deserializing from class files 2013-12-24 19:21:53 +04:00
Andrey Breslav 09642df623 JavaPackageFragmentDescriptor.getKind() introduced 2013-12-23 21:57:59 +04:00
Andrey Breslav 37a79e8299 Unused slice removed 2013-12-23 21:57:38 +04:00
Andrey Breslav e5fdebd031 Rename method 2013-12-23 21:57:35 +04:00
Andrey Breslav 230e534989 Interface JavaPackageFragmentProvider extracted 2013-12-23 21:34:38 +04:00
Andrey Breslav fc2d9cdde6 getProvider() added to PackageFragmentDescriptor 2013-12-23 21:34:38 +04:00
Andrey Breslav 3eadd1403d Looking up classes by fqName instead of complex package traversal 2013-12-23 21:34:38 +04:00
Andrey Breslav da4245b712 JavaDescriptorResolver is accessible through JavaPackageFragmentDescriptor 2013-12-23 19:10:27 +04:00
Andrey Breslav 1d8547a789 Factory method moved to the top 2013-12-23 19:10:27 +04:00
Andrey Breslav ed3932eca8 Extract interface JavaPackageFragmentDescriptor 2013-12-23 19:10:27 +04:00
Evgeny Gerashchenko e3743ace4f Added validation that all non-trait classes have at least one supertype.
Fixed it for some class objects.
2013-12-23 15:56:07 +04:00
Evgeny Gerashchenko a49551dd35 Introduced getFqNameSafe method. 2013-12-17 20:28:57 +04:00
Evgeny Gerashchenko 3352d8a954 Minor. Renamed method. 2013-12-17 20:28:56 +04:00
Evgeny Gerashchenko df1e92959e Generified subpackages obtaining, fixed it for mixed packages. 2013-12-17 20:28:54 +04:00
Evgeny Gerashchenko d198c202e3 Minor. Moved method. 2013-12-17 20:28:51 +04:00
Evgeny Gerashchenko c472cb682f Minor. Moved method. 2013-12-17 20:28:51 +04:00
Evgeny Gerashchenko 73114d7e9c Fragment providers added on higher level. 2013-12-17 20:28:50 +04:00
Evgeny Gerashchenko 1bbe9b0bd4 Removed DescriptorFinder.findPackage. 2013-12-17 20:28:47 +04:00
Evgeny Gerashchenko 557aaf363a Renamed method and got rid of some usages. 2013-12-17 20:28:47 +04:00
Evgeny Gerashchenko fbdc31790b Allowed "rewriting" unresolvedCache elements.
This is used to fix tests. The fix is pretty dirty, but related code is going to be thrown away anyway.
2013-12-17 20:28:46 +04:00
Evgeny Gerashchenko 78e40114ca More straightforward caching. 2013-12-17 20:28:45 +04:00
Evgeny Gerashchenko e18173cbac Made scope in JavaPackageFragmentDescriptor final. 2013-12-17 20:28:44 +04:00
Evgeny Gerashchenko 7e4e3e849d Removed obsolete classes. 2013-12-17 20:28:42 +04:00
Evgeny Gerashchenko b783175fb4 Removed ex-ModuleConfiguration classes. 2013-12-17 20:28:40 +04:00
Evgeny Gerashchenko d0605009ae Removed ModuleConfiguration. 2013-12-17 20:28:40 +04:00
Evgeny Gerashchenko 19d8f1394b Big refactoring continued. Migrating to package views and fragments. 2013-12-17 20:28:39 +04:00
Evgeny Gerashchenko 7abe6a5b4a Big refactoring. Migrating to package views and fragments. 2013-12-17 19:18:33 +04:00
Alexander Udalov d6e1af645f Upgrade ABI version after objects refactoring 2013-12-02 19:56:17 +04:00
Alexander Udalov dcedbed7e1 Minor, inline DescriptorUtils.getEnumEntriesScope 2013-12-02 19:56:15 +04:00
Alexander Udalov 4526d96186 Delete JetScope.getObjectDescriptor() 2013-12-02 19:56:11 +04:00
Alexander Udalov 550df37056 Delete JetScope.getObjectDescriptors() 2013-12-02 19:56:11 +04:00
Alexander Udalov 5a4cc1e2fe Put enum entries into enum class in JDR 2013-12-02 19:56:07 +04:00
Alexander Udalov a5d6d6719c EnumValue now has a ClassDescriptor for its enum entry 2013-12-02 19:56:06 +04:00
Alexander Udalov 83ef095093 Change enum entry resolution strategy in JDR
Enum entry is now resolved into a class with a class object, which inherits
from the former class, as in the other parts of the compiler. Create a special
class EnumEntrySyntheticClassDescriptor which will be reused in deserialization
later
2013-12-02 19:56:06 +04:00
Alexander Udalov c04f63e157 Change object deserialization strategy
Objects now have synthetic class objects in deserialization as well. "Class"
proto message now can have a synthetic class object proto within, if it's not
contained in any external class file, which is the case with objects. Drop
"class_object_present" field from binary format, since its value is equivalent
to the presence of "class_object" field
2013-12-02 19:55:21 +04:00
Mikhael Bogdanov 9037449313 Inline flag calculation through inline annotation 2013-11-26 12:53:07 +04:00
Andrey Breslav 4ac7afbb9f Module annotations-ext removed. Annotations are moved to runtime 2013-11-21 20:47:48 +04:00
Alexander Udalov a77d6a006d Cleanup ClassDescriptorImpl & ErrorClassDescriptor
ClassDescriptorImpl now extends ClassDescriptorBase and reuses most of its
functionality. ErrorClassDescriptor now is initialized in its own constructor.
Inline trivial arguments everywhere
2013-11-21 19:34:51 +04:00
Alexander Udalov 223bf11de6 Minor, NamedMembers.toString() 2013-11-21 19:34:50 +04:00
Alexander Udalov 2c6bf6171f Rename ClassKind.isObject -> isSingleton
"isObject" gives a false impression that this is a check if the kind is OBJECT
2013-11-21 19:34:50 +04:00
Andrey Breslav d9444fea09 printScopeStructure() introduced for debugging 2013-11-21 13:07:38 +04:00
Andrey Breslav 083644ea43 Support parameter annotations. Fix class path and test data 2013-11-21 13:07:36 +04:00
Andrey Breslav ef2ae0f398 Consider packages equal if their fqNames are equal 2013-11-21 13:07:36 +04:00
Andrey Breslav 9e446373e3 Old JDR and test data fixed 2013-11-21 13:07:35 +04:00
Alexander Udalov e8089cc461 Synthetic class object of enum should always be public
#KT-2834 Fixed
2013-11-18 19:46:01 +04:00
Alexander Udalov 8b5aa94484 Extract SpecialNames.isClassObjectName 2013-11-14 19:11:20 +04:00