Change Log
Version 0.3.0
2017-06-11
- New: Objects and companion objects
- New:
TypeAliasSpec
to create type aliases. - New:
LambdaTypeName
to create lambda types. - New: Collapse property declarations into constructor params.
- New: Extension and invoke functions for creating type names:
Runnable::class.asClassName()
. - New: Basic support for expression bodies.
- New: Basic support for custom accessors.
- New: Remove
Filer
writing and originating elements concept. These stem from javac
annotation processors. - Fix: Generate valid annotation classes.
- Fix: Use
KModifier
for varargs. - Fix: Use
ParameterizedTypeName
for array types. - Fix: Extract Kotlin name from
KClass
instead of Java name. - Fix: Emit valid class literals:
Double::class
instead of Double.class
. - Fix: Emit modifiers in the expected order.
- Fix: Emit the correct syntax for enum classes and overridden members.
Version 0.2.0
2017-05-21
- New: Flip API signatures to be (name, type) instead of (type, name).
- New: Support for nullable types.
- New: Support delegated properties.
- New: Extension functions.
- New: Support top-level properties.
- Fix: Inheritance should use
:
instead of extends
and implements
. - Fix: Make initializerBlock emit
init {}
.
Version 0.1.0
2017-05-16