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
a86cfdc5de
Add some simple tests on HashPMap
2014-07-02 01:26:23 +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
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
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
Andrey Breslav
777f3d1341
Codegen tests now fail on JVM-specific errors
2014-06-19 22:11:57 +04:00
Evgeny Gerashchenko
aa41ae09ed
Merge remote-tracking branch 'origin/master' into incremental
2014-06-19 11:43:59 +04:00
Andrey Breslav
512e4cb75e
Support transient, strictfp and synchronized flags
...
#KT-4377 Fixed
2014-06-18 10:55:57 +04:00
Andrey Breslav
705a081919
KT-5214 Annotation to provide platform name to avoid signature conflict
...
#KT-5214 Fixed
2014-06-10 18:21:36 +04:00
Mikhael Bogdanov
34e8cae89e
KT-5112 - test file update
2014-06-02 15:21:28 +04:00
Mikhael Bogdanov
c80901bafa
KT-5112 Generic signature lost for a field copied from class object to containing class
...
#KT-5112 Fixed
2014-06-02 13:12:25 +04:00
Mikhael Bogdanov
69ef648005
Write outer class info for closures
2014-05-26 14:48:37 +04:00
Alexander Udalov
af3d56b44e
Fix JVM type mapping of arrays of type variables
...
#KT-4262 Fixed
#KT-5056 Fixed
2014-05-20 19:22:53 +04:00
Alexander Udalov
8f7c0f0b65
Introduce KFunctionImpl, KMemberFunctionImpl, KExtensionFunctionImpl
...
Old 23*3 classes will be dropped, since they have no value.
Simplify JvmFunctionImplTypes significantly because of that
2014-05-19 19:50:59 +04:00
Alexander Udalov
5488a8402f
Move and rename KFunctionImpl classes
...
Move from package "kotlin.reflect" to "kotlin.reflect.jvm.internal". They are
internal detail of the compiler and should not be used directly (especially now
that "kotlin.reflect" is in default import paths).
Also rename "KFunctionImplN" to "KFunctionNImpl", because this name makes more
sense
2014-05-19 19:50:58 +04:00
Alexander Udalov
c7a7f31e82
Introduce module 'reflection', move KFunctionN to it
...
Metadata for KFunction classes is now longer serialized along with built-in
classes. This effectively means that it's no longer possible to find KFunction
classes via dependency on built-ins. There should be a kotlin-runtime library
in the specified classpath for reflection types to be resolvable.
A lot of tests were moved and changed, because tests on callable references
require stdlib in classpath from now on
2014-05-19 19:50:57 +04:00
Denis Zharkov
cb1e762fc4
Optimizations of When expression with int constants:
...
Added test with dense constants (tableswitch should be used)
2014-04-25 18:17:37 +04:00
Denis Zharkov
3bc1c45fde
Refactored tests for switch optimization of When expression
2014-04-25 18:17:36 +04:00
Alexander Udalov
f7b6457139
Replace "jet" package name with "kotlin" in testData
2014-03-02 19:55:26 +04:00
Alexander Udalov
b3a9721571
Store receiver parameter in JVM intrinsics map
...
To differentiate between "String?.plus" extension in builtins and
"Iterable<*>.plus" extension in stdlib (they have the same owner, name and
value parameter count)
2014-03-02 19:55:25 +04:00
Alexander Udalov
0da92e22a2
Move jet.JetObject -> kotlin.jvm.internal.KObject
...
Don't use JetObject as a marker class in KotlinRuntimeLibraryUtil anymore,
since there are other classes for this purpose (KotlinPackage, Unit)
2014-03-02 19:54:58 +04:00
Alexander Udalov
3dcd85bdb4
Add toString() to Any, fix all tests
...
#KT-4517 Fixed
2014-03-02 19:54:49 +04:00
Alexander Udalov
ec30d52978
Delete Hashable, pull up its members to Any
...
Extensions on nullable types remain in Library.kt
#KT-1741 Obsolete
#KT-2805 Obsolete
#KT-1365 Fixed
#KT-4517 In Progress
2014-03-02 19:54:08 +04:00
Alexander Udalov
35c7c4afd8
Fix capturing outer this in some cases in JVM codegen
...
When property initializer of some inner entity (e.g. anonymous object) contains
a reference to some outer entity (say, a property of the outer class), we need
to make sure we called "lookupInContext" on this entity's owner class, so that
"setCaptureThis" was called on the appropriate closure
#KT-4176 Fixed
2014-02-12 19:17:55 +04:00
Evgeny Gerashchenko
284124569d
Fixed super signature generation when JetObject is explicit.
...
#KT-4485 fixed
2014-02-03 17:53:07 +04:00
Evgeny Gerashchenko
abf352cebd
KT-4485 getGenericInterfaces vs getInterfaces for kotlin classes
...
#KT-4485 fixed
2014-01-29 17:57:50 +04:00
Evgeny Gerashchenko
e994b718cb
KT-4351 Cannot resolve reference to self in init of class local to function
...
#KT-4351 fixed
2014-01-14 19:13:16 +04:00
Natalia Ukhorskaya
f2f1a1313d
Add jdk jars to kotlin classpath
...
#KT-4214 Fixed
2013-12-26 13:50:10 +04:00
Natalia Ukhorskaya
4329c42e3f
Make unary minus and unary plus return int for byte and short
2013-12-23 13:46:00 +04:00
Natalia Ukhorskaya
c9a600a405
Fix for varargs as annotation arguments #KT-4326 Fixed
2013-12-18 15:13:53 +04:00
Natalia Ukhorskaya
145c7811a8
Named vararg arguments: don't allow to use array without spread, allow to use one value of vararg type
...
#KT-3802 Fixed
2013-12-18 15:13:52 +04:00
Natalia Ukhorskaya
27e602133d
Small fixes after review: do not set is_pure=true for named constants refactoring
2013-12-05 15:23:41 +04:00
Natalia Ukhorskaya
53a5264aaf
Use type from compile time value for binary expression
2013-12-05 15:21:58 +04:00
Natalia Ukhorskaya
cbcca6c08e
Support IntegerValueTypeConstant in java backend
2013-12-05 15:21:57 +04:00
Natalia Ukhorskaya
d63f6843c8
Merge ConstantExpressionEvaluator and CompileTimeConstantResolver
2013-12-05 15:21:50 +04:00
Mikhael Bogdanov
4f017df237
Fix kt-1800 test
2013-12-02 10:40:54 +04:00
Andrey Breslav
1ff0ffbac6
Map jet.Hashable to java.lang.Object, to avoid NoClassDefFound exceptions
2013-10-25 15:39:01 +04:00
Evgeny Gerashchenko
dc42be8543
Fixed VerifyError when copyToArray() is immediately returned from method.
2013-10-01 19:32:37 +04:00
Evgeny Gerashchenko
2ae1a2c81b
Added copyToArray intrinsic method.
...
#KT-3352 fixed
2013-10-01 15:11:30 +04:00
Evgeny Gerashchenko
d56c59d9d7
Removed toArray() from collections (few tests are still failing).
...
#KT-3352 in progress
2013-10-01 15:11:30 +04:00
Evgeny Gerashchenko
e98b75b462
Do not generate toString and other methods if they are inherited.
2013-09-25 20:59:23 +04:00
Natalia.Ukhorskaya
064f114b25
Allow top-level properties or properties from class object as annotation parameters
2013-08-02 18:59:26 +04:00
Natalia.Ukhorskaya
27801d5351
Add test: primitive values as annotation parameter
2013-08-02 18:59:25 +04:00
Natalia.Ukhorskaya
b3f0a23c1d
Fix android test: cannot change package name
2013-07-29 11:36:47 +04:00
Natalia.Ukhorskaya
c11bd7104c
Write default values for annotation parameters
...
#KT-3197 Fixed
2013-07-25 16:44:03 +04:00