Alexander Udalov
969d81b43b
Drop deprecated INLINE flag from binary format
2013-12-02 19:56:16 +04:00
Alexander Udalov
dcedbed7e1
Minor, inline DescriptorUtils.getEnumEntriesScope
2013-12-02 19:56:15 +04:00
Alexander Udalov
ba693d3e38
Delete nested_object_name from binary format
...
It's useless now: nested objects are stored along with classes
2013-12-02 19:56:12 +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
cb6c98d4d6
Delete OBJECT_PROPERTY kind from binary format
...
We never create properties for objects anymore, except enum entries of Java
enums. Delete PropertyDescriptorForObjectImpl and its usages
2013-12-02 19:56:08 +04:00
Alexander Udalov
dd290bbeb9
Create classes when deserializing enum entries
2013-12-02 19:56:07 +04:00
Alexander Udalov
dd6cfcdc78
Resolve enum entries similar to objects in TypeHierarchyResolver
2013-12-02 19:56:04 +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
Alexander Udalov
008e5f0b13
Don't serialize default primary constructors
...
Drop "Callable primary_constructor" field, because it requires serializer to
serialize the fact that a class has a primary constructor. Default primary
constructors for objects etc. may not be serialized, because they can be
re-created trivially when they're loaded. There are three options: a class
doesn't have a primary constructor, a class has a default primary constructor,
a class has a custom primary constructor. This explains the change in
descriptors.proto
2013-12-02 19:52:44 +04:00
Mikhael Bogdanov
ceda72e0ca
Deserialization of function descriptors via DesirializedSimpleFunctionDescriptor
2013-12-02 18:30:42 +04:00
Mikhael Bogdanov
9037449313
Inline flag calculation through inline annotation
2013-11-26 12:53:07 +04:00
Mikhael Bogdanov
fd4816aa36
Inline flag marked deprecated
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
c7d5819ef2
Pull up getThisAsReceiverParameter()
2013-11-21 19:34:51 +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
62068bf741
Pull up getUnsubstitutedInnerClassesScope()
2013-11-21 19:34:50 +04:00
Alexander Udalov
e9f102f3e6
Pull up getClassObjectType()
2013-11-21 19:34:50 +04:00
Alexander Udalov
97f2d568a3
Use StorageManager in AbstractClassDescriptor to create a lazy value
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
0c2e1fb806
@NotNull annotations on descriptor classes
2013-11-21 13:07:34 +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
69ed375ce1
Extract SpecialNames utility class
2013-11-14 19:11:19 +04:00
Alexander Udalov
dd50438c78
Deserialize annotations on property setter parameters
2013-10-22 23:08:34 +04:00
Alexander Udalov
938a906bcd
Deserialize annotations on value parameters of functions
2013-10-22 23:08:33 +04:00
Alexander Udalov
4105455179
Serialize value parameter indices on JVM
...
This will help to load annotations on value parameters
2013-10-22 23:08:33 +04:00
Andrey Breslav
51d54661a1
Common logic extracted from lazy type implementations
2013-10-17 18:15:52 +04:00
Andrey Breslav
3960426698
TypeProjection interface extracted
2013-10-17 18:15:51 +04:00
Svetlana Isakova
95c5e7ee23
rename: isSealed -> isFinal
2013-10-16 20:41:24 +04:00
Alexander Udalov
6e45533065
Deserialize constructors of static nested classes correctly
...
Similar to what is done in TopDownAnalyzer
#KT-4081 Fixed
2013-10-15 21:03:52 +04:00
Andrey Breslav
0765e89b19
Weakly retained memoized functions moved out of util.runtime
2013-10-05 16:59:57 +04:00
Andrey Breslav
239ca9728d
StorageManager API does not use Computable and Function and more
2013-10-05 16:59:57 +04:00
Andrey Breslav
7d1c46ed2c
Getting rid of Computable and Function in lazy values and memoized functions
2013-10-05 16:59:56 +04:00
Andrey Breslav
f3cd83c744
All storage-related code moved to util.runtime
2013-10-03 15:49:18 +04:00
Alexander Udalov
f7db95f63c
Minor refactoring in DeserializedClassDescriptor
2013-09-30 22:43:18 +04:00
Alexander Udalov
a97bb80216
Serialize FQ names of Kotlin classes
...
This helps to avoid a nasty hack with loading inner Kotlin classes in JDR,
which makes it a bit easier to 'lazify' JDR, since now the container of a
Kotlin class is no longer required to be resolved eagerly before resolution of
the class itself
2013-09-30 22:43:18 +04:00
Alexander Udalov
a16db2c773
Regenerate ProtoBuf files
2013-09-30 22:43:17 +04:00
Alexander Udalov
91cbe3e239
Move ClassSerializationUtil to 'compiler-tests' module
...
It's not used in 'serialization'
2013-09-30 22:43:17 +04:00
Andrey Breslav
0d84565570
name and containingDeclaration pulled up
2013-09-26 09:05:00 -07:00
Andrey Breslav
6bed3cdc59
getOriginal() pulled up
2013-09-26 09:04:59 -07:00
Andrey Breslav
2954af1b12
Unused method getPropertyByFieldReference() removed from JetScope and its implementations
2013-09-24 06:54:26 -07:00
Alexander Udalov
6f5cd974a3
Remove unneeded dependencies on 'frontend'
...
Move the two needed in 'descriptor.loader.java' classes to 'descriptors'
2013-09-20 18:02:13 +04:00
Alexander Udalov
5b03178820
Remove dependency of 'serialization' on 'frontend'
2013-09-18 18:45:35 +04:00
Alexander Udalov
5119afae52
Extract 'descriptors' module
2013-09-18 18:45:34 +04:00
Alexander Udalov
3504246983
Move AbstractLazyTypeParameterDescriptor to descriptors/impl/
2013-09-18 17:21:12 +04:00
Alexander Udalov
8e59e789dc
Extract util.runtime module out of util
...
Cleanup module dependencies: a lot of modules depended on 'frontend.java' just
to use something from 'util' module, exported by 'frontend.java', whereas they
really need nothing from 'frontend.java'. Also 'frontend.java' just exported
'util', not using anything from it.
Create a new 'util.runtime' module, which will be available at runtime. Make
'util' export 'util.runtime' and make all modules who needed these utils depend
on 'util' directly instead of 'frontend.java'
2013-09-18 17:21:11 +04:00
Alexander Udalov
e8b10b3e4d
Delete ErrorUtils.isError(TypeConstructor)
2013-09-18 16:46:07 +04:00
Alexander Udalov
b7f1e61be9
Add JetType.isError()
...
Instead of ErrorUtils.isErrorType() which does several instanceof checks anyway
2013-09-18 16:41:48 +04:00
Alexander Udalov
8400d2b8cf
Refactor OverridingUtil.resolveUnknownVisibilities
...
Get rid of dependency on BindingTrace, move the corresponding error reporting
logic to OverrideResolver
2013-09-18 16:40:35 +04:00