Alexander Udalov
|
6e2ef9b1d2
|
Add platform/impl soft keywords, add isPlatform/isImpl to MemberDescriptor
|
2016-11-25 20:50:17 +03:00 |
|
Dmitry Petrov
|
7dce1f438f
|
Inner classes lowering.
|
2016-10-19 19:13:40 +03:00 |
|
Dmitry Petrov
|
b5d81d8e31
|
Preparations to push to master branch.
Introduce tests-ir-jvm module (for IR-based JVM BE tests).
|
2016-10-18 09:15:19 +03:00 |
|
Dmitry Petrov
|
a93f929615
|
Minor: IrElementVisitorVoid#visitGetVariable -> visitGetValue
|
2016-10-18 09:10:19 +03:00 |
|
Dmitry Petrov
|
fb5298237a
|
Shared variables lowering.
|
2016-10-18 09:10:16 +03:00 |
|
Dmitry Petrov
|
5ee2f87c4a
|
Closure conversion: simple tests work.
|
2016-10-18 09:10:12 +03:00 |
|
Michael Bogdanov
|
0b45655b7b
|
Support exhaustive when
|
2016-10-18 09:10:02 +03:00 |
|
Michael Bogdanov
|
a0d9d24c1f
|
Introduced IrElseBranch
|
2016-10-18 09:10:01 +03:00 |
|
Dmitry Petrov
|
a51efaacc9
|
Introduce IrGetValue as a replacement for IrThisReference / IrGetExtensionReceiver / IrGetVariable.
|
2016-10-18 09:09:59 +03:00 |
|
Michael Bogdanov
|
567b174e15
|
Funther default impl support
|
2016-10-18 09:09:57 +03:00 |
|
Dmitry Petrov
|
fc754e533d
|
Enum classes lowering.
|
2016-10-18 09:09:55 +03:00 |
|
Dmitry Petrov
|
7950235df3
|
Lowering for constructors & initializers.
|
2016-10-18 09:09:52 +03:00 |
|
Dmitry Petrov
|
45c999788a
|
Deep copy for IR elements.
NB: we can transform descriptors during copying.
|
2016-10-18 09:09:44 +03:00 |
|
Dmitry Petrov
|
d66d582f25
|
Update to origin/master.
IrReturn should return 'Unit' for "return without value".
|
2016-10-18 09:09:40 +03:00 |
|
Dmitry Petrov
|
8551bcf103
|
Refactor IrWhen.
|
2016-10-18 09:09:38 +03:00 |
|
Michael Bogdanov
|
fe51c35298
|
Fix for 'getNthResult' in IfThenElse expression impl
|
2016-10-18 09:09:32 +03:00 |
|
Dmitry Petrov
|
291d535de7
|
Fix IR generation for string templates containing single entry.
|
2016-10-18 09:09:30 +03:00 |
|
Dmitry Petrov
|
1c2a676cd6
|
Make coercion to Unit explicit in IR.
|
2016-10-18 09:09:30 +03:00 |
|
Dmitry Petrov
|
16334771ad
|
Minor: comment for IrMemberAccessExpression::getTypeArgument
|
2016-10-18 09:09:29 +03:00 |
|
Dmitry Petrov
|
7ae6c55ddb
|
IrMemberAccessExpression::getTypeArgument
|
2016-10-18 09:09:28 +03:00 |
|
Dmitry Petrov
|
89de2a2ebe
|
Drop IrGeneralCall, pull up corresponding members to IrMemberAccessExpression.
|
2016-10-18 09:09:28 +03:00 |
|
Dmitry Petrov
|
b19bcc0587
|
IrElementTransformerVoid
|
2016-10-18 09:09:27 +03:00 |
|
Dmitry Petrov
|
e0129ef33b
|
IrDeclaration.transform(transformer, data) returns IrStatement.
Declaration containers assume that transformers maintain declaration structure.
|
2016-10-18 09:09:26 +03:00 |
|
Dmitry Petrov
|
2b5cb0f722
|
Make statement containers mutable.
|
2016-10-18 09:09:26 +03:00 |
|
Dmitry Petrov
|
4c88ad408f
|
Make declaration containers mutable.
|
2016-10-18 09:09:25 +03:00 |
|
Dmitry Petrov
|
4b9c5effd3
|
Minor: irElement rendering
|
2016-10-18 09:09:25 +03:00 |
|
Dmitry Petrov
|
90119880c5
|
IrCatch element.
|
2016-10-18 09:09:24 +03:00 |
|
Dmitry Petrov
|
001b95473a
|
Drop 'parent' and 'slot'.
|
2016-10-18 09:09:21 +03:00 |
|
Dmitry Petrov
|
a8a6477ce5
|
IrOperator -> IrStatementOrigin
|
2016-10-18 09:09:21 +03:00 |
|
Dmitry Petrov
|
5386d27284
|
File class lowering
|
2016-10-18 09:09:20 +03:00 |
|
Dmitry Petrov
|
a25e781ee9
|
Minor: IrFieldAccessExpression, visitor methods.
|
2016-10-18 09:09:19 +03:00 |
|
Dmitry Petrov
|
c699e2d24c
|
Include declaration origin in testData.
|
2016-10-18 09:09:19 +03:00 |
|
Dmitry Petrov
|
0cdf831bf0
|
IrDeclarationContainer as a super-interface for IrFile and IrClass.
Builder for IrDeclarationContainer (initial implementation; TODO more flexible builders).
|
2016-10-18 09:09:16 +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
|
aee2a58385
|
Drop assertDetached, unneeded ceremony.
|
2016-10-18 09:09:14 +03:00 |
|
Dmitry Petrov
|
00a74699e2
|
SourceLocationManager -> SourceManager
|
2016-10-18 09:09:13 +03:00 |
|
Dmitry Petrov
|
1e00561b6f
|
IrModule -> IrModuleFragment
|
2016-10-18 09:09:13 +03:00 |
|
Dmitry Petrov
|
838b639692
|
IrComposite - block introducing immediate declarations to the surrounding scope.
E.g., destructuring declaration is represented as IrComposite.
|
2016-10-18 09:09:12 +03:00 |
|
Dmitry Petrov
|
da4079bfe7
|
Move implementation classes to 'impl' packages.
|
2016-10-18 09:09:11 +03:00 |
|
Dmitry Petrov
|
d6a3246586
|
Use throwNoSuchSlot consistently.
|
2016-10-18 09:09:10 +03:00 |
|
Dmitry Petrov
|
40a60e430f
|
- Compact representation for empty blocks.
- Fix some issues in IrBlockImpl.
|
2016-10-18 09:09:10 +03:00 |
|
Dmitry Petrov
|
09c52696a5
|
Unique numbers for "special" slots.
|
2016-10-18 09:09:09 +03:00 |
|
Dmitry Petrov
|
4e270ef487
|
Store file-level annotations in IrFile (should be on some descriptor, really).
|
2016-10-18 09:09:09 +03:00 |
|
Dmitry Petrov
|
4e112b3f88
|
testData format update: detailed descriptor rendering.
|
2016-10-18 09:09:04 +03:00 |
|
Dmitry Petrov
|
993c3fe51e
|
- Render IrModule.
- Dump IR for box tests to .txt.
|
2016-10-18 09:09:03 +03:00 |
|
Dmitry Petrov
|
ec2cfd2389
|
AbstractClosureAnnotator for IR.
|
2016-10-18 09:09:02 +03:00 |
|
Dmitry Petrov
|
ceeccfa1b7
|
Properties without accessors are generated as
IrGetBackingField / IrSetBackingField expressions.
|
2016-10-18 09:09:01 +03:00 |
|
Dmitry Petrov
|
a1ad828ea8
|
IrElementVisitorVoid
|
2016-10-18 09:09:01 +03:00 |
|
Dmitry Petrov
|
d623c70778
|
Handle break/continue in loop header (condition for 'while', range for 'for').
|
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 |
|