Object references in object field initializers are 'GET_VAR this@Object'
This commit is contained in:
+56
@@ -0,0 +1,56 @@
|
||||
FILE fqName:<root> fileName:/objectReferenceInFieldInitializer.kt
|
||||
CLASS OBJECT name:A modality:FINAL visibility:public flags: superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:A flags:
|
||||
CONSTRUCTOR visibility:private <> () returnType:A flags:primary
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='A'
|
||||
PROPERTY name:a visibility:private modality:FINAL flags:const,val
|
||||
FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.String visibility:private flags:final
|
||||
EXPRESSION_BODY
|
||||
CONST String type=kotlin.String value=$
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-a> visibility:private modality:FINAL <> ($this:A) returnType:kotlin.String flags:
|
||||
correspondingProperty: PROPERTY name:a visibility:private modality:FINAL flags:const,val
|
||||
$this: VALUE_PARAMETER name:<this> type:A flags:
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='<get-a>(): String'
|
||||
GET_FIELD 'a: String' type=kotlin.String origin=null
|
||||
receiver: GET_VAR 'this@A: A' type=A origin=null
|
||||
PROPERTY name:b visibility:private modality:FINAL flags:const,val
|
||||
FIELD PROPERTY_BACKING_FIELD name:b type:kotlin.String visibility:private flags:final
|
||||
EXPRESSION_BODY
|
||||
STRING_CONCATENATION type=kotlin.String
|
||||
CONST String type=kotlin.String value=1234
|
||||
CALL '<get-a>(): String' type=kotlin.String origin=GET_PROPERTY
|
||||
$this: GET_VAR 'this@A: A' type=A origin=null
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-b> visibility:private modality:FINAL <> ($this:A) returnType:kotlin.String flags:
|
||||
correspondingProperty: PROPERTY name:b visibility:private modality:FINAL flags:const,val
|
||||
$this: VALUE_PARAMETER name:<this> type:A flags:
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='<get-b>(): String'
|
||||
GET_FIELD 'b: String' type=kotlin.String origin=null
|
||||
receiver: GET_VAR 'this@A: A' type=A origin=null
|
||||
PROPERTY name:c visibility:private modality:FINAL flags:const,val
|
||||
FIELD PROPERTY_BACKING_FIELD name:c type:kotlin.Int visibility:private flags:final
|
||||
EXPRESSION_BODY
|
||||
CONST Int type=kotlin.Int value=10000
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-c> visibility:private modality:FINAL <> ($this:A) returnType:kotlin.Int flags:
|
||||
correspondingProperty: PROPERTY name:c visibility:private modality:FINAL flags:const,val
|
||||
$this: VALUE_PARAMETER name:<this> type:A flags:
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='<get-c>(): Int'
|
||||
GET_FIELD 'c: Int' type=kotlin.Int origin=null
|
||||
receiver: GET_VAR 'this@A: A' type=A origin=null
|
||||
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:
|
||||
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:
|
||||
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:
|
||||
Reference in New Issue
Block a user