Dmitry Petrov
|
9eeb492fe3
|
Underlying classes for enum entries.
|
2016-10-18 09:08:44 +03:00 |
|
Dmitry Petrov
|
bd76e39a8c
|
Enum entries generation (no underlying classes yet)
|
2016-10-18 09:08:44 +03:00 |
|
Dmitry Petrov
|
917e7bffbd
|
Property accessors are now children of IrProperty.
|
2016-10-18 09:08:43 +03:00 |
|
Dmitry Petrov
|
ed68b3ecd0
|
Use builder API in OperatorExpressionGenerator.
|
2016-10-18 09:08:43 +03:00 |
|
Dmitry Petrov
|
600fdf7eee
|
Use builder API in increment/decrement desugaring.
|
2016-10-18 09:08:43 +03:00 |
|
Dmitry Petrov
|
1022725fd1
|
Data class members generation.
Builder-style API for desugaring expressions.
|
2016-10-18 09:08:42 +03:00 |
|
Dmitry Petrov
|
dc169e98d5
|
Local classes.
|
2016-10-18 09:08:42 +03:00 |
|
Dmitry Petrov
|
41d772d636
|
Object literal expressions.
|
2016-10-18 09:08:41 +03:00 |
|
Dmitry Petrov
|
86a52e6426
|
Character literals and string templates.
|
2016-10-18 09:08:41 +03:00 |
|
Dmitry Petrov
|
f83237498f
|
Minor: DeclarationsGenerator can take care of secondary constructor delegating to 'super'.
|
2016-10-18 09:08:40 +03:00 |
|
Dmitry Petrov
|
a140d75016
|
Minor: IrSyntheticPropertyAccessorDescriptor.Kind.
|
2016-10-18 09:08:40 +03:00 |
|
Dmitry Petrov
|
7adf173a66
|
Add tests for companion objects and various kinds of classes
(no representation for enum entries yet).
|
2016-10-18 09:08:39 +03:00 |
|
Dmitry Petrov
|
a6bee7a22b
|
Generate delegating constructor calls as IrDelegatingConstructorCall expressions
(they have different platform-level representation in JVM and JS).
|
2016-10-18 09:08:39 +03:00 |
|
Dmitry Petrov
|
6fbac2ed40
|
Minor: ir.backend.jvm -> backend.jvm
|
2016-10-18 09:08:38 +03:00 |
|
Dmitry Petrov
|
fe46a02885
|
Support all primitive literal types.
Apply simple unary operators to constants.
|
2016-10-18 09:08:38 +03:00 |
|
Dmitry Petrov
|
b3f605c4c4
|
Generate synthetic getter & setter descriptors for static properties in Java classes
(recognized as properties defined in classes without dispatchReceiver and extensionReceiver).
Fix 'when' generation for else-only case.
|
2016-10-18 09:08:37 +03:00 |
|
Dmitry Petrov
|
05b9eda809
|
Generate "raw" IR in Psi2IrTranslator.
|
2016-10-18 09:08:37 +03:00 |
|
Dmitry Petrov
|
ba85e714e3
|
Generate nested initializers for class.
|
2016-10-18 09:08:36 +03:00 |
|
Dmitry Petrov
|
415265276a
|
Minor: CallGenerator is StatementGeneratorExtension.
|
2016-10-18 09:08:36 +03:00 |
|
Dmitry Petrov
|
8d86c0a2dd
|
Representation for nested initializers in a class & nested initializers call.
|
2016-10-18 09:08:35 +03:00 |
|
Dmitry Petrov
|
8528c23194
|
Constructors represented "as in Java".
TODO: extract nested initializers somehow.
|
2016-10-18 09:08:35 +03:00 |
|
Dmitry Petrov
|
57c1b3e0e2
|
'!!' operator
|
2016-10-18 09:08:34 +03:00 |
|
Dmitry Petrov
|
92a7ecfac7
|
Render return target for IrReturn in tests.
Add tests for non-local returns from lambdas.
|
2016-10-18 09:08:34 +03:00 |
|
Dmitry Petrov
|
e459105128
|
Primary constructor generation.
|
2016-10-18 09:08:34 +03:00 |
|
Dmitry Petrov
|
225d792939
|
Secondary constructors in classes.
|
2016-10-18 09:08:33 +03:00 |
|
Dmitry Petrov
|
ac80195597
|
Anonymous function expressions ('fun(...) { ... }') and local functions (no closures yet).
|
2016-10-18 09:08:33 +03:00 |
|
Dmitry Petrov
|
83c3bdd788
|
Lambda expressions (no closures yet).
|
2016-10-18 09:08:32 +03:00 |
|
Dmitry Petrov
|
0b647ac358
|
Basic class members generation.
Split testData into 'classes' and 'expressions'.
|
2016-10-18 09:08:32 +03:00 |
|
Dmitry Petrov
|
703d3405ed
|
Generate class members (functions, properties, nested classes).
|
2016-10-18 09:08:31 +03:00 |
|
Dmitry Petrov
|
19e95d232a
|
Classes & type aliases, initial import.
|
2016-10-18 09:08:31 +03:00 |
|
Dmitry Petrov
|
b17e3b0299
|
Varargs.
|
2016-10-18 09:08:30 +03:00 |
|
Dmitry Petrov
|
d45811a5da
|
Empty loops.
|
2016-10-18 09:08:30 +03:00 |
|
Dmitry Petrov
|
179a06672b
|
IrExpression.type is no longer nullable.
Change expression typing contract.
|
2016-10-18 09:08:29 +03:00 |
|
Dmitry Petrov
|
be86739d3a
|
IrBlockBody
Change block typing contract.
|
2016-10-18 09:08:29 +03:00 |
|
Dmitry Petrov
|
8bef05703e
|
Inline rematerializable safe call receivers.
|
2016-10-18 09:08:28 +03:00 |
|
Dmitry Petrov
|
1ff12b4cb6
|
Loops and break/continue can have labels (as strings) (for KJS & other transpilers).
|
2016-10-18 09:08:28 +03:00 |
|
Dmitry Petrov
|
dc4bb3015c
|
Inline safe call chains.
|
2016-10-18 09:08:27 +03:00 |
|
Dmitry Petrov
|
3f256fab67
|
Variable as function calls.
|
2016-10-18 09:08:27 +03:00 |
|
Dmitry Petrov
|
b3407de1e6
|
Array access expression.
|
2016-10-18 09:08:26 +03:00 |
|
Dmitry Petrov
|
54e6bbd007
|
Don't introduce additional variables for simple array assignment.
|
2016-10-18 09:08:26 +03:00 |
|
Dmitry Petrov
|
abb106c885
|
Fix operator markup for '!==' and '!in'.
|
2016-10-18 09:08:25 +03:00 |
|
Dmitry Petrov
|
6830a7db43
|
PregeneratedCall -> CallBuilder
|
2016-10-18 09:08:25 +03:00 |
|
Dmitry Petrov
|
17758d8c00
|
'try'
|
2016-10-18 09:08:24 +03:00 |
|
Dmitry Petrov
|
ebd8f1266d
|
IrOperatorExpression -> IrPrimitiveCall
All "primitives" have their descriptors now.
|
2016-10-18 09:08:24 +03:00 |
|
Dmitry Petrov
|
c79b9c12d6
|
'throw'
|
2016-10-18 09:08:24 +03:00 |
|
Dmitry Petrov
|
4709aaafaa
|
'for'
|
2016-10-18 09:08:23 +03:00 |
|
Dmitry Petrov
|
03a666690b
|
'break' & 'continue'
|
2016-10-18 09:08:23 +03:00 |
|
Dmitry Petrov
|
87c7b4834b
|
'while' & 'do-while' loops
|
2016-10-18 09:08:22 +03:00 |
|
Dmitry Petrov
|
8bba49cba6
|
Block expressions & types.
|
2016-10-18 09:08:22 +03:00 |
|
Dmitry Petrov
|
594a553a04
|
Safe calls.
|
2016-10-18 09:08:21 +03:00 |
|