Andrey Breslav
e3b1639edf
KT-5425 Kotlin plugin crashes when project uses RxJava 17.0 or older
...
#KT-5425 Fixed
2014-07-09 16:10:41 +04:00
Svetlana Isakova
06a257025f
Added NotNull annotations
2014-07-08 14:48:15 +04:00
Alexander Udalov
71cd7838d2
Move/inline enum class object related methods in DescriptorUtils
2014-07-07 18:33:31 +04:00
Alexander Udalov
e502d8dcc6
Remove JetScopeAdapter
2014-07-07 18:15:32 +04:00
Alexander Udalov
64512ae87b
Move writable scope implementations to 'frontend'
2014-07-07 18:15:31 +04:00
Alexander Udalov
b9fd52739f
Move around some descriptor implementations
...
- mutable class, mutable package fragment and their dependencies go to module
'frontend'
- ModuleDescriptorImpl and PackageFragmentDescriptorImpl are moved to the
package "impl" in their module
2014-07-07 18:15:31 +04:00
Alexander Udalov
bf45a3590b
Use a specialized scope in EnumClassObjectDescriptor
...
Instead of WritableScopeImpl
2014-07-07 18:15:30 +04:00
Alexander Udalov
6e5339ad3c
Move values/valueOf creation logic to EnumClassObjectDescriptor
2014-07-07 18:15:29 +04:00
Alexander Udalov
db3e5ed678
Use EnumClassObjectDescriptor in TypeHierarchyResolver
2014-07-07 18:15:28 +04:00
Alexander Udalov
de21f76e10
Introduce EnumClassObjectDescriptor
...
Extract the duplicate logic in deserialization and descriptor.loader.java
2014-07-07 18:15:27 +04:00
Alexander Udalov
8efeb3ac6a
Move script descriptor implementation to frontend
2014-07-07 18:15:27 +04:00
Evgeny Gerashchenko
6501066274
Added hacky checks for accessing compiled functions from our module via package part instead of facade.
...
#KT-4590 fixed
2014-07-07 17:41:34 +04:00
Michael Bogdanov
14788213a2
Annotation parameter processing util
2014-07-07 10:51:47 +04:00
Michael Bogdanov
da01a11137
New diagnostic for non-local return annotation
2014-07-07 10:51:46 +04:00
Andrey Breslav
98e87f2f95
Removing unneeded "public override val" from constructors across the project
...
#KT-4295 Fixed
2014-07-05 18:31:55 +04:00
Pavel V. Talanov
b2c3a7d501
Rename: DescriptorDeserializersStorage -> DescriptorLoadersStorage
2014-07-03 20:46:45 +04:00
Pavel V. Talanov
b08cda8dd6
Avoid recomputing ClassData in DeserializedDescriptorResolver
2014-07-03 20:46:44 +04:00
Pavel V. Talanov
e7d6ea6be5
Remove hack in JavaClassDataFinder
2014-07-03 20:46:43 +04:00
Pavel V. Talanov
123523d1dc
Drop ClassDataFinder#getClassNames()
2014-07-03 20:46:42 +04:00
Pavel V. Talanov
0c8956a36e
Refactor: DescriptorFinder -> ClassDataFinder
...
Deserialization subsystem only need to know about the way to obtain class data, it can construct descriptors itself (no need to call DeserializedClassDescriptor constructor from other modules)
2014-07-03 20:46:41 +04:00
Pavel V. Talanov
53337f793b
Move caching of deserialized classes to new component ClassDeserializer
...
Drop AbstractDescriptorFinder
2014-07-03 20:46:40 +04:00
Pavel V. Talanov
6683173f67
Refactor: Extract deserialize class to context
2014-07-03 20:46:39 +04:00
Pavel V. Talanov
348de193b4
Drop DescriptorFinder.EMPTY
2014-07-03 20:46:38 +04:00
Pavel V. Talanov
55ae3cab19
Drop DependencyClassByQualifiedNameResolver and implementation
2014-07-03 20:46:37 +04:00
Pavel V. Talanov
245919d691
Use module to resolve annotation classes in AnnotationDescriptorLoader
2014-07-03 20:46:36 +04:00
Pavel V. Talanov
d961d17cd4
Fix DeserializerForDecompiler: create package fragment provider for missing dependencies
2014-07-03 20:46:35 +04:00
Pavel V. Talanov
6c153a9ce2
Resolve classes in Deserialization locally
...
Temporary hacky solution
2014-07-03 20:46:34 +04:00
Pavel V. Talanov
7ee7047753
Deserializer: use module to search for dependencies in TypeDeserializer
2014-07-03 20:46:33 +04:00
Pavel V. Talanov
a66353dbc4
JavaDescriptorFinder#getClassNames() returns empty list
...
All classes are included in JavaPackageFragmentScopeForJavaPackageFragment anyway
2014-07-03 20:46:32 +04:00
Andrey Breslav
90690e0711
KT-4825 Implement "synchronized" properly via monitorenter/monitorexit
...
#KT-4825 Fixed
2014-07-02 22:05:45 +04:00
Alexander Udalov
c0fc5cfb53
Disallow named arguments for SAM adapters
...
SAM adapters are Java functions, and named arguments are not allowed for Java
functions
#KT-5022 Fixed
2014-07-02 20:35:31 +04:00
Alexander Udalov
36f7cc742f
Introduce NoSuchPropertyException and IllegalAccessException
...
No new tests added because it's difficult to model a situation where a
::-access is allowed but the code throws these exceptions at runtime
2014-07-02 01:58:22 +04:00
Alexander Udalov
a84d528325
Improve performance of $kotlinClass field initializer
...
Don't load annotations reflectively in each class' <clinit>
2014-07-02 01:55:56 +04:00
Alexander Udalov
bc8bce7ca1
Provide "toString" for reflection objects
2014-07-02 01:55:55 +04:00
Alexander Udalov
c5d92cc03e
Provide "equals" and "hashCode" for reflection objects
2014-07-02 01:55:55 +04:00
Alexander Udalov
704de8992e
Support mapping between Java and Kotlin reflection objects
2014-07-02 01:55:55 +04:00
Alexander Udalov
a38a396a43
Remove default import "kotlin.reflect"
...
Basic reflection is usable without any imports (with :: literals)
This reverts commit 9503056dd5 .
2014-07-02 01:55:53 +04:00
Alexander Udalov
d32a02f21a
Modify top-level/extension property hierarchy
...
- rename KTopLevelProperty to KTopLevelVariable
- create KTopLevelExtensionProperty, a subclass of KExtensionProperty
- create KTopLevelProperty, a superclass of KTopLevelVariable and
KTopLevelExtensionProperty. (In the future, it will have a container of type
KPackage.)
2014-07-02 01:55:53 +04:00
Alexander Udalov
f73b8b9ff8
Extract KForeignMemberProperty out of KMemberPropertyImpl
...
KClassImpl is now able to create a property by the name, according to its
origin
2014-07-02 01:55:52 +04:00
Alexander Udalov
9c5596cddb
Expose Java reflection objects out of Kotlin ones
2014-07-02 01:55:52 +04:00
Alexander Udalov
1ad037f621
Fix KClassOrigin for non-Kotlin classes
...
Check against presence of KotlinClass annotation
2014-07-02 01:55:21 +04:00
Alexander Udalov
8b619eceed
Make KMemberProperty's T parameter have a non-null bound
2014-07-02 01:26:25 +04:00
Alexander Udalov
7cbbeb257e
Add NotNull annotations to HashPMap
2014-07-02 01:26:25 +04:00
Alexander Udalov
e60428b540
Improve performance of foreignKClasses, add comments
2014-07-02 01:26:24 +04:00
Alexander Udalov
0fa6b40731
Make intermediate *Impl properties traits, not classes
...
Otherwise multiple inheritance of classes would be needed to make
implementations inherit correctly for mutable properties
2014-07-02 01:26:24 +04:00
Alexander Udalov
ef7fbe55cf
Make KClass instances weak in foreignKClasses
2014-07-02 01:26:24 +04:00
Alexander Udalov
47b08af66c
Inline HashPMap entry's getter methods
2014-07-02 01:26:23 +04:00
Alexander Udalov
b00022ef1c
Add JetBrains license to HashPMap, remove obsolete author tags and javadocs
2014-07-02 01:26:23 +04:00
Alexander Udalov
41aa12d249
Remove unneeded dependency on ListIterator in ConsPStack
2014-07-02 01:26:22 +04:00
Alexander Udalov
862a785c11
Use pcollections' HashPMap instead of ConcurrentHashMap in reflection
2014-07-02 01:26:22 +04:00