K2 Scripting: fix CFG processing related testdata in LL

This commit is contained in:
Ilya Chernikov
2023-11-30 10:41:36 +01:00
committed by Space Team
parent 90a7f7beac
commit db804b7f93
26 changed files with 292 additions and 274 deletions
@@ -43,7 +43,7 @@ Tower Data Context:
public get(): R|kotlin/Int|
public final class Before_OtherClass : R|kotlin/Any|
args#
init
public final fun after_Fun(): R|kotlin/Unit|
public final val after_Val: R|kotlin/Int|
public get(): R|kotlin/Int|
@@ -51,11 +51,15 @@ Tower Data Context:
public final class After_OtherClass : R|kotlin/Any|
Type: kotlin.script.templates.standard.ScriptTemplateWithArgs
Label: <script>
Element 9
Scope: FirLocalScope
Element 10
Scope: FirLocalScope
FILE: [ResolvedTo(IMPORTS)] topLevel.kts
context(<script>@R|kotlin/script/templates/standard/ScriptTemplateWithArgs|)
SCRIPT: [ResolvedTo(TYPES)] <script-topLevel.kts>
[ResolvedTo(RAW_FIR)] lval args: R|kotlin/Array<kotlin/String>|
SCRIPT: [ResolvedTo(BODY_RESOLVE)] <script-topLevel.kts>
[ResolvedTo(BODY_RESOLVE)] lval args: R|kotlin/Array<kotlin/String>|
public final [ResolvedTo(BODY_RESOLVE)] fun before_Fun(): R|kotlin/Unit| {
}
@@ -70,7 +74,10 @@ FILE: [ResolvedTo(IMPORTS)] topLevel.kts
}
args#
[ResolvedTo(BODY_RESOLVE)] init {
R|<local>/args|
}
public final [ResolvedTo(BODY_RESOLVE)] fun after_Fun(): R|kotlin/Unit| {
}
@@ -32,6 +32,7 @@ FILE: [ResolvedTo(BODY_RESOLVE)] secondLevelFunction.kts
R|/x| = R|<local>/foo|(R|<local>/prop|)
}
}
}
public final [ResolvedTo(BODY_RESOLVE)] val rv: R|kotlin/Int| = R|/x|
@@ -32,6 +32,7 @@ FILE: [ResolvedTo(BODY_RESOLVE)] secondLevelFunction2.kts
R|/x| = R|<local>/foo|(R|<local>/prop|)
}
}
}
public final [ResolvedTo(BODY_RESOLVE)] val $$result: R|kotlin/Int| = R|/x|
@@ -13,9 +13,9 @@ FILE: [ResolvedTo(IMPORTS)] compoundAssignOnVarScript.kts
SCRIPT: [ResolvedTo(BODY_RESOLVE)] <script-compoundAssignOnVarScript.kts>
[ResolvedTo(BODY_RESOLVE)] lval args: R|kotlin/Array<kotlin/String>|
public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] var i: R|kotlin/Int| = Int(1)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/Int|
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] set([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] value: R|kotlin/Int|): R|kotlin/Unit|
public final [ResolvedTo(BODY_RESOLVE)] var i: R|kotlin/Int| = Int(1)
public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int|
public [ResolvedTo(BODY_RESOLVE)] set([ResolvedTo(BODY_RESOLVE)] value: R|kotlin/Int|): R|kotlin/Unit|
[ResolvedTo(BODY_RESOLVE)] init {
R|/i| = R|/i|.R|kotlin/Int.plus|(Int(1))
@@ -32,9 +32,9 @@ FILE: [ResolvedTo(IMPORTS)] setOperatorScript.kts
}
public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] var a: R|test/B| = R|test/B.B|(Int(1))
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|test/B|
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] set([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] value: R|test/B|): R|kotlin/Unit|
public final [ResolvedTo(BODY_RESOLVE)] var a: R|test/B| = R|test/B.B|(Int(1))
public [ResolvedTo(BODY_RESOLVE)] get(): R|test/B|
public [ResolvedTo(BODY_RESOLVE)] set([ResolvedTo(BODY_RESOLVE)] value: R|test/B|): R|kotlin/Unit|
public final [ResolvedTo(BODY_RESOLVE)] val $$result: R|test/B| = {
[ResolvedTo(BODY_RESOLVE)] lval <array>: R|test/B| = R|test/a|
@@ -48,11 +48,11 @@ FILE: [ResolvedTo(IMPORTS)] assignment.kts
)
}
public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val builder: R|Builder| = R|/build|(<L> = [ResolvedTo(RAW_FIR)] [MatchingParameterFunctionTypeKey=@ExtensionFunctionType kotlin/Function1<Builder, kotlin/Unit>] build@fun R|Builder|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
public final [ResolvedTo(BODY_RESOLVE)] val builder: R|Builder| = R|/build|(<L> = [ResolvedTo(BODY_RESOLVE)] [MatchingParameterFunctionTypeKey=@ExtensionFunctionType kotlin/Function1<Builder, kotlin/Unit>] build@fun R|Builder|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
this@R|special/anonymous|.R|/Builder.version| = String(321)
}
)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|Builder|
public [ResolvedTo(BODY_RESOLVE)] get(): R|Builder|
[ResolvedTo(BODY_RESOLVE)] init {
R|/builder|.R|/Builder.execute|()
@@ -48,11 +48,11 @@ FILE: [ResolvedTo(IMPORTS)] callInsideStatement.kts
)
}
public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val builder: R|Builder| = R|/build|(<L> = [ResolvedTo(RAW_FIR)] [MatchingParameterFunctionTypeKey=@ExtensionFunctionType kotlin/Function1<Builder, kotlin/Unit>] build@fun R|Builder|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
public final [ResolvedTo(BODY_RESOLVE)] val builder: R|Builder| = R|/build|(<L> = [ResolvedTo(BODY_RESOLVE)] [MatchingParameterFunctionTypeKey=@ExtensionFunctionType kotlin/Function1<Builder, kotlin/Unit>] build@fun R|Builder|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
this@R|special/anonymous|.R|/Builder.version| = String(321)
}
)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|Builder|
public [ResolvedTo(BODY_RESOLVE)] get(): R|Builder|
[ResolvedTo(BODY_RESOLVE)] init {
R|/builder|.R|/Builder.execute|()
@@ -55,11 +55,11 @@ FILE: [ResolvedTo(IMPORTS)] assignmentStatement.kts
)
}
public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val builder: R|Builder| = R|/build|(<L> = [ResolvedTo(RAW_FIR)] [MatchingParameterFunctionTypeKey=@ExtensionFunctionType kotlin/Function1<Builder, kotlin/Unit>] build@fun R|Builder|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
public final [ResolvedTo(BODY_RESOLVE)] val builder: R|Builder| = R|/build|(<L> = [ResolvedTo(BODY_RESOLVE)] [MatchingParameterFunctionTypeKey=@ExtensionFunctionType kotlin/Function1<Builder, kotlin/Unit>] build@fun R|Builder|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
this@R|special/anonymous|.R|/Builder.version| = String(321)
}
)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|Builder|
public [ResolvedTo(BODY_RESOLVE)] get(): R|Builder|
[ResolvedTo(BODY_RESOLVE)] init {
R|/builder|.R|/Builder.execute|()
@@ -71,11 +71,11 @@ FILE: [ResolvedTo(IMPORTS)] scriptInitializer.kts
)
}
public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val builder: R|Builder| = R|/build|(<L> = [ResolvedTo(RAW_FIR)] [MatchingParameterFunctionTypeKey=@ExtensionFunctionType kotlin/Function1<Builder, kotlin/Unit>] build@fun R|Builder|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
public final [ResolvedTo(BODY_RESOLVE)] val builder: R|Builder| = R|/build|(<L> = [ResolvedTo(BODY_RESOLVE)] [MatchingParameterFunctionTypeKey=@ExtensionFunctionType kotlin/Function1<Builder, kotlin/Unit>] build@fun R|Builder|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
this@R|special/anonymous|.R|/Builder.version| = String(321)
}
)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|Builder|
public [ResolvedTo(BODY_RESOLVE)] get(): R|Builder|
[ResolvedTo(BODY_RESOLVE)] init {
R|/builder|.R|/Builder.execute|()
@@ -71,11 +71,11 @@ FILE: [ResolvedTo(IMPORTS)] statement.kts
)
}
public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val builder: R|Builder| = R|/build|(<L> = [ResolvedTo(RAW_FIR)] [MatchingParameterFunctionTypeKey=@ExtensionFunctionType kotlin/Function1<Builder, kotlin/Unit>] build@fun R|Builder|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
public final [ResolvedTo(BODY_RESOLVE)] val builder: R|Builder| = R|/build|(<L> = [ResolvedTo(BODY_RESOLVE)] [MatchingParameterFunctionTypeKey=@ExtensionFunctionType kotlin/Function1<Builder, kotlin/Unit>] build@fun R|Builder|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
this@R|special/anonymous|.R|/Builder.version| = String(321)
}
)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|Builder|
public [ResolvedTo(BODY_RESOLVE)] get(): R|Builder|
[ResolvedTo(BODY_RESOLVE)] init {
R|/builder|.R|/Builder.execute|()
@@ -293,8 +293,8 @@ FILE: [ResolvedTo(IMPORTS)] resultWithPropagatedType.kts
}
public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val constant: R|kotlin/Int| = Int(0)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/Int|
public final const [ResolvedTo(BODY_RESOLVE)] val constant: R|kotlin/Int| = Int(0)
public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int|
public final [ResolvedTo(ANNOTATION_ARGUMENTS)] fun explicitType(): R|@R|foo/Anno|(position = <strcat>(String(return type: ), R|foo/constant|)) kotlin/collections/List<@R|foo/Anno|(position = <strcat>(String(nested return type: ), R|foo/constant|)) kotlin/collections/Collection<@R|foo/Anno|(position = <strcat>(String(nested nested return type: ), R|foo/constant|)) kotlin/String>>| {
^explicitType IntegerLiteral(0)
@@ -293,8 +293,8 @@ FILE: [ResolvedTo(IMPORTS)] scriptWithResultWithPropagatedType.kts
}
public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val constant: R|kotlin/Int| = Int(0)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/Int|
public final const [ResolvedTo(BODY_RESOLVE)] val constant: R|kotlin/Int| = Int(0)
public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int|
public final [ResolvedTo(ANNOTATION_ARGUMENTS)] fun explicitType(): R|@R|foo/Anno|(position = <strcat>(String(return type: ), R|foo/constant|)) kotlin/collections/List<@R|foo/Anno|(position = <strcat>(String(nested return type: ), R|foo/constant|)) kotlin/collections/Collection<@R|foo/Anno|(position = <strcat>(String(nested nested return type: ), R|foo/constant|)) kotlin/String>>| {
^explicitType IntegerLiteral(0)
@@ -256,8 +256,8 @@ FILE: [ResolvedTo(IMPORTS)] scriptWithTypeAnnotationsOnDeclaration.kts
}
public? final? const [ResolvedTo(RAW_FIR)] val constant: <implicit> = LAZY_EXPRESSION
public? [ResolvedTo(RAW_FIR)] get(): <implicit>
public final const [ResolvedTo(BODY_RESOLVE)] val constant: R|kotlin/Int| = Int(0)
public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int|
public? final? [ResolvedTo(RAW_FIR)] fun explicitType(): @Anno[Unresolved](LAZY_EXPRESSION) List<@Anno[Unresolved](LAZY_EXPRESSION) Collection<@Anno[Unresolved](LAZY_EXPRESSION) String>> { LAZY_BLOCK }
+2 -2
View File
@@ -728,11 +728,11 @@ FILE: [ResolvedTo(IMPORTS)] script.kts
)
}
public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val builder: R|Builder| = R|/build|(<L> = [ResolvedTo(RAW_FIR)] [MatchingParameterFunctionTypeKey=@ExtensionFunctionType kotlin/Function1<Builder, kotlin/Unit>] build@fun R|Builder|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
public final [ResolvedTo(BODY_RESOLVE)] val builder: R|Builder| = R|/build|(<L> = [ResolvedTo(BODY_RESOLVE)] [MatchingParameterFunctionTypeKey=@ExtensionFunctionType kotlin/Function1<Builder, kotlin/Unit>] build@fun R|Builder|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
this@R|special/anonymous|.R|/Builder.version| = String(321)
}
)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|Builder|
public [ResolvedTo(BODY_RESOLVE)] get(): R|Builder|
[ResolvedTo(BODY_RESOLVE)] init {
@R|Anno|[Types](s = Q|En|.R|/En.Entry|) R|/builder|.R|/Builder.execute|()
@@ -482,14 +482,14 @@ FILE: [ResolvedTo(IMPORTS)] script2.kts
public final [ResolvedTo(CONTRACTS)] fun consume([ResolvedTo(CONTRACTS)] x: R|kotlin/Int|): R|kotlin/Unit| {
}
public final [ResolvedTo(CONTRACTS)] val x: R|kotlin/Int?| = IntegerLiteral(1)
public [ResolvedTo(CONTRACTS)] get(): R|kotlin/Int?|
public final [ResolvedTo(BODY_RESOLVE)] val x: R|kotlin/Int?| = Int(1)
public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int?|
public? final? [ResolvedTo(RAW_FIR)] val y: <implicit> = LAZY_EXPRESSION
public? [ResolvedTo(RAW_FIR)] get(): <implicit>
public final [ResolvedTo(BODY_RESOLVE)] val y: R|kotlin/Int| = R|/x|!!
public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int|
public? final? [ResolvedTo(RAW_FIR)] val z: <implicit> = LAZY_EXPRESSION
public? [ResolvedTo(RAW_FIR)] get(): <implicit>
public final [ResolvedTo(BODY_RESOLVE)] val z: R|kotlin/Int| = R|/x|.R|kotlin/Int.plus<Inapplicable(UNSAFE_CALL): kotlin/Int.plus>#|(Int(1))
public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int|
public? final? [ResolvedTo(RAW_FIR)] fun foo(): <implicit> { LAZY_BLOCK }
@@ -505,8 +505,8 @@ FILE: [ResolvedTo(IMPORTS)] script2.kts
R|/consume|(R|/x|.R|kotlin/Int.plus<Inapplicable(UNSAFE_CALL): kotlin/Int.plus>#|(Int(1)))
}
public? final? [ResolvedTo(RAW_FIR)] val zz: <implicit> = LAZY_EXPRESSION
public? [ResolvedTo(RAW_FIR)] get(): <implicit>
public final [ResolvedTo(BODY_RESOLVE)] val zz: R|kotlin/Int| = R|/x|.R|kotlin/Int.plus<Inapplicable(UNSAFE_CALL): kotlin/Int.plus>#|(Int(1))
public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int|
public? final? [ResolvedTo(RAW_FIR)] class A : R|kotlin/Any| {
public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=A] constructor(): R|A| {
@@ -440,13 +440,13 @@ FILE: [ResolvedTo(IMPORTS)] script3.kts
public final [ResolvedTo(CONTRACTS)] fun build([ResolvedTo(CONTRACTS)] action: R|() -> kotlin/Unit|): R|kotlin/Unit| {
}
public? final? [ResolvedTo(RAW_FIR)] var unusedVariable: <implicit> = LAZY_EXPRESSION
public? [ResolvedTo(RAW_FIR)] get(): <implicit>
public? [ResolvedTo(RAW_FIR)] set([ResolvedTo(RAW_FIR)] value: <implicit>): R|kotlin/Unit|
public final [ResolvedTo(BODY_RESOLVE)] var unusedVariable: R|kotlin/Int| = Int(4)
public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int|
public [ResolvedTo(BODY_RESOLVE)] set([ResolvedTo(BODY_RESOLVE)] value: R|kotlin/Int|): R|kotlin/Unit|
public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] var variable: R|kotlin/String| = String(str)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/String|
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] set([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] value: R|kotlin/String|): R|kotlin/Unit|
public final [ResolvedTo(BODY_RESOLVE)] var variable: R|kotlin/String| = String(str)
public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/String|
public [ResolvedTo(BODY_RESOLVE)] set([ResolvedTo(BODY_RESOLVE)] value: R|kotlin/String|): R|kotlin/Unit|
[ResolvedTo(BODY_RESOLVE)] init {
R|/build|(<L> = [ResolvedTo(BODY_RESOLVE)] [MatchingParameterFunctionTypeKey=kotlin/Function0<kotlin/Unit>] build@fun <anonymous>(): R|kotlin/Unit| <inline=NoInline> {
@@ -315,11 +315,11 @@ FILE: [ResolvedTo(IMPORTS)] script4.kts
^build R|/Builder.Builder|().R|kotlin/apply|<R|Builder|>(R|<local>/action|)
}
public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val builder: R|Builder| = R|/build|(<L> = [ResolvedTo(RAW_FIR)] [MatchingParameterFunctionTypeKey=@ExtensionFunctionType kotlin/Function1<Builder, kotlin/Unit>] build@fun R|Builder|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
public final [ResolvedTo(BODY_RESOLVE)] val builder: R|Builder| = R|/build|(<L> = [ResolvedTo(BODY_RESOLVE)] [MatchingParameterFunctionTypeKey=@ExtensionFunctionType kotlin/Function1<Builder, kotlin/Unit>] build@fun R|Builder|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
this@R|special/anonymous|.R|/Builder.version| = String(321)
}
)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|Builder|
public [ResolvedTo(BODY_RESOLVE)] get(): R|Builder|
public final [ResolvedTo(BODY_RESOLVE)] val $$result: <ERROR TYPE REF: Unresolved name: execute> = @R|kotlin/Suppress|[Types](names = vararg(String(abc))) @R|kotlin/Deprecated|[Types](message = String(it is deprecated)) R|/builder|.<Unresolved name: execute>#()
public [ResolvedTo(BODY_RESOLVE)] get(): <ERROR TYPE REF: Unresolved name: execute>
@@ -41,11 +41,11 @@ FILE: [ResolvedTo(IMPORTS)] statement.kts
)
}
public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val builder: R|Builder| = R|/build|(<L> = [ResolvedTo(RAW_FIR)] [MatchingParameterFunctionTypeKey=@ExtensionFunctionType kotlin/Function1<Builder, kotlin/Unit>] build@fun R|Builder|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
public final [ResolvedTo(BODY_RESOLVE)] val builder: R|Builder| = R|/build|(<L> = [ResolvedTo(BODY_RESOLVE)] [MatchingParameterFunctionTypeKey=@ExtensionFunctionType kotlin/Function1<Builder, kotlin/Unit>] build@fun R|Builder|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
this@R|special/anonymous|.R|/Builder.version| = String(321)
}
)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|Builder|
public [ResolvedTo(BODY_RESOLVE)] get(): R|Builder|
[ResolvedTo(BODY_RESOLVE)] init {
R|/builder|.R|/Builder.execute|()
@@ -23,11 +23,11 @@ FILE: [ResolvedTo(IMPORTS)] statement2.kts
^build R|/Builder.Builder|().R|kotlin/apply|<R|Builder|>(R|<local>/action|)
}
public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val builder: R|Builder| = R|/build|(<L> = [ResolvedTo(RAW_FIR)] [MatchingParameterFunctionTypeKey=@ExtensionFunctionType kotlin/Function1<Builder, kotlin/Unit>] build@fun R|Builder|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
public final [ResolvedTo(BODY_RESOLVE)] val builder: R|Builder| = R|/build|(<L> = [ResolvedTo(BODY_RESOLVE)] [MatchingParameterFunctionTypeKey=@ExtensionFunctionType kotlin/Function1<Builder, kotlin/Unit>] build@fun R|Builder|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
this@R|special/anonymous|.R|/Builder.version| = String(321)
}
)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|Builder|
public [ResolvedTo(BODY_RESOLVE)] get(): R|Builder|
public final [ResolvedTo(BODY_RESOLVE)] val $$result: R|kotlin/Unit| = R|/builder|.R|/Builder.execute|()
public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Unit|
@@ -158,11 +158,11 @@ FILE: [ResolvedTo(IMPORTS)] statementTransformation.kts
SCRIPT: [ResolvedTo(BODY_RESOLVE)] <script-statementTransformation.kts>
[ResolvedTo(BODY_RESOLVE)] lval args: R|kotlin/Array<kotlin/String>|
public final [ResolvedTo(CONTRACTS)] val myProp: R|() -> kotlin/Unit| = [ResolvedTo(RAW_FIR)] fun <implicit>.<anonymous>(): <implicit> <inline=Unknown> {
public final [ResolvedTo(BODY_RESOLVE)] val myProp: R|() -> kotlin/Unit| = [ResolvedTo(BODY_RESOLVE)] fun <anonymous>(): R|kotlin/Unit| <inline=Unknown> {
^ Unit
}
public [ResolvedTo(CONTRACTS)] get(): R|() -> kotlin/Unit|
public [ResolvedTo(BODY_RESOLVE)] get(): R|() -> kotlin/Unit|
[ResolvedTo(BODY_RESOLVE)] init {
R|/myProp|.R|SubstitutionOverride<kotlin/Function0.invoke: R|kotlin/Unit|><Inapplicable(INAPPLICABLE_ARGUMENTS_MAPPING_ERROR): kotlin/Function0.invoke>#|(<L> = [ResolvedTo(BODY_RESOLVE)] myProp@fun <anonymous>(): R|kotlin/Int| <inline=Unknown> {
@@ -205,8 +205,8 @@ FILE: [ResolvedTo(IMPORTS)] scriptStatementLevel.kts
}
public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val constant: R|kotlin/String| = String(s)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/String|
public final const [ResolvedTo(BODY_RESOLVE)] val constant: R|kotlin/String| = String(s)
public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/String|
public final data [ResolvedTo(ANNOTATION_ARGUMENTS)] class Pair : R|kotlin/Any| {
public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=Pair] constructor([ResolvedTo(ANNOTATION_ARGUMENTS)] [CorrespondingProperty=util/Pair.a] a: R|@R|util/Anno|(str = <strcat>(String(a type ), R|util/constant|)) kotlin/collections/List<@R|util/Anno|(str = <strcat>(String(a nested type ), R|util/constant|)) kotlin/collections/Collection<@R|util/Anno|(str = <strcat>(String(a nested nested type ), R|util/constant|)) kotlin/String>>?|, [ResolvedTo(ANNOTATION_ARGUMENTS)] [CorrespondingProperty=util/Pair.b] b: R|@R|util/Anno|(str = <strcat>(String(b type ), R|util/constant|)) kotlin/Array<@R|util/Anno|(str = <strcat>(String(b nested type ), R|util/constant|)) kotlin/collections/List<@R|util/Anno|(str = <strcat>(String(b nested nested type ), R|util/constant|)) kotlin/Int>>?|): R|util/Pair| {
@@ -227,8 +227,8 @@ FILE: [ResolvedTo(IMPORTS)] scriptStatementLevel.kts
}
public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val prop: R|kotlin/String| = String(str)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/String|
public final const [ResolvedTo(BODY_RESOLVE)] val prop: R|kotlin/String| = String(str)
public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/String|
[ResolvedTo(BODY_RESOLVE)] init {
when () {
@@ -205,8 +205,8 @@ FILE: [ResolvedTo(IMPORTS)] scriptStatementLevel.kts
}
public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val constant: R|kotlin/String| = String(s)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/String|
public final const [ResolvedTo(BODY_RESOLVE)] val constant: R|kotlin/String| = String(s)
public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/String|
public final data [ResolvedTo(ANNOTATION_ARGUMENTS)] class Pair : R|kotlin/Any| {
public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=Pair] constructor([ResolvedTo(ANNOTATION_ARGUMENTS)] [CorrespondingProperty=util/Pair.a] a: R|@R|util/Anno|(str = <strcat>(String(a type ), R|util/constant|)) kotlin/collections/List<@R|util/Anno|(str = <strcat>(String(a nested type ), R|util/constant|)) kotlin/collections/Collection<@R|util/Anno|(str = <strcat>(String(a nested nested type ), R|util/constant|)) kotlin/String>>?|, [ResolvedTo(ANNOTATION_ARGUMENTS)] [CorrespondingProperty=util/Pair.b] b: R|@R|util/Anno|(str = <strcat>(String(b type ), R|util/constant|)) kotlin/Array<@R|util/Anno|(str = <strcat>(String(b nested type ), R|util/constant|)) kotlin/collections/List<@R|util/Anno|(str = <strcat>(String(b nested nested type ), R|util/constant|)) kotlin/Int>>?|): R|util/Pair| {
@@ -227,8 +227,8 @@ FILE: [ResolvedTo(IMPORTS)] scriptStatementLevel.kts
}
public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val prop: R|kotlin/String| = String(str)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/String|
public final const [ResolvedTo(BODY_RESOLVE)] val prop: R|kotlin/String| = String(str)
public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/String|
[ResolvedTo(BODY_RESOLVE)] init {
when () {
@@ -520,8 +520,8 @@ FILE: [ResolvedTo(IMPORTS)] scriptStatementLevel.kts
}
public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val constant: R|kotlin/String| = String(s)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/String|
public final const [ResolvedTo(BODY_RESOLVE)] val constant: R|kotlin/String| = String(s)
public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/String|
public final data [ResolvedTo(ANNOTATION_ARGUMENTS)] class Pair : R|kotlin/Any| {
public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=Pair] constructor([ResolvedTo(ANNOTATION_ARGUMENTS)] [CorrespondingProperty=util/Pair.a] a: R|@R|util/Anno|(str = <strcat>(String(a type ), R|util/constant|)) kotlin/collections/List<@R|util/Anno|(str = <strcat>(String(a nested type ), R|util/constant|)) kotlin/collections/Collection<@R|util/Anno|(str = <strcat>(String(a nested nested type ), R|util/constant|)) kotlin/String>>?|, [ResolvedTo(ANNOTATION_ARGUMENTS)] [CorrespondingProperty=util/Pair.b] b: R|@R|util/Anno|(str = <strcat>(String(b type ), R|util/constant|)) kotlin/Array<@R|util/Anno|(str = <strcat>(String(b nested type ), R|util/constant|)) kotlin/collections/List<@R|util/Anno|(str = <strcat>(String(b nested nested type ), R|util/constant|)) kotlin/Int>>?|): R|util/Pair| {
@@ -542,8 +542,8 @@ FILE: [ResolvedTo(IMPORTS)] scriptStatementLevel.kts
}
public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val prop: R|kotlin/String| = String(str)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/String|
public final const [ResolvedTo(BODY_RESOLVE)] val prop: R|kotlin/String| = String(str)
public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/String|
[ResolvedTo(BODY_RESOLVE)] init {
when () {
@@ -619,8 +619,8 @@ FILE: [ResolvedTo(IMPORTS)] scriptStatementLevelAsLastStatement.kts
}
public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val constant: R|kotlin/String| = String(s)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/String|
public final const [ResolvedTo(BODY_RESOLVE)] val constant: R|kotlin/String| = String(s)
public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/String|
public final data [ResolvedTo(ANNOTATION_ARGUMENTS)] class Pair : R|kotlin/Any| {
public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=Pair] constructor([ResolvedTo(ANNOTATION_ARGUMENTS)] [CorrespondingProperty=util/Pair.a] a: R|@R|util/Anno|(str = <strcat>(String(a type ), R|util/constant|)) kotlin/collections/List<@R|util/Anno|(str = <strcat>(String(a nested type ), R|util/constant|)) kotlin/collections/Collection<@R|util/Anno|(str = <strcat>(String(a nested nested type ), R|util/constant|)) kotlin/String>>?|, [ResolvedTo(ANNOTATION_ARGUMENTS)] [CorrespondingProperty=util/Pair.b] b: R|@R|util/Anno|(str = <strcat>(String(b type ), R|util/constant|)) kotlin/Array<@R|util/Anno|(str = <strcat>(String(b nested type ), R|util/constant|)) kotlin/collections/List<@R|util/Anno|(str = <strcat>(String(b nested nested type ), R|util/constant|)) kotlin/Int>>?|): R|util/Pair| {
@@ -641,8 +641,8 @@ FILE: [ResolvedTo(IMPORTS)] scriptStatementLevelAsLastStatement.kts
}
public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val prop: R|kotlin/String| = String(str)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/String|
public final const [ResolvedTo(BODY_RESOLVE)] val prop: R|kotlin/String| = String(str)
public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/String|
public final [ResolvedTo(BODY_RESOLVE)] val $$result: R|kotlin/Unit| = when () {
Boolean(true) -> {
@@ -293,8 +293,8 @@ FILE: [ResolvedTo(IMPORTS)] resultWithPropagatedType.kts
}
public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val constant: R|kotlin/Int| = Int(0)
public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/Int|
public final const [ResolvedTo(BODY_RESOLVE)] val constant: R|kotlin/Int| = Int(0)
public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int|
public final [ResolvedTo(ANNOTATION_ARGUMENTS)] fun explicitType(): R|@R|foo/Anno|(position = <strcat>(String(return type: ), R|foo/constant|)) kotlin/collections/List<@R|foo/Anno|(position = <strcat>(String(nested return type: ), R|foo/constant|)) kotlin/collections/Collection<@R|foo/Anno|(position = <strcat>(String(nested nested return type: ), R|foo/constant|)) kotlin/String>>| {
^explicitType IntegerLiteral(0)
@@ -12,315 +12,324 @@ digraph NestedInnerClass_ll_kts {
subgraph cluster_1 {
color=red
2 [label="Enter function function [3]" style="filled" fillcolor=red];
2 [label="Enter class <script-NestedInnerClass.ll.kts> [2]" style="filled" fillcolor=red];
subgraph cluster_2 {
color=blue
3 [label="Enter block [3]"];
4 [label="Const: Int(42) [3]"];
5 [label="Jump: ^function Int(42) [3]"];
6 [label="Stub [3]" style="filled" fillcolor=gray];
7 [label="Exit block [3]" style="filled" fillcolor=gray];
3 [label="Enter property [3]" style="filled" fillcolor=red];
4 [label="Const: String() [3]"];
5 [label="Exit property [3]" style="filled" fillcolor=red];
}
8 [label="Exit function function [3]" style="filled" fillcolor=red];
6 [label="Exit class <script-NestedInnerClass.ll.kts> [2]" style="filled" fillcolor=red];
}
2 -> {3};
2 -> {3} [color=green];
2 -> {6} [style=dotted];
2 -> {3} [style=dashed];
3 -> {4};
4 -> {5};
5 -> {8};
5 -> {6} [style=dotted];
6 -> {7} [style=dotted];
7 -> {8} [style=dotted];
5 -> {6} [color=green];
subgraph cluster_3 {
color=red
9 [label="Enter property [3]" style="filled" fillcolor=red];
10 [label="Const: String() [3]"];
11 [label="Exit property [3]" style="filled" fillcolor=red];
7 [label="Enter function function [3]" style="filled" fillcolor=red];
subgraph cluster_4 {
color=blue
8 [label="Enter block [3]"];
9 [label="Const: Int(42) [3]"];
10 [label="Jump: ^function Int(42) [3]"];
11 [label="Stub [3]" style="filled" fillcolor=gray];
12 [label="Exit block [3]" style="filled" fillcolor=gray];
}
13 [label="Exit function function [3]" style="filled" fillcolor=red];
}
7 -> {8};
8 -> {9};
9 -> {10};
10 -> {11};
10 -> {13};
10 -> {11} [style=dotted];
11 -> {12} [style=dotted];
12 -> {13} [style=dotted];
subgraph cluster_4 {
subgraph cluster_5 {
color=red
12 [label="Enter class Nested [3]" style="filled" fillcolor=red];
subgraph cluster_5 {
14 [label="Enter class Nested [3]" style="filled" fillcolor=red];
subgraph cluster_6 {
color=blue
13 [label="Enter function <init> [4]" style="filled" fillcolor=red];
14 [label="Delegated constructor call: super<R|kotlin/Any|>() [4]" style="filled" fillcolor=yellow];
15 [label="Exit function <init> [4]" style="filled" fillcolor=red];
15 [label="Enter function <init> [4]" style="filled" fillcolor=red];
16 [label="Delegated constructor call: super<R|kotlin/Any|>() [4]" style="filled" fillcolor=yellow];
17 [label="Exit function <init> [4]" style="filled" fillcolor=red];
}
16 [label="Exit class Nested [3]" style="filled" fillcolor=red];
18 [label="Exit class Nested [3]" style="filled" fillcolor=red];
}
12 -> {13} [color=green];
12 -> {16} [style=dotted];
12 -> {13} [style=dashed];
13 -> {14};
14 -> {15};
15 -> {16} [color=green];
14 -> {15} [color=green];
14 -> {18} [style=dotted];
14 -> {15} [style=dashed];
15 -> {16};
16 -> {17};
17 -> {18} [color=green];
subgraph cluster_6 {
subgraph cluster_7 {
color=red
17 [label="Enter function f [4]" style="filled" fillcolor=red];
subgraph cluster_7 {
19 [label="Enter function f [4]" style="filled" fillcolor=red];
subgraph cluster_8 {
color=blue
18 [label="Enter block [4]"];
subgraph cluster_8 {
20 [label="Enter block [4]"];
subgraph cluster_9 {
color=blue
19 [label="Function call arguments enter [4]"];
20 [label="Function call arguments exit [4]"];
21 [label="Function call arguments enter [4]"];
22 [label="Function call arguments exit [4]"];
}
21 [label="Function call: R|/function|() [4]" style="filled" fillcolor=yellow];
22 [label="Jump: ^f R|/function|() [4]"];
23 [label="Stub [4]" style="filled" fillcolor=gray];
24 [label="Exit block [4]" style="filled" fillcolor=gray];
23 [label="Function call: R|/function|() [4]" style="filled" fillcolor=yellow];
24 [label="Jump: ^f R|/function|() [4]"];
25 [label="Stub [4]" style="filled" fillcolor=gray];
26 [label="Exit block [4]" style="filled" fillcolor=gray];
}
25 [label="Exit function f [4]" style="filled" fillcolor=red];
27 [label="Exit function f [4]" style="filled" fillcolor=red];
}
17 -> {18};
18 -> {19};
19 -> {20};
20 -> {21};
21 -> {22};
22 -> {25};
22 -> {23} [style=dotted];
23 -> {24} [style=dotted];
22 -> {23};
23 -> {24};
24 -> {27};
24 -> {25} [style=dotted];
25 -> {26} [style=dotted];
26 -> {27} [style=dotted];
subgraph cluster_9 {
subgraph cluster_10 {
color=red
26 [label="Enter function g [4]" style="filled" fillcolor=red];
subgraph cluster_10 {
28 [label="Enter function g [4]" style="filled" fillcolor=red];
subgraph cluster_11 {
color=blue
27 [label="Enter block [4]"];
28 [label="Access variable R|/property| [4]"];
29 [label="Jump: ^g R|/property| [4]"];
30 [label="Stub [4]" style="filled" fillcolor=gray];
31 [label="Exit block [4]" style="filled" fillcolor=gray];
29 [label="Enter block [4]"];
30 [label="Access variable R|/property| [4]"];
31 [label="Jump: ^g R|/property| [4]"];
32 [label="Stub [4]" style="filled" fillcolor=gray];
33 [label="Exit block [4]" style="filled" fillcolor=gray];
}
32 [label="Exit function g [4]" style="filled" fillcolor=red];
34 [label="Exit function g [4]" style="filled" fillcolor=red];
}
26 -> {27};
27 -> {28};
28 -> {29};
29 -> {32};
29 -> {30} [style=dotted];
30 -> {31} [style=dotted];
29 -> {30};
30 -> {31};
31 -> {34};
31 -> {32} [style=dotted];
32 -> {33} [style=dotted];
33 -> {34} [style=dotted];
subgraph cluster_11 {
subgraph cluster_12 {
color=red
33 [label="Enter class Inner [3]" style="filled" fillcolor=red];
subgraph cluster_12 {
color=blue
34 [label="Enter property [4]" style="filled" fillcolor=red];
35 [label="Access variable R|/property| [4]"];
36 [label="Exit property [4]" style="filled" fillcolor=red];
}
35 [label="Enter class Inner [3]" style="filled" fillcolor=red];
subgraph cluster_13 {
color=blue
37 [label="Enter property [4]" style="filled" fillcolor=red];
38 [label="Access variable this@NestedInnerClass# [4]"];
39 [label="Access variable <Unresolved name: property># [4]"];
40 [label="Exit property [4]" style="filled" fillcolor=red];
36 [label="Enter property [4]" style="filled" fillcolor=red];
37 [label="Access variable R|/property| [4]"];
38 [label="Exit property [4]" style="filled" fillcolor=red];
}
subgraph cluster_14 {
color=blue
41 [label="Enter function <init> [4]" style="filled" fillcolor=red];
42 [label="Delegated constructor call: super<R|kotlin/Any|>() [4]" style="filled" fillcolor=yellow];
43 [label="Exit function <init> [4]" style="filled" fillcolor=red];
39 [label="Enter property [4]" style="filled" fillcolor=red];
40 [label="Access variable this@NestedInnerClass# [4]"];
41 [label="Access variable <Unresolved name: property># [4]"];
42 [label="Exit property [4]" style="filled" fillcolor=red];
}
44 [label="Exit class Inner [3]" style="filled" fillcolor=red];
}
33 -> {34} [color=green];
33 -> {44} [style=dotted];
33 -> {34 37 41} [style=dashed];
34 -> {35};
35 -> {36};
36 -> {37} [color=green];
37 -> {38};
38 -> {39};
39 -> {40};
40 -> {41} [color=green];
41 -> {42};
42 -> {43};
43 -> {44} [color=green];
subgraph cluster_15 {
color=red
45 [label="Enter function innerFun [4]" style="filled" fillcolor=red];
subgraph cluster_16 {
subgraph cluster_15 {
color=blue
46 [label="Enter block [4]"];
subgraph cluster_17 {
color=blue
47 [label="Function call arguments enter [4]"];
48 [label="Function call arguments exit [4]"];
}
49 [label="Function call: R|/function|() [4]" style="filled" fillcolor=yellow];
50 [label="Jump: ^innerFun R|/function|() [4]"];
51 [label="Stub [4]" style="filled" fillcolor=gray];
52 [label="Exit block [4]" style="filled" fillcolor=gray];
43 [label="Enter function <init> [4]" style="filled" fillcolor=red];
44 [label="Delegated constructor call: super<R|kotlin/Any|>() [4]" style="filled" fillcolor=yellow];
45 [label="Exit function <init> [4]" style="filled" fillcolor=red];
}
53 [label="Exit function innerFun [4]" style="filled" fillcolor=red];
46 [label="Exit class Inner [3]" style="filled" fillcolor=red];
}
35 -> {36} [color=green];
35 -> {46} [style=dotted];
35 -> {36 39 43} [style=dashed];
36 -> {37};
37 -> {38};
38 -> {39} [color=green];
39 -> {40};
40 -> {41};
41 -> {42};
42 -> {43} [color=green];
43 -> {44};
44 -> {45};
45 -> {46} [color=green];
subgraph cluster_16 {
color=red
47 [label="Enter function innerFun [4]" style="filled" fillcolor=red];
subgraph cluster_17 {
color=blue
48 [label="Enter block [4]"];
subgraph cluster_18 {
color=blue
49 [label="Function call arguments enter [4]"];
50 [label="Function call arguments exit [4]"];
}
51 [label="Function call: R|/function|() [4]" style="filled" fillcolor=yellow];
52 [label="Jump: ^innerFun R|/function|() [4]"];
53 [label="Stub [4]" style="filled" fillcolor=gray];
54 [label="Exit block [4]" style="filled" fillcolor=gray];
}
55 [label="Exit function innerFun [4]" style="filled" fillcolor=red];
}
45 -> {46};
46 -> {47};
47 -> {48};
48 -> {49};
49 -> {50};
50 -> {53};
50 -> {51} [style=dotted];
51 -> {52} [style=dotted];
50 -> {51};
51 -> {52};
52 -> {55};
52 -> {53} [style=dotted];
53 -> {54} [style=dotted];
54 -> {55} [style=dotted];
subgraph cluster_18 {
subgraph cluster_19 {
color=red
54 [label="Enter function innerThisFun [4]" style="filled" fillcolor=red];
subgraph cluster_19 {
56 [label="Enter function innerThisFun [4]" style="filled" fillcolor=red];
subgraph cluster_20 {
color=blue
55 [label="Enter block [4]"];
subgraph cluster_20 {
57 [label="Enter block [4]"];
subgraph cluster_21 {
color=blue
56 [label="Function call arguments enter [4]"];
57 [label="Access variable this@NestedInnerClass# [4]"];
58 [label="Function call arguments exit [4]"];
58 [label="Function call arguments enter [4]"];
59 [label="Access variable this@NestedInnerClass# [4]"];
60 [label="Function call arguments exit [4]"];
}
59 [label="Function call: this@NestedInnerClass#.<Unresolved name: function>#() [4]" style="filled" fillcolor=yellow];
60 [label="Jump: ^innerThisFun this@NestedInnerClass#.<Unresolved name: function>#() [4]"];
61 [label="Stub [4]" style="filled" fillcolor=gray];
62 [label="Exit block [4]" style="filled" fillcolor=gray];
61 [label="Function call: this@NestedInnerClass#.<Unresolved name: function>#() [4]" style="filled" fillcolor=yellow];
62 [label="Jump: ^innerThisFun this@NestedInnerClass#.<Unresolved name: function>#() [4]"];
63 [label="Stub [4]" style="filled" fillcolor=gray];
64 [label="Exit block [4]" style="filled" fillcolor=gray];
}
63 [label="Exit function innerThisFun [4]" style="filled" fillcolor=red];
65 [label="Exit function innerThisFun [4]" style="filled" fillcolor=red];
}
54 -> {55};
55 -> {56};
56 -> {57};
57 -> {58};
58 -> {59};
59 -> {60};
60 -> {63};
60 -> {61} [style=dotted];
61 -> {62} [style=dotted];
60 -> {61};
61 -> {62};
62 -> {65};
62 -> {63} [style=dotted];
63 -> {64} [style=dotted];
64 -> {65} [style=dotted];
subgraph cluster_21 {
subgraph cluster_22 {
color=red
64 [label="Enter class InnerInner [4]" style="filled" fillcolor=red];
subgraph cluster_22 {
66 [label="Enter class InnerInner [4]" style="filled" fillcolor=red];
subgraph cluster_23 {
color=blue
65 [label="Enter function <init> [5]" style="filled" fillcolor=red];
66 [label="Delegated constructor call: super<R|kotlin/Any|>() [5]" style="filled" fillcolor=yellow];
67 [label="Exit function <init> [5]" style="filled" fillcolor=red];
67 [label="Enter function <init> [5]" style="filled" fillcolor=red];
68 [label="Delegated constructor call: super<R|kotlin/Any|>() [5]" style="filled" fillcolor=yellow];
69 [label="Exit function <init> [5]" style="filled" fillcolor=red];
}
68 [label="Exit class InnerInner [4]" style="filled" fillcolor=red];
70 [label="Exit class InnerInner [4]" style="filled" fillcolor=red];
}
64 -> {65} [color=green];
64 -> {68} [style=dotted];
64 -> {65} [style=dashed];
65 -> {66};
66 -> {67};
67 -> {68} [color=green];
66 -> {67} [color=green];
66 -> {70} [style=dotted];
66 -> {67} [style=dashed];
67 -> {68};
68 -> {69};
69 -> {70} [color=green];
subgraph cluster_23 {
subgraph cluster_24 {
color=red
69 [label="Enter function f [5]" style="filled" fillcolor=red];
subgraph cluster_24 {
71 [label="Enter function f [5]" style="filled" fillcolor=red];
subgraph cluster_25 {
color=blue
70 [label="Enter block [5]"];
subgraph cluster_25 {
72 [label="Enter block [5]"];
subgraph cluster_26 {
color=blue
71 [label="Function call arguments enter [5]"];
72 [label="Function call arguments exit [5]"];
73 [label="Function call arguments enter [5]"];
74 [label="Function call arguments exit [5]"];
}
73 [label="Function call: this@R|/Inner|.R|/Inner.innerFun|() [5]" style="filled" fillcolor=yellow];
74 [label="Jump: ^f this@R|/Inner|.R|/Inner.innerFun|() [5]"];
75 [label="Stub [5]" style="filled" fillcolor=gray];
76 [label="Exit block [5]" style="filled" fillcolor=gray];
75 [label="Function call: this@R|/Inner|.R|/Inner.innerFun|() [5]" style="filled" fillcolor=yellow];
76 [label="Jump: ^f this@R|/Inner|.R|/Inner.innerFun|() [5]"];
77 [label="Stub [5]" style="filled" fillcolor=gray];
78 [label="Exit block [5]" style="filled" fillcolor=gray];
}
77 [label="Exit function f [5]" style="filled" fillcolor=red];
79 [label="Exit function f [5]" style="filled" fillcolor=red];
}
69 -> {70};
70 -> {71};
71 -> {72};
72 -> {73};
73 -> {74};
74 -> {77};
74 -> {75} [style=dotted];
75 -> {76} [style=dotted];
74 -> {75};
75 -> {76};
76 -> {79};
76 -> {77} [style=dotted];
77 -> {78} [style=dotted];
78 -> {79} [style=dotted];
subgraph cluster_26 {
subgraph cluster_27 {
color=red
78 [label="Enter function g [5]" style="filled" fillcolor=red];
subgraph cluster_27 {
80 [label="Enter function g [5]" style="filled" fillcolor=red];
subgraph cluster_28 {
color=blue
79 [label="Enter block [5]"];
80 [label="Access variable R|/Inner.innerProp| [5]"];
81 [label="Jump: ^g this@R|/Inner|.R|/Inner.innerProp| [5]"];
82 [label="Stub [5]" style="filled" fillcolor=gray];
83 [label="Exit block [5]" style="filled" fillcolor=gray];
81 [label="Enter block [5]"];
82 [label="Access variable R|/Inner.innerProp| [5]"];
83 [label="Jump: ^g this@R|/Inner|.R|/Inner.innerProp| [5]"];
84 [label="Stub [5]" style="filled" fillcolor=gray];
85 [label="Exit block [5]" style="filled" fillcolor=gray];
}
84 [label="Exit function g [5]" style="filled" fillcolor=red];
86 [label="Exit function g [5]" style="filled" fillcolor=red];
}
78 -> {79};
79 -> {80};
80 -> {81};
81 -> {84};
81 -> {82} [style=dotted];
82 -> {83} [style=dotted];
81 -> {82};
82 -> {83};
83 -> {86};
83 -> {84} [style=dotted];
84 -> {85} [style=dotted];
85 -> {86} [style=dotted];
subgraph cluster_28 {
subgraph cluster_29 {
color=red
85 [label="Enter function h [5]" style="filled" fillcolor=red];
subgraph cluster_29 {
87 [label="Enter function h [5]" style="filled" fillcolor=red];
subgraph cluster_30 {
color=blue
86 [label="Enter block [5]"];
subgraph cluster_30 {
88 [label="Enter block [5]"];
subgraph cluster_31 {
color=blue
87 [label="Function call arguments enter [5]"];
88 [label="Access variable this@R|/Inner| [5]"];
89 [label="Function call arguments exit [5]"];
89 [label="Function call arguments enter [5]"];
90 [label="Access variable this@R|/Inner| [5]"];
91 [label="Function call arguments exit [5]"];
}
90 [label="Function call: this@R|/Inner|.R|/Inner.innerFun|() [5]" style="filled" fillcolor=yellow];
91 [label="Jump: ^h this@R|/Inner|.R|/Inner.innerFun|() [5]"];
92 [label="Stub [5]" style="filled" fillcolor=gray];
93 [label="Exit block [5]" style="filled" fillcolor=gray];
92 [label="Function call: this@R|/Inner|.R|/Inner.innerFun|() [5]" style="filled" fillcolor=yellow];
93 [label="Jump: ^h this@R|/Inner|.R|/Inner.innerFun|() [5]"];
94 [label="Stub [5]" style="filled" fillcolor=gray];
95 [label="Exit block [5]" style="filled" fillcolor=gray];
}
94 [label="Exit function h [5]" style="filled" fillcolor=red];
96 [label="Exit function h [5]" style="filled" fillcolor=red];
}
85 -> {86};
86 -> {87};
87 -> {88};
88 -> {89};
89 -> {90};
90 -> {91};
91 -> {94};
91 -> {92} [style=dotted];
92 -> {93} [style=dotted];
91 -> {92};
92 -> {93};
93 -> {96};
93 -> {94} [style=dotted];
94 -> {95} [style=dotted];
95 -> {96} [style=dotted];
subgraph cluster_31 {
subgraph cluster_32 {
color=red
95 [label="Enter function i [5]" style="filled" fillcolor=red];
subgraph cluster_32 {
97 [label="Enter function i [5]" style="filled" fillcolor=red];
subgraph cluster_33 {
color=blue
96 [label="Enter block [5]"];
97 [label="Access variable this@R|/Inner| [5]"];
98 [label="Access variable R|/Inner.innerProp| [5]"];
99 [label="Jump: ^i this@R|/Inner|.R|/Inner.innerProp| [5]"];
100 [label="Stub [5]" style="filled" fillcolor=gray];
101 [label="Exit block [5]" style="filled" fillcolor=gray];
98 [label="Enter block [5]"];
99 [label="Access variable this@R|/Inner| [5]"];
100 [label="Access variable R|/Inner.innerProp| [5]"];
101 [label="Jump: ^i this@R|/Inner|.R|/Inner.innerProp| [5]"];
102 [label="Stub [5]" style="filled" fillcolor=gray];
103 [label="Exit block [5]" style="filled" fillcolor=gray];
}
102 [label="Exit function i [5]" style="filled" fillcolor=red];
104 [label="Exit function i [5]" style="filled" fillcolor=red];
}
95 -> {96};
96 -> {97};
97 -> {98};
98 -> {99};
99 -> {102};
99 -> {100} [style=dotted];
100 -> {101} [style=dotted];
99 -> {100};
100 -> {101};
101 -> {104};
101 -> {102} [style=dotted];
102 -> {103} [style=dotted];
103 -> {104} [style=dotted];
}