IR: don't use descriptors in rendering (work in progress)

There's some descriptor-based code remaining. Need some more work on IR.
This commit is contained in:
Dmitry Petrov
2019-03-14 14:17:26 +03:00
parent bd3d5a9dbb
commit e49eae528c
319 changed files with 18613 additions and 18703 deletions
+90 -91
View File
@@ -1,114 +1,113 @@
FILE fqName:<root> fileName:/sealedClasses.kt
CLASS CLASS name:Expr modality:SEALED visibility:public flags: superTypes:[kotlin.Any]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:Expr flags:
CONSTRUCTOR visibility:private <> () returnType:Expr flags:primary
CLASS CLASS name:Expr modality:SEALED visibility:public flags:[] superTypes:[kotlin.Any]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Expr flags:[]
CONSTRUCTOR visibility:private <> () returnType:<root>.Expr flags:[primary]
BLOCK_BODY
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
INSTANCE_INITIALIZER_CALL classDescriptor='Expr'
CLASS CLASS name:Const modality:FINAL visibility:public flags: superTypes:[Expr]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:Expr.Const flags:
CONSTRUCTOR visibility:public <> (number:kotlin.Double) returnType:Expr.Const flags:primary
VALUE_PARAMETER name:number index:0 type:kotlin.Double flags:
DELEGATING_CONSTRUCTOR_CALL 'CONSTRUCTOR IR_EXTERNAL_DECLARATION_STUB visibility:public <> () returnType:kotlin.Any flags:[primary]'
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Expr modality:SEALED visibility:public flags:[] superTypes:[kotlin.Any]'
CLASS CLASS name:Const modality:FINAL visibility:public flags:[] superTypes:[<root>.Expr]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Expr.Const flags:[]
CONSTRUCTOR visibility:public <> (number:kotlin.Double) returnType:<root>.Expr.Const flags:[primary]
VALUE_PARAMETER name:number index:0 type:kotlin.Double flags:[]
BLOCK_BODY
DELEGATING_CONSTRUCTOR_CALL 'constructor Expr()'
INSTANCE_INITIALIZER_CALL classDescriptor='Const'
PROPERTY name:number visibility:public modality:FINAL flags:val
FIELD PROPERTY_BACKING_FIELD name:number type:kotlin.Double visibility:public flags:final
DELEGATING_CONSTRUCTOR_CALL 'CONSTRUCTOR visibility:private <> () returnType:<root>.Expr flags:[primary]'
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Const modality:FINAL visibility:public flags:[] superTypes:[<root>.Expr]'
PROPERTY name:number visibility:public modality:FINAL flags:[val]
FIELD PROPERTY_BACKING_FIELD name:number type:kotlin.Double visibility:public flags:[final]
EXPRESSION_BODY
GET_VAR 'value-parameter number: Double' type=kotlin.Double origin=INITIALIZE_PROPERTY_FROM_PARAMETER
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-number> visibility:public modality:FINAL <> ($this:Expr.Const) returnType:kotlin.Double flags:
correspondingProperty: PROPERTY name:number visibility:public modality:FINAL flags:val
$this: VALUE_PARAMETER name:<this> type:Expr.Const flags:
GET_VAR 'VALUE_PARAMETER name:number index:0 type:kotlin.Double flags:[]' type=kotlin.Double origin=INITIALIZE_PROPERTY_FROM_PARAMETER
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-number> visibility:public modality:FINAL <> ($this:<root>.Expr.Const) returnType:kotlin.Double flags:[]
correspondingProperty: PROPERTY name:number visibility:public modality:FINAL flags:[val]
$this: VALUE_PARAMETER name:<this> type:<root>.Expr.Const flags:[]
BLOCK_BODY
RETURN type=kotlin.Nothing from='<get-number>(): Double'
GET_FIELD 'number: Double' type=kotlin.Double origin=null
receiver: GET_VAR 'this@Const: Const' type=Expr.Const origin=null
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags:
RETURN type=kotlin.Nothing from='FUN DEFAULT_PROPERTY_ACCESSOR name:<get-number> visibility:public modality:FINAL <> ($this:<root>.Expr.Const) returnType:kotlin.Double flags:[]'
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:number type:kotlin.Double visibility:public flags:[final]' type=kotlin.Double origin=null
receiver: GET_VAR 'VALUE_PARAMETER name:<this> type:<root>.Expr.Const flags:[]' type=<root>.Expr.Const origin=null
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags:[]
overridden:
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags:
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
VALUE_PARAMETER name:other index:0 type:kotlin.Any? flags:
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags:
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags:[]
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:[]
VALUE_PARAMETER name:other index:0 type:kotlin.Any? flags:[]
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags:[]
overridden:
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags:
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags:
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags:[]
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:[]
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags:[]
overridden:
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags:
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
CLASS CLASS name:Sum modality:FINAL visibility:public flags: superTypes:[Expr]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:Expr.Sum flags:
CONSTRUCTOR visibility:public <> (e1:Expr, e2:Expr) returnType:Expr.Sum flags:primary
VALUE_PARAMETER name:e1 index:0 type:Expr flags:
VALUE_PARAMETER name:e2 index:1 type:Expr flags:
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags:[]
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:[]
CLASS CLASS name:Sum modality:FINAL visibility:public flags:[] superTypes:[<root>.Expr]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Expr.Sum flags:[]
CONSTRUCTOR visibility:public <> (e1:<root>.Expr, e2:<root>.Expr) returnType:<root>.Expr.Sum flags:[primary]
VALUE_PARAMETER name:e1 index:0 type:<root>.Expr flags:[]
VALUE_PARAMETER name:e2 index:1 type:<root>.Expr flags:[]
BLOCK_BODY
DELEGATING_CONSTRUCTOR_CALL 'constructor Expr()'
INSTANCE_INITIALIZER_CALL classDescriptor='Sum'
PROPERTY name:e1 visibility:public modality:FINAL flags:val
FIELD PROPERTY_BACKING_FIELD name:e1 type:Expr visibility:public flags:final
DELEGATING_CONSTRUCTOR_CALL 'CONSTRUCTOR visibility:private <> () returnType:<root>.Expr flags:[primary]'
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Sum modality:FINAL visibility:public flags:[] superTypes:[<root>.Expr]'
PROPERTY name:e1 visibility:public modality:FINAL flags:[val]
FIELD PROPERTY_BACKING_FIELD name:e1 type:<root>.Expr visibility:public flags:[final]
EXPRESSION_BODY
GET_VAR 'value-parameter e1: Expr' type=Expr origin=INITIALIZE_PROPERTY_FROM_PARAMETER
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-e1> visibility:public modality:FINAL <> ($this:Expr.Sum) returnType:Expr flags:
correspondingProperty: PROPERTY name:e1 visibility:public modality:FINAL flags:val
$this: VALUE_PARAMETER name:<this> type:Expr.Sum flags:
GET_VAR 'VALUE_PARAMETER name:e1 index:0 type:<root>.Expr flags:[]' type=<root>.Expr origin=INITIALIZE_PROPERTY_FROM_PARAMETER
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-e1> visibility:public modality:FINAL <> ($this:<root>.Expr.Sum) returnType:<root>.Expr flags:[]
correspondingProperty: PROPERTY name:e1 visibility:public modality:FINAL flags:[val]
$this: VALUE_PARAMETER name:<this> type:<root>.Expr.Sum flags:[]
BLOCK_BODY
RETURN type=kotlin.Nothing from='<get-e1>(): Expr'
GET_FIELD 'e1: Expr' type=Expr origin=null
receiver: GET_VAR 'this@Sum: Sum' type=Expr.Sum origin=null
PROPERTY name:e2 visibility:public modality:FINAL flags:val
FIELD PROPERTY_BACKING_FIELD name:e2 type:Expr visibility:public flags:final
RETURN type=kotlin.Nothing from='FUN DEFAULT_PROPERTY_ACCESSOR name:<get-e1> visibility:public modality:FINAL <> ($this:<root>.Expr.Sum) returnType:<root>.Expr flags:[]'
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:e1 type:<root>.Expr visibility:public flags:[final]' type=<root>.Expr origin=null
receiver: GET_VAR 'VALUE_PARAMETER name:<this> type:<root>.Expr.Sum flags:[]' type=<root>.Expr.Sum origin=null
PROPERTY name:e2 visibility:public modality:FINAL flags:[val]
FIELD PROPERTY_BACKING_FIELD name:e2 type:<root>.Expr visibility:public flags:[final]
EXPRESSION_BODY
GET_VAR 'value-parameter e2: Expr' type=Expr origin=INITIALIZE_PROPERTY_FROM_PARAMETER
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-e2> visibility:public modality:FINAL <> ($this:Expr.Sum) returnType:Expr flags:
correspondingProperty: PROPERTY name:e2 visibility:public modality:FINAL flags:val
$this: VALUE_PARAMETER name:<this> type:Expr.Sum flags:
GET_VAR 'VALUE_PARAMETER name:e2 index:1 type:<root>.Expr flags:[]' type=<root>.Expr origin=INITIALIZE_PROPERTY_FROM_PARAMETER
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-e2> visibility:public modality:FINAL <> ($this:<root>.Expr.Sum) returnType:<root>.Expr flags:[]
correspondingProperty: PROPERTY name:e2 visibility:public modality:FINAL flags:[val]
$this: VALUE_PARAMETER name:<this> type:<root>.Expr.Sum flags:[]
BLOCK_BODY
RETURN type=kotlin.Nothing from='<get-e2>(): Expr'
GET_FIELD 'e2: Expr' type=Expr origin=null
receiver: GET_VAR 'this@Sum: Sum' type=Expr.Sum origin=null
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags:
RETURN type=kotlin.Nothing from='FUN DEFAULT_PROPERTY_ACCESSOR name:<get-e2> visibility:public modality:FINAL <> ($this:<root>.Expr.Sum) returnType:<root>.Expr flags:[]'
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:e2 type:<root>.Expr visibility:public flags:[final]' type=<root>.Expr origin=null
receiver: GET_VAR 'VALUE_PARAMETER name:<this> type:<root>.Expr.Sum flags:[]' type=<root>.Expr.Sum origin=null
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags:[]
overridden:
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags:
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
VALUE_PARAMETER name:other index:0 type:kotlin.Any? flags:
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags:
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags:[]
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:[]
VALUE_PARAMETER name:other index:0 type:kotlin.Any? flags:[]
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags:[]
overridden:
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags:
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags:
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags:[]
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:[]
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags:[]
overridden:
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags:
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
CLASS OBJECT name:NotANumber modality:FINAL visibility:public flags: superTypes:[Expr]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:Expr.NotANumber flags:
CONSTRUCTOR visibility:private <> () returnType:Expr.NotANumber flags:primary
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags:[]
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:[]
CLASS OBJECT name:NotANumber modality:FINAL visibility:public flags:[] superTypes:[<root>.Expr]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Expr.NotANumber flags:[]
CONSTRUCTOR visibility:private <> () returnType:<root>.Expr.NotANumber flags:[primary]
BLOCK_BODY
DELEGATING_CONSTRUCTOR_CALL 'constructor Expr()'
INSTANCE_INITIALIZER_CALL classDescriptor='NotANumber'
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags:
DELEGATING_CONSTRUCTOR_CALL 'CONSTRUCTOR visibility:private <> () returnType:<root>.Expr flags:[primary]'
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:NotANumber modality:FINAL visibility:public flags:[] superTypes:[<root>.Expr]'
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags:[]
overridden:
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags:
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
VALUE_PARAMETER name:other index:0 type:kotlin.Any? flags:
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags:
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags:[]
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:[]
VALUE_PARAMETER name:other index:0 type:kotlin.Any? flags:[]
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags:[]
overridden:
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags:
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags:
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags:[]
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:[]
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags:[]
overridden:
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags:
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags:
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags:[]
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:[]
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags:[]
overridden:
FUN IR_EXTERNAL_DECLARATION_STUB name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags:
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
VALUE_PARAMETER name:other index:0 type:kotlin.Any? flags:
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags:
FUN IR_EXTERNAL_DECLARATION_STUB name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean flags:[]
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:[]
VALUE_PARAMETER name:other index:0 type:kotlin.Any? flags:[]
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags:[]
overridden:
FUN IR_EXTERNAL_DECLARATION_STUB name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags:
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags:
FUN IR_EXTERNAL_DECLARATION_STUB name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int flags:[]
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:[]
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags:[]
overridden:
FUN IR_EXTERNAL_DECLARATION_STUB name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags:
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
FUN IR_EXTERNAL_DECLARATION_STUB name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String flags:[]
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:[]