Michael Bogdanov
8092717da4
Support non local return generation, support non local return inlining
2014-07-07 10:51:46 +04:00
Mikhael Bogdanov
02c6bdeaa3
Inline test data structure changed
2014-07-07 10:51:46 +04:00
Mikhael Bogdanov
b37c0d3fff
Some renaming
2014-07-07 10:51:46 +04:00
Mikhael Bogdanov
30ddbb0682
Parameter processing rewrote with parameter builder
...
Split capture parameter descriptor and it representation
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
Andrey Breslav
caec40b3a8
Fix test data
2014-07-05 18:31:55 +04:00
Andrey Breslav
06d060d5de
KT-4295 Wrong diagnostic about "weaken access privilege" when override properties in constructor
...
#KT-4295 Fixed
2014-07-05 17:47:00 +04:00
Alexey Kudravtsev
5489ae08da
Make Kotlin accessible for UpSource.
...
Extracted some initialization of JetCoreEnvironment.
2014-07-04 17:12:29 +04:00
Pavel V. Talanov
0f5de48157
Drop JetFilesProvider service
2014-07-03 20:46:51 +04:00
Pavel V. Talanov
0a43c38bae
Change AnalyzerFacade#createSetup to accept a list of synthetic files and a scope for physical source files
...
Make DeclarationProviderFactory a project service
2014-07-03 20:46:50 +04:00
Pavel V. Talanov
9b5f349e61
Drop JetFilesProvider#allPackageFiles() and sampleToAllFilesInModule()
2014-07-03 20:46:47 +04:00
Pavel V. Talanov
b2c3a7d501
Rename: DescriptorDeserializersStorage -> DescriptorLoadersStorage
2014-07-03 20:46:45 +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
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
7ee7047753
Deserializer: use module to search for dependencies in TypeDeserializer
2014-07-03 20:46:33 +04:00
Andrey Breslav
6422bafb7a
More tests for synchronized() {}
2014-07-03 18:39:57 +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
Nikolay Krasko
465dd45eae
Merge remote-tracking branch 'origin/master' into idea14
2014-07-02 09:21:40 +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
c575ad9fb0
Fix test, remove duplicate annotation
...
It started to fail only now because KClassImpl constructor is now loading
class' annotations (previously annotations weren't loaded by Java reflection)
2014-07-02 01:55:54 +04:00
Alexander Udalov
f459005fe7
Fix GeneratedClassLoader so that it loads Package instances
2014-07-02 01:55:54 +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
1ad037f621
Fix KClassOrigin for non-Kotlin classes
...
Check against presence of KotlinClass annotation
2014-07-02 01:55:21 +04:00
Alexander Udalov
a86cfdc5de
Add some simple tests on HashPMap
2014-07-02 01:26:23 +04:00
Alexander Udalov
58bc611e3a
Copy pcollections's HashPMap to kotlin/reflect/jvm/internal
...
It will be used for caching KClass instances for foreign (Java) classes
2014-07-02 01:26:21 +04:00
Alexander Udalov
89d6f25fb6
Fix initialization order of KClass field and class object fields
2014-07-02 01:26:21 +04:00
Alexander Udalov
c17f515d06
Construct reflection objects via static factory methods
...
JVM back-end now generates invocations of these methods instead of
KClass/K*Property/... constructors for two reasons:
1. It occupies less space in the bytecode
2. We can (to some degree) alter the implementation of the factory methods
without changing the ABI compatibility version
2014-07-02 01:26:20 +04:00
Alexander Udalov
e7f19c531a
Support 'accessible' for reflected properties on JVM
...
Calls Java reflection's isAccessible/setAccessible
2014-07-02 01:26:20 +04:00
Alexander Udalov
1275c84f92
Fail with IllegalAccessException on :: reference to private property
...
Instead of mysterious NoSuchMethodException
2014-07-02 01:26:20 +04:00
Alexander Udalov
a8e1de48b8
Support :: references to Java instance fields in codegen
...
#KT-1183 In Progress
2014-07-02 01:26:19 +04:00
Alexander Udalov
5ab83aad8a
Support references to extension properties in JVM codegen
...
#KT-1183 In Progress
2014-07-02 01:26:19 +04:00
Alexander Udalov
461cce103b
Support references to top level and member properties in JVM codegen
...
#KT-1183 In Progress
2014-07-02 01:26:19 +04:00
Alexander Udalov
59777e7df6
Generate "$kotlinClass"/"$kotlinPackage" reflection fields to every class
...
Some seemingly irrelevant tests were changed because now there's <clinit> in
almost every class and class initialization begins with executing it
2014-07-02 01:26:18 +04:00
Alexander Udalov
aa4d6a4ea7
Support :: references to properties in frontend
...
#KT-1183 In Progress
2014-07-02 01:26:18 +04:00
Alexander Udalov
52dadfc264
Add test for obsolete issue
...
#KT-3311 Obsolete
2014-07-02 00:38:50 +04:00
Alexander Udalov
d4c792d0ee
Fix errorlevel returned by kotlinc-*.bat scripts
...
Propagate errorlevel returned as an exit code from the compiler to the outside
world.
This may not work on Windows XP or earlier, but is required for Windows 7+
2014-07-02 00:38:49 +04:00
Nikolay Krasko
b92df2882c
Merge remote-tracking branch 'origin/master' into idea14
2014-07-01 20:06:09 +04:00
Natalia Ukhorskaya
47f4bbedda
Fix file separators in Codegen Tests on Windows
2014-07-01 12:17:01 +04:00
Natalia Ukhorskaya
261ba0e364
Fix Android tests after renaming codegen tests with Java
2014-06-30 13:03:05 +04:00
Nikolay Krasko
e7a1cba1eb
Merge remote-tracking branch 'origin/master' into idea14
...
Conflicts:
update_dependencies.xml
2014-06-27 14:44:05 +04:00