Alexander Udalov
4cea9ecca4
Minor, add reflection test on inherited Java property
2015-04-02 03:22:12 +03:00
Alexander Udalov
d3abd54b06
Add 'val KClass.declaredProperties', make getProperties a property
2015-03-17 23:39:13 +03:00
Pavel V. Talanov
06916d98c6
default -> companion: replace all mentions of default and default object
2015-03-17 15:47:39 +03:00
Denis Zharkov
e65382e6ec
Support secondary constructors in JVM backend
...
There is a lot of changes about closures calculating and generating.
1. As classes can have more than one constructor each of them should
have closure arguments.
2. Captured variables set is the same for all of them.
3. Within constructors bodies/delegating calls closure parameters
should be accessed through method arguments because fields may be
not initialized yet.
2015-03-11 17:45:27 +03:00
Alexander Udalov
b3cdd818f0
Support member extension properties, implement KClass.getExtensionProperties()
...
#KT-6570 Fixed
2015-03-11 16:42:38 +03:00
Pavel V. Talanov
59f192ef90
Replace 'class object' with 'default object' in renderers and test data
...
Includes changes to decompiled text
Old syntax is used in builtins and project code for now
2015-03-06 19:36:54 +03:00
Pavel V. Talanov
96e54b4872
Test accessing class object from java
2015-02-16 15:38:45 +03:00
Alexander Udalov
5c2d0c6173
Generate not-null assertions on extension receiver parameters
2015-02-03 21:40:39 +03:00
Michael Bogdanov
9e864f3c36
Fix java visibility publicity
...
#KT-6478 Fixed
2014-12-23 16:28:44 +03:00
Michael Bogdanov
2cc9d8e29b
Support platformStatic for properties
...
#KT-5766 Fixed
2014-11-20 10:20:31 +03:00
Alexander Udalov
70d0c2ff92
Generate generic signature to collection method stubs
...
#KT-6213 Fixed
2014-11-07 16:10:12 +03:00
Alexander Udalov
35e956609a
Rewrite mutable collection stub method generation
...
The main problem of the previous approach was that we were only generating
erased method signatures, which was incorrect in case a class also had a member
from another supertype with the same signature as the substituted one from the
collection. Javac issues compilation errors when compiling Java code against
such classes.
Also all the needed method stub signatures were hardcoded in
generateBuiltInMethodStubs() and the case of MutableListIterator was missing
2014-10-27 17:17:31 +03:00
Michael Bogdanov
2a1520228e
Support inheritance from java 8 interfaces
...
#KT-5969 In Progress
2014-10-11 13:53:43 +04:00
Alexander Udalov
e0ee890486
Move properties of enum class object to the enum class
...
Similar to how it's done for usual classes
2014-09-11 17:56:43 +04:00
Michael Bogdanov
08e02f4176
Moving platformStatic annotation to kotlin.platform package
2014-09-10 17:35:59 +04:00
Michael Bogdanov
e26d635633
Initial implementation of platformStatic
2014-09-09 16:28:28 +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
aea230d677
Introduce black box with Java codegen tests
...
In contrast to "black box against Java", it supports cyclic dependencies
between Java and Kotlin sources in one test case
2014-06-26 20:57:40 +04:00
Alexander Udalov
09863445bb
Rename tests: boxWithJava -> boxAgainstJava
2014-06-26 20:57:40 +04:00
Alexander Udalov
de8b2b3668
Fix generic signature for SAM adapters and constructors
...
SAM-related code in codegen was using JavaClassDescriptor directly, which has
an erased signature. Create and use a new abstraction SamType which has a full
generic signature of a type which was used in the SAM construct
2014-05-19 19:50:58 +04:00
Alexander Udalov
d913dfb1aa
Correctly map declaration owner in JVM codegen
...
"context.contextKind()" was incorrect in
ExpressionCodegen.intermediateValueForProperty(), because it represents the
context of the call site, not the context of the property declaration
#KT-4878 Fixed
2014-04-24 16:10:12 +04:00
Alexander Udalov
cdceaec79f
Fix unjustified descriptorToDeclaration in bridge codegen
...
Delegated and synthesized members don't usually have a declaration as well as
fake overrides
2014-04-18 17:18:51 +04:00
Alexander Udalov
7d311cdfa0
Support named arguments for Java constructors annotated with KotlinSignature
2014-03-20 12:49:16 +04:00
Alexander Udalov
f7b6457139
Replace "jet" package name with "kotlin" in testData
2014-03-02 19:55:26 +04:00
Evgeny Gerashchenko
d3570153ef
Fixed mapping generic type with multiple bounds from Java to Kotlin.
...
#KT-3480 fixed
2014-01-23 12:33:58 +04:00
Evgeny Gerashchenko
357fc55358
KT-4456 Generated wrong bytecode when Kotlin class inherited from Java Interface with method which have SAM type argument
...
#KT-4456 fixed
2014-01-22 16:09:03 +04:00
Andrey Breslav
a26c37419e
Synthetic classes created for enum entries
2014-01-15 16:14:58 +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
c9b2cda07c
Add tests for usage of java annotation with default arguments
2013-12-23 13:45:59 +04:00
Natalia Ukhorskaya
359f2ddbda
Prohibit instantiation of annotation classes
...
#KT-3465 Fixed
2013-12-23 13:45:57 +04:00
Natalia Ukhorskaya
155cbbfc02
Add evaluator for java property initializer
2013-12-05 15:23:40 +04:00
Mikhael Bogdanov
7857dc5ba9
KT-3812 Can't work with akka via kotlin - java.lang.AssertionError: Couldn't resolve class *$
...
KT-4036 Couldn't resolve inner class akka.io.Tcp.Command.class
#KT-3812 Fixed
#KT-4036 FIxed
2013-10-31 16:42:54 +04:00
Evgeny Gerashchenko
47b70427e1
Generating remove() for Iterator using same mechanism.
2013-09-25 20:59:23 +04:00
Mikhael Bogdanov
8a4b01d9c6
KT-3702: Inner class constructor cannot be invoked in override function with receiver
...
KT-3532: NoSuchMethodError when constructing Java inner class
KT-3847: Class is not recognized as inner when loaded from binaries
#KT-3702 Fixed
#KT-3532 Fixed
#KT-3847 Fixed
2013-08-06 10:58:27 +04:00
Natalia.Ukhorskaya
acf8c88cfc
Java property as annotation parameter
2013-08-02 18:59:29 +04:00
Evgeny Gerashchenko
5c8f87658a
Made SAM adapters final.
2013-07-12 21:09:22 +04:00
Evgeny Gerashchenko
e017645c97
Reorganized SAM-related test data.
2013-07-02 14:06:09 +04:00
Evgeny Gerashchenko
3e70661a6d
Handling null correctly when wrapping function in SAM wrapper
2013-06-27 20:37:27 +04:00
Evgeny Gerashchenko
d0c74755e8
Added test which should be enabled after fixing bug in front-end.
2013-06-27 17:09:18 +04:00
Evgeny Gerashchenko
939b658704
Supported SAM adapter in infix calls.
2013-06-27 17:09:17 +04:00
Evgeny Gerashchenko
79185b6775
Added tests with SAM adapters in comparison operators.
2013-06-27 17:09:17 +04:00
Evgeny Gerashchenko
9905e2a719
Added tests with SAM adapters in "invoke" convention.
2013-06-27 17:09:16 +04:00
Evgeny Gerashchenko
f35390134f
Supported SAM adapters in "in/!in" operators.
2013-06-27 17:09:16 +04:00
Evgeny Gerashchenko
0059db486f
Supported SAM adapters in augmented assignment operators.
2013-06-27 17:09:16 +04:00
Evgeny Gerashchenko
036960f117
Supported SAM adapters as plus/minus/etc operators.
2013-06-27 17:09:16 +04:00
Evgeny Gerashchenko
b1fb0aafea
Supported SAM adapters as get/set operators.
2013-06-27 17:09:16 +04:00
Evgeny Gerashchenko
f2458f62c2
Prioritized super constructor calls.
2013-06-26 21:04:11 +04:00
Evgeny Gerashchenko
b4ce39aeb1
Test with calling abstract wrapper which is implemented in Kotlin.
2013-06-25 20:17:46 +04:00
Evgeny Gerashchenko
fd7b29ad48
Added tests with SAM adapter overridden in Kotlin class.
2013-06-25 20:17:45 +04:00
Evgeny Gerashchenko
f4c3a89408
Added tests with SAM adapter inherited in Kotlin class.
2013-06-25 20:17:44 +04:00