Add possibility to interpret and fold IrStringConcatenation expression

This commit is contained in:
Ivan Kylchik
2023-02-09 12:29:27 +01:00
committed by Space Team
parent 7cf9dda8dc
commit 63b340651d
77 changed files with 305 additions and 184 deletions
@@ -167,16 +167,13 @@ FILE fqName:<root> fileName:/dataClasses.kt
BLOCK_BODY
RETURN type=kotlin.Nothing from='public open fun toString (): kotlin.String declared in <root>.Test1'
STRING_CONCATENATION type=kotlin.String
CONST String type=kotlin.String value="Test1("
CONST String type=kotlin.String value="x="
CONST String type=kotlin.String value="Test1(x="
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.Int visibility:private [final]' type=kotlin.Int origin=null
receiver: GET_VAR '<this>: <root>.Test1 declared in <root>.Test1.toString' type=<root>.Test1 origin=null
CONST String type=kotlin.String value=", "
CONST String type=kotlin.String value="y="
CONST String type=kotlin.String value=", y="
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:y type:kotlin.String visibility:private [final]' type=kotlin.String origin=null
receiver: GET_VAR '<this>: <root>.Test1 declared in <root>.Test1.toString' type=<root>.Test1 origin=null
CONST String type=kotlin.String value=", "
CONST String type=kotlin.String value="z="
CONST String type=kotlin.String value=", z="
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:z type:kotlin.Any visibility:private [final]' type=kotlin.Any origin=null
receiver: GET_VAR '<this>: <root>.Test1 declared in <root>.Test1.toString' type=<root>.Test1 origin=null
CONST String type=kotlin.String value=")"
@@ -273,8 +270,7 @@ FILE fqName:<root> fileName:/dataClasses.kt
BLOCK_BODY
RETURN type=kotlin.Nothing from='public open fun toString (): kotlin.String declared in <root>.Test2'
STRING_CONCATENATION type=kotlin.String
CONST String type=kotlin.String value="Test2("
CONST String type=kotlin.String value="x="
CONST String type=kotlin.String value="Test2(x="
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.Any? visibility:private [final]' type=kotlin.Any? origin=null
receiver: GET_VAR '<this>: <root>.Test2 declared in <root>.Test2.toString' type=<root>.Test2 origin=null
CONST String type=kotlin.String value=")"
@@ -505,20 +501,16 @@ FILE fqName:<root> fileName:/dataClasses.kt
BLOCK_BODY
RETURN type=kotlin.Nothing from='public open fun toString (): kotlin.String declared in <root>.Test3'
STRING_CONCATENATION type=kotlin.String
CONST String type=kotlin.String value="Test3("
CONST String type=kotlin.String value="d="
CONST String type=kotlin.String value="Test3(d="
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:d type:kotlin.Double visibility:private [final]' type=kotlin.Double origin=null
receiver: GET_VAR '<this>: <root>.Test3 declared in <root>.Test3.toString' type=<root>.Test3 origin=null
CONST String type=kotlin.String value=", "
CONST String type=kotlin.String value="dn="
CONST String type=kotlin.String value=", dn="
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:dn type:kotlin.Double? visibility:private [final]' type=kotlin.Double? origin=null
receiver: GET_VAR '<this>: <root>.Test3 declared in <root>.Test3.toString' type=<root>.Test3 origin=null
CONST String type=kotlin.String value=", "
CONST String type=kotlin.String value="f="
CONST String type=kotlin.String value=", f="
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:f type:kotlin.Float visibility:private [final]' type=kotlin.Float origin=null
receiver: GET_VAR '<this>: <root>.Test3 declared in <root>.Test3.toString' type=<root>.Test3 origin=null
CONST String type=kotlin.String value=", "
CONST String type=kotlin.String value="df="
CONST String type=kotlin.String value=", df="
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:df type:kotlin.Float? visibility:private [final]' type=kotlin.Float? origin=null
receiver: GET_VAR '<this>: <root>.Test3 declared in <root>.Test3.toString' type=<root>.Test3 origin=null
CONST String type=kotlin.String value=")"