Dmitry Petrov
|
7dce1f438f
|
Inner classes lowering.
|
2016-10-19 19:13:40 +03:00 |
|
Dmitry Petrov
|
a51efaacc9
|
Introduce IrGetValue as a replacement for IrThisReference / IrGetExtensionReceiver / IrGetVariable.
|
2016-10-18 09:09:59 +03:00 |
|
Dmitry Petrov
|
608d6a37d2
|
Some enum-related fixes
(NB: testEnumClass3 doesn't work yet, effective modality required for enum class)
|
2016-10-18 09:09:57 +03:00 |
|
Dmitry Petrov
|
fc754e533d
|
Enum classes lowering.
|
2016-10-18 09:09:55 +03:00 |
|
Michael Bogdanov
|
f30027b4de
|
Generate ir-accessors for interface properties
|
2016-10-18 09:09:53 +03:00 |
|
Dmitry Petrov
|
8551bcf103
|
Refactor IrWhen.
|
2016-10-18 09:09:38 +03:00 |
|
Dmitry Petrov
|
1c2a676cd6
|
Make coercion to Unit explicit in IR.
|
2016-10-18 09:09:30 +03:00 |
|
Dmitry Petrov
|
4b9c5effd3
|
Minor: irElement rendering
|
2016-10-18 09:09:25 +03:00 |
|
Dmitry Petrov
|
a8a6477ce5
|
IrOperator -> IrStatementOrigin
|
2016-10-18 09:09:21 +03:00 |
|
Dmitry Petrov
|
c699e2d24c
|
Include declaration origin in testData.
|
2016-10-18 09:09:19 +03:00 |
|
Dmitry Petrov
|
201d2414bc
|
Properties declared in primary constructors should have proper accessors in IR.
|
2016-10-18 09:09:15 +03:00 |
|
Dmitry Petrov
|
5c720845a8
|
Drop IrPropertyAccessor (and subclasses).
Drop IrLocalPropertyAccessor (and subclasses).
Introduce IrField.
|
2016-10-18 09:09:15 +03:00 |
|
Dmitry Petrov
|
0c0dac4822
|
Some additional secondary constructor examples.
|
2016-10-18 09:09:07 +03:00 |
|
Dmitry Petrov
|
8fc16345e6
|
Property initializers from primary constructor parameters
are generated as property initializer expressions
and should not be repeated in primary constructor.
|
2016-10-18 09:09:06 +03:00 |
|
Dmitry Petrov
|
4eda19b36a
|
Do not generate constructors for annotation classes.
|
2016-10-18 09:09:04 +03:00 |
|
Dmitry Petrov
|
4e112b3f88
|
testData format update: detailed descriptor rendering.
|
2016-10-18 09:09:04 +03:00 |
|
Dmitry Petrov
|
ceeccfa1b7
|
Properties without accessors are generated as
IrGetBackingField / IrSetBackingField expressions.
|
2016-10-18 09:09:01 +03:00 |
|
Dmitry Petrov
|
539d7ccf6f
|
Support configuration directives FULL_JDK, WITH_RUNTIME, WITH_REFLECT in Psi2Ir tests.
|
2016-10-18 09:08:59 +03:00 |
|
Dmitry Petrov
|
28b3ea27f3
|
Generate explicit call to 'Any()' if no superclass found.
Generate call super-constructor calls as IrDelegatedConstructorCall.
|
2016-10-18 09:08:57 +03:00 |
|
Dmitry Petrov
|
f2e778d2d0
|
Some more tests.
|
2016-10-18 09:08:51 +03:00 |
|
Dmitry Petrov
|
42988383e0
|
Local delegated properties.
|
2016-10-18 09:08:50 +03:00 |
|
Dmitry Petrov
|
e42116bb6a
|
Delegated implementations for properties and extension properties.
|
2016-10-18 09:08:50 +03:00 |
|
Dmitry Petrov
|
d27f22ae0e
|
Delegated implementations for functions and extension functions.
|
2016-10-18 09:08:49 +03:00 |
|
Dmitry Petrov
|
2438876173
|
Implementing interface by delegation: creating delegates in class.
|
2016-10-18 09:08:49 +03:00 |
|
Dmitry Petrov
|
1b5dd50359
|
Represent class instance initialization "as from resolve".
|
2016-10-18 09:08:48 +03:00 |
|
Dmitry Petrov
|
c3c758c7cc
|
Do not generate underlying classes for enum entries without member declarations.
|
2016-10-18 09:08:47 +03:00 |
|
Dmitry Petrov
|
865d2c43c7
|
Default arguments stored in function declarations.
|
2016-10-18 09:08:46 +03:00 |
|
Dmitry Petrov
|
2d2100b1b5
|
IrSyntheticBody (for 'values', 'valueOf').
|
2016-10-18 09:08:46 +03:00 |
|
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
|
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
|
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
|
ba85e714e3
|
Generate nested initializers for class.
|
2016-10-18 09:08:36 +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
|
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
|
0b647ac358
|
Basic class members generation.
Split testData into 'classes' and 'expressions'.
|
2016-10-18 09:08:32 +03:00 |
|