diff --git a/compiler/fir/resolve/testData/resolve/cfg/binaryOperations.dot b/compiler/fir/resolve/testData/resolve/cfg/binaryOperations.dot index 1c8c05c2291..7ee0e47d9b4 100644 --- a/compiler/fir/resolve/testData/resolve/cfg/binaryOperations.dot +++ b/compiler/fir/resolve/testData/resolve/cfg/binaryOperations.dot @@ -1,8 +1,8 @@ digraph binaryOperations_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph test_1 { - 0 [shape=box label="Enter function test_1"]; +subgraph cluster_test_1 { + 0 [shape=box label="Enter function test_1" style="filled"]; 1 [shape=box label="Enter block"]; 2 [shape=box label="Enter when"]; 3 [shape=box label="Enter when branch condition "]; @@ -23,7 +23,7 @@ subgraph test_1 { 18 [shape=box label="Exit when branch result"]; 19 [shape=box label="Exit when"]; 20 [shape=box label="Exit block"]; - 21 [shape=box label="Exit function test_1"]; + 21 [shape=box label="Exit function test_1" style="filled"]; 0 -> {1}; 1 -> {2}; @@ -48,8 +48,8 @@ subgraph test_1 { 20 -> {21}; } -subgraph test_2 { - 22 [shape=box label="Enter function test_2"]; +subgraph cluster_test_2 { + 22 [shape=box label="Enter function test_2" style="filled"]; 23 [shape=box label="Enter block"]; 24 [shape=box label="Enter when"]; 25 [shape=box label="Enter when branch condition "]; @@ -70,7 +70,7 @@ subgraph test_2 { 40 [shape=box label="Exit when branch result"]; 41 [shape=box label="Exit when"]; 42 [shape=box label="Exit block"]; - 43 [shape=box label="Exit function test_2"]; + 43 [shape=box label="Exit function test_2" style="filled"]; 22 -> {23}; 23 -> {24}; @@ -95,8 +95,8 @@ subgraph test_2 { 42 -> {43}; } -subgraph test_3 { - 44 [shape=box label="Enter function test_3"]; +subgraph cluster_test_3 { + 44 [shape=box label="Enter function test_3" style="filled"]; 45 [shape=box label="Enter block"]; 46 [shape=box label="Enter when"]; 47 [shape=box label="Enter when branch condition "]; @@ -121,7 +121,7 @@ subgraph test_3 { 66 [shape=box label="Exit when branch result"]; 67 [shape=box label="Exit when"]; 68 [shape=box label="Exit block"]; - 69 [shape=box label="Exit function test_3"]; + 69 [shape=box label="Exit function test_3" style="filled"]; 44 -> {45}; 45 -> {46}; @@ -150,8 +150,8 @@ subgraph test_3 { 68 -> {69}; } -subgraph test_4 { - 70 [shape=box label="Enter function test_4"]; +subgraph cluster_test_4 { + 70 [shape=box label="Enter function test_4" style="filled"]; 71 [shape=box label="Enter block"]; 72 [shape=box label="Enter when"]; 73 [shape=box label="Enter when branch condition "]; @@ -176,7 +176,7 @@ subgraph test_4 { 92 [shape=box label="Exit when branch result"]; 93 [shape=box label="Exit when"]; 94 [shape=box label="Exit block"]; - 95 [shape=box label="Exit function test_4"]; + 95 [shape=box label="Exit function test_4" style="filled"]; 70 -> {71}; 71 -> {72}; diff --git a/compiler/fir/resolve/testData/resolve/cfg/booleanOperatorsWithConsts.dot b/compiler/fir/resolve/testData/resolve/cfg/booleanOperatorsWithConsts.dot index ffff5409948..b540e64eb20 100644 --- a/compiler/fir/resolve/testData/resolve/cfg/booleanOperatorsWithConsts.dot +++ b/compiler/fir/resolve/testData/resolve/cfg/booleanOperatorsWithConsts.dot @@ -1,8 +1,8 @@ digraph booleanOperatorsWithConsts_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph test_1 { - 0 [shape=box label="Enter function test_1"]; +subgraph cluster_test_1 { + 0 [shape=box label="Enter function test_1" style="filled"]; 1 [shape=box label="Enter block"]; 2 [shape=box label="Enter when"]; 3 [shape=box label="Enter when branch condition "]; @@ -23,7 +23,7 @@ subgraph test_1 { 18 [shape=box label="Exit when branch result"]; 19 [shape=box label="Exit when"]; 20 [shape=box label="Exit block"]; - 21 [shape=box label="Exit function test_1"]; + 21 [shape=box label="Exit function test_1" style="filled"]; 0 -> {1}; 1 -> {2}; @@ -48,8 +48,8 @@ subgraph test_1 { 20 -> {21}; } -subgraph test_2 { - 22 [shape=box label="Enter function test_2"]; +subgraph cluster_test_2 { + 22 [shape=box label="Enter function test_2" style="filled"]; 23 [shape=box label="Enter block"]; 24 [shape=box label="Enter when"]; 25 [shape=box label="Enter when branch condition "]; @@ -71,7 +71,7 @@ subgraph test_2 { 41 [shape=box label="Exit when branch result"]; 42 [shape=box label="Exit when"]; 43 [shape=box label="Exit block"]; - 44 [shape=box label="Exit function test_2"]; + 44 [shape=box label="Exit function test_2" style="filled"]; 22 -> {23}; 23 -> {24}; @@ -98,8 +98,8 @@ subgraph test_2 { 43 -> {44}; } -subgraph test_3 { - 45 [shape=box label="Enter function test_3"]; +subgraph cluster_test_3 { + 45 [shape=box label="Enter function test_3" style="filled"]; 46 [shape=box label="Enter block"]; 47 [shape=box label="Enter when"]; 48 [shape=box label="Enter when branch condition "]; @@ -120,7 +120,7 @@ subgraph test_3 { 63 [shape=box label="Exit when branch result"]; 64 [shape=box label="Exit when"]; 65 [shape=box label="Exit block"]; - 66 [shape=box label="Exit function test_3"]; + 66 [shape=box label="Exit function test_3" style="filled"]; 45 -> {46}; 46 -> {47}; @@ -145,8 +145,8 @@ subgraph test_3 { 65 -> {66}; } -subgraph test_4 { - 67 [shape=box label="Enter function test_4"]; +subgraph cluster_test_4 { + 67 [shape=box label="Enter function test_4" style="filled"]; 68 [shape=box label="Enter block"]; 69 [shape=box label="Enter when"]; 70 [shape=box label="Enter when branch condition "]; @@ -168,7 +168,7 @@ subgraph test_4 { 86 [shape=box label="Exit when branch result"]; 87 [shape=box label="Exit when"]; 88 [shape=box label="Exit block"]; - 89 [shape=box label="Exit function test_4"]; + 89 [shape=box label="Exit function test_4" style="filled"]; 67 -> {68}; 68 -> {69}; @@ -195,8 +195,8 @@ subgraph test_4 { 88 -> {89}; } -subgraph test_5 { - 90 [shape=box label="Enter function test_5"]; +subgraph cluster_test_5 { + 90 [shape=box label="Enter function test_5" style="filled"]; 91 [shape=box label="Enter block"]; 92 [shape=box label="Enter when"]; 93 [shape=box label="Enter when branch condition "]; @@ -217,7 +217,7 @@ subgraph test_5 { 108 [shape=box label="Exit when branch result"]; 109 [shape=box label="Exit when"]; 110 [shape=box label="Exit block"]; - 111 [shape=box label="Exit function test_5"]; + 111 [shape=box label="Exit function test_5" style="filled"]; 90 -> {91}; 91 -> {92}; @@ -242,8 +242,8 @@ subgraph test_5 { 110 -> {111}; } -subgraph test_6 { - 112 [shape=box label="Enter function test_6"]; +subgraph cluster_test_6 { + 112 [shape=box label="Enter function test_6" style="filled"]; 113 [shape=box label="Enter block"]; 114 [shape=box label="Enter when"]; 115 [shape=box label="Enter when branch condition "]; @@ -266,7 +266,7 @@ subgraph test_6 { 132 [shape=box label="Exit when branch result"]; 133 [shape=box label="Exit when"]; 134 [shape=box label="Exit block"]; - 135 [shape=box label="Exit function test_6"]; + 135 [shape=box label="Exit function test_6" style="filled"]; 112 -> {113}; 113 -> {114}; @@ -294,8 +294,8 @@ subgraph test_6 { 134 -> {135}; } -subgraph test_7 { - 136 [shape=box label="Enter function test_7"]; +subgraph cluster_test_7 { + 136 [shape=box label="Enter function test_7" style="filled"]; 137 [shape=box label="Enter block"]; 138 [shape=box label="Enter when"]; 139 [shape=box label="Enter when branch condition "]; @@ -316,7 +316,7 @@ subgraph test_7 { 154 [shape=box label="Exit when branch result"]; 155 [shape=box label="Exit when"]; 156 [shape=box label="Exit block"]; - 157 [shape=box label="Exit function test_7"]; + 157 [shape=box label="Exit function test_7" style="filled"]; 136 -> {137}; 137 -> {138}; @@ -341,8 +341,8 @@ subgraph test_7 { 156 -> {157}; } -subgraph test_8 { - 158 [shape=box label="Enter function test_8"]; +subgraph cluster_test_8 { + 158 [shape=box label="Enter function test_8" style="filled"]; 159 [shape=box label="Enter block"]; 160 [shape=box label="Enter when"]; 161 [shape=box label="Enter when branch condition "]; @@ -364,7 +364,7 @@ subgraph test_8 { 177 [shape=box label="Exit when branch result"]; 178 [shape=box label="Exit when"]; 179 [shape=box label="Exit block"]; - 180 [shape=box label="Exit function test_8"]; + 180 [shape=box label="Exit function test_8" style="filled"]; 158 -> {159}; 159 -> {160}; diff --git a/compiler/fir/resolve/testData/resolve/cfg/complex.dot b/compiler/fir/resolve/testData/resolve/cfg/complex.dot index b94c93f4888..5582bb27489 100644 --- a/compiler/fir/resolve/testData/resolve/cfg/complex.dot +++ b/compiler/fir/resolve/testData/resolve/cfg/complex.dot @@ -1,8 +1,8 @@ digraph complex_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph fetchPluginReleaseDate { - 0 [shape=box label="Enter function fetchPluginReleaseDate"]; +subgraph cluster_fetchPluginReleaseDate { + 0 [shape=box label="Enter function fetchPluginReleaseDate" style="filled"]; 1 [shape=box label="Enter block"]; 2 [shape=box label="Const: String(https://plugins.jetbrains.com/api/plugins/)"]; 3 [shape=box label="Access variable R|/pluginId|"]; @@ -46,7 +46,7 @@ subgraph fetchPluginReleaseDate { 38 [shape=box label="Access variable #"]; 39 [shape=box label="Access variable #"]; 40 [shape=box label="Exit annotation"]; - 41 [shape=box label="Exit function fetchPluginReleaseDate"]; + 41 [shape=box label="Exit function fetchPluginReleaseDate" style="filled"]; 0 -> {1}; 1 -> {2}; diff --git a/compiler/fir/resolve/testData/resolve/cfg/initBlock.dot b/compiler/fir/resolve/testData/resolve/cfg/initBlock.dot index e88c7ea4110..3a4e2ace95e 100644 --- a/compiler/fir/resolve/testData/resolve/cfg/initBlock.dot +++ b/compiler/fir/resolve/testData/resolve/cfg/initBlock.dot @@ -1,16 +1,16 @@ digraph initBlock_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph { - 0 [shape=box label="Enter function "]; - 1 [shape=box label="Exit function "]; +subgraph cluster__init_ { + 0 [shape=box label="Enter function " style="filled"]; + 1 [shape=box label="Exit function " style="filled"]; 0 -> {1}; } -subgraph { - 2 [shape=box label="Enter function "]; - 3 [shape=box label="Exit function "]; +subgraph cluster__init_ { + 2 [shape=box label="Enter function " style="filled"]; + 3 [shape=box label="Exit function " style="filled"]; 2 -> {3}; } diff --git a/compiler/fir/resolve/testData/resolve/cfg/jumps.dot b/compiler/fir/resolve/testData/resolve/cfg/jumps.dot index b48a721f457..c61546efd4e 100644 --- a/compiler/fir/resolve/testData/resolve/cfg/jumps.dot +++ b/compiler/fir/resolve/testData/resolve/cfg/jumps.dot @@ -1,8 +1,8 @@ digraph jumps_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph test_1 { - 0 [shape=box label="Enter function test_1"]; +subgraph cluster_test_1 { + 0 [shape=box label="Enter function test_1" style="filled"]; 1 [shape=box label="Enter block"]; 2 [shape=box label="Enter when"]; 3 [shape=box label="Enter when branch condition "]; @@ -27,7 +27,7 @@ subgraph test_1 { 22 [shape=box label="Access variable R|/y|"]; 23 [shape=box label="Function call: R|/y|.R|kotlin/Int.inc|()"]; 24 [shape=box label="Exit block"]; - 25 [shape=box label="Exit function test_1"]; + 25 [shape=box label="Exit function test_1" style="filled"]; 0 -> {1}; 1 -> {2}; @@ -57,8 +57,8 @@ subgraph test_1 { 24 -> {25}; } -subgraph test_2 { - 26 [shape=box label="Enter function test_2"]; +subgraph cluster_test_2 { + 26 [shape=box label="Enter function test_2" style="filled"]; 27 [shape=box label="Enter block"]; 28 [shape=box label="Enter when"]; 29 [shape=box label="Enter when branch condition "]; @@ -81,7 +81,7 @@ subgraph test_2 { 46 [shape=box label="Access variable R|/y|"]; 47 [shape=box label="Function call: R|/y|.#()"]; 48 [shape=box label="Exit block"]; - 49 [shape=box label="Exit function test_2"]; + 49 [shape=box label="Exit function test_2" style="filled"]; 26 -> {27}; 27 -> {28}; @@ -108,8 +108,8 @@ subgraph test_2 { 48 -> {49}; } -subgraph test_3 { - 50 [shape=box label="Enter function test_3"]; +subgraph cluster_test_3 { + 50 [shape=box label="Enter function test_3" style="filled"]; 51 [shape=box label="Enter block"]; 52 [shape=box label="Enter while loop"]; 53 [shape=box label="Enter loop condition"]; @@ -128,7 +128,7 @@ subgraph test_3 { 66 [shape=box label="Access variable R|/x|"]; 67 [shape=box label="Function call: R|/x|.R|kotlin/Int.inc|()"]; 68 [shape=box label="Exit block"]; - 69 [shape=box label="Exit function test_3"]; + 69 [shape=box label="Exit function test_3" style="filled"]; 50 -> {51}; 51 -> {52}; @@ -153,8 +153,8 @@ subgraph test_3 { 68 -> {69}; } -subgraph test_4 { - 70 [shape=box label="Enter function test_4"]; +subgraph cluster_test_4 { + 70 [shape=box label="Enter function test_4" style="filled"]; 71 [shape=box label="Enter block"]; 72 [shape=box label="Enter do-while loop"]; 73 [shape=box label="Enter loop block"]; @@ -173,7 +173,7 @@ subgraph test_4 { 86 [shape=box label="Access variable R|/x|"]; 87 [shape=box label="Function call: R|/x|.R|kotlin/Int.inc|()"]; 88 [shape=box label="Exit block"]; - 89 [shape=box label="Exit function test_4"]; + 89 [shape=box label="Exit function test_4" style="filled"]; 70 -> {71}; 71 -> {72}; diff --git a/compiler/fir/resolve/testData/resolve/cfg/lambdas.dot b/compiler/fir/resolve/testData/resolve/cfg/lambdas.dot index a176169badd..721ee8e6abd 100644 --- a/compiler/fir/resolve/testData/resolve/cfg/lambdas.dot +++ b/compiler/fir/resolve/testData/resolve/cfg/lambdas.dot @@ -1,12 +1,12 @@ digraph lambdas_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph run { - 0 [shape=box label="Enter function run"]; +subgraph cluster_run { + 0 [shape=box label="Enter function run" style="filled"]; 1 [shape=box label="Enter block"]; 2 [shape=box label="Function call: R|/block|.R|FakeOverride|()"]; 3 [shape=box label="Exit block"]; - 4 [shape=box label="Exit function run"]; + 4 [shape=box label="Exit function run" style="filled"]; 0 -> {1}; 1 -> {2}; @@ -14,8 +14,8 @@ subgraph run { 3 -> {4}; } -subgraph test_1 { - 5 [shape=box label="Enter function test_1"]; +subgraph cluster_test_1 { + 5 [shape=box label="Enter function test_1" style="filled"]; 6 [shape=box label="Enter block"]; 7 [shape=box label="Enter when"]; 8 [shape=box label="Enter when branch condition "]; @@ -42,7 +42,7 @@ subgraph test_1 { 26 [shape=box label="Exit when branch result"]; 27 [shape=box label="Exit when"]; 28 [shape=box label="Exit block"]; - 29 [shape=box label="Exit function test_1"]; + 29 [shape=box label="Exit function test_1" style="filled"]; 5 -> {6}; 6 -> {7}; @@ -70,13 +70,13 @@ subgraph test_1 { 28 -> {29}; } -subgraph { - 30 [shape=box label="Enter function anonymousFunction"]; +subgraph cluster__anonymous_ { + 30 [shape=box label="Enter function anonymousFunction" style="filled"]; 31 [shape=box label="Enter block"]; 32 [shape=box label="Access variable R|/x|"]; 33 [shape=box label="Function call: R|/x|.#()"]; 34 [shape=box label="Exit block"]; - 35 [shape=box label="Exit function anonymousFunction"]; + 35 [shape=box label="Exit function anonymousFunction" style="filled"]; 30 -> {31}; 31 -> {32}; @@ -85,8 +85,8 @@ subgraph { 34 -> {35}; } -subgraph test_2 { - 36 [shape=box label="Enter function test_2"]; +subgraph cluster_test_2 { + 36 [shape=box label="Enter function test_2" style="filled"]; 37 [shape=box label="Enter block"]; 38 [shape=box label="Enter when"]; 39 [shape=box label="Enter when branch condition "]; @@ -104,7 +104,7 @@ subgraph test_2 { 51 [shape=box label="Exit when branch result"]; 52 [shape=box label="Exit when"]; 53 [shape=box label="Exit block"]; - 54 [shape=box label="Exit function test_2"]; + 54 [shape=box label="Exit function test_2" style="filled"]; 36 -> {37}; 37 -> {38}; diff --git a/compiler/fir/resolve/testData/resolve/cfg/loops.dot b/compiler/fir/resolve/testData/resolve/cfg/loops.dot index 2c00a6a8439..950118a6198 100644 --- a/compiler/fir/resolve/testData/resolve/cfg/loops.dot +++ b/compiler/fir/resolve/testData/resolve/cfg/loops.dot @@ -1,8 +1,8 @@ digraph loops_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph testWhile { - 0 [shape=box label="Enter function testWhile"]; +subgraph cluster_testWhile { + 0 [shape=box label="Enter function testWhile" style="filled"]; 1 [shape=box label="Enter block"]; 2 [shape=box label="Enter while loop"]; 3 [shape=box label="Enter loop condition"]; @@ -19,7 +19,7 @@ subgraph testWhile { 14 [shape=box label="Access variable R|/x|"]; 15 [shape=box label="Type operator: x is String"]; 16 [shape=box label="Exit block"]; - 17 [shape=box label="Exit function testWhile"]; + 17 [shape=box label="Exit function testWhile" style="filled"]; 0 -> {1}; 1 -> {2}; @@ -40,8 +40,8 @@ subgraph testWhile { 16 -> {17}; } -subgraph testDoWhile { - 18 [shape=box label="Enter function testDoWhile"]; +subgraph cluster_testDoWhile { + 18 [shape=box label="Enter function testDoWhile" style="filled"]; 19 [shape=box label="Enter block"]; 20 [shape=box label="Enter do-while loop"]; 21 [shape=box label="Enter loop block"]; @@ -58,7 +58,7 @@ subgraph testDoWhile { 32 [shape=box label="Access variable R|/x|"]; 33 [shape=box label="Type operator: x is String"]; 34 [shape=box label="Exit block"]; - 35 [shape=box label="Exit function testDoWhile"]; + 35 [shape=box label="Exit function testDoWhile" style="filled"]; 18 -> {19}; 19 -> {20}; @@ -79,8 +79,8 @@ subgraph testDoWhile { 34 -> {35}; } -subgraph testFor { - 36 [shape=box label="Enter function testFor"]; +subgraph cluster_testFor { + 36 [shape=box label="Enter function testFor" style="filled"]; 37 [shape=box label="Enter block"]; 38 [shape=box label="Const: Int(0)"]; 39 [shape=box label="Const: Int(5)"]; @@ -108,7 +108,7 @@ subgraph testFor { 61 [shape=box label="Access variable R|/x|"]; 62 [shape=box label="Type operator: x is String"]; 63 [shape=box label="Exit block"]; - 64 [shape=box label="Exit function testFor"]; + 64 [shape=box label="Exit function testFor" style="filled"]; 36 -> {37}; 37 -> {38}; @@ -140,8 +140,8 @@ subgraph testFor { 63 -> {64}; } -subgraph testWhileTrue { - 65 [shape=box label="Enter function testWhileTrue"]; +subgraph cluster_testWhileTrue { + 65 [shape=box label="Enter function testWhileTrue" style="filled"]; 66 [shape=box label="Enter block"]; 67 [shape=box label="Enter while loop"]; 68 [shape=box label="Enter loop condition"]; @@ -156,7 +156,7 @@ subgraph testWhileTrue { 77 [shape=box label="Exit whileloop[DEAD]"]; 78 [shape=box label="Const: Int(1)[DEAD]"]; 79 [shape=box label="Exit block[DEAD]"]; - 80 [shape=box label="Exit function testWhileTrue[DEAD]"]; + 80 [shape=box label="Exit function testWhileTrue[DEAD]" style="filled"]; 65 -> {66}; 66 -> {67}; @@ -176,8 +176,8 @@ subgraph testWhileTrue { 79 -> {80} [style=dotted]; } -subgraph testWhileTrueWithBreak { - 81 [shape=box label="Enter function testWhileTrueWithBreak"]; +subgraph cluster_testWhileTrueWithBreak { + 81 [shape=box label="Enter function testWhileTrueWithBreak" style="filled"]; 82 [shape=box label="Enter block"]; 83 [shape=box label="Enter while loop"]; 84 [shape=box label="Enter loop condition"]; @@ -206,7 +206,7 @@ subgraph testWhileTrueWithBreak { 107 [shape=box label="Exit whileloop"]; 108 [shape=box label="Const: Int(1)"]; 109 [shape=box label="Exit block"]; - 110 [shape=box label="Exit function testWhileTrueWithBreak"]; + 110 [shape=box label="Exit function testWhileTrueWithBreak" style="filled"]; 81 -> {82}; 82 -> {83}; @@ -241,8 +241,8 @@ subgraph testWhileTrueWithBreak { 109 -> {110}; } -subgraph testWhileFalse { - 111 [shape=box label="Enter function testWhileFalse"]; +subgraph cluster_testWhileFalse { + 111 [shape=box label="Enter function testWhileFalse" style="filled"]; 112 [shape=box label="Enter block"]; 113 [shape=box label="Enter while loop"]; 114 [shape=box label="Enter loop condition"]; @@ -257,7 +257,7 @@ subgraph testWhileFalse { 123 [shape=box label="Exit whileloop"]; 124 [shape=box label="Const: Int(1)"]; 125 [shape=box label="Exit block"]; - 126 [shape=box label="Exit function testWhileFalse"]; + 126 [shape=box label="Exit function testWhileFalse" style="filled"]; 111 -> {112}; 112 -> {113}; @@ -277,8 +277,8 @@ subgraph testWhileFalse { 125 -> {126}; } -subgraph testDoWhileTrue { - 127 [shape=box label="Enter function testDoWhileTrue"]; +subgraph cluster_testDoWhileTrue { + 127 [shape=box label="Enter function testDoWhileTrue" style="filled"]; 128 [shape=box label="Enter block"]; 129 [shape=box label="Enter do-while loop"]; 130 [shape=box label="Enter loop block"]; @@ -293,7 +293,7 @@ subgraph testDoWhileTrue { 139 [shape=box label="Exit do-whileloop[DEAD]"]; 140 [shape=box label="Const: Int(1)[DEAD]"]; 141 [shape=box label="Exit block[DEAD]"]; - 142 [shape=box label="Exit function testDoWhileTrue[DEAD]"]; + 142 [shape=box label="Exit function testDoWhileTrue[DEAD]" style="filled"]; 127 -> {128}; 128 -> {129}; @@ -313,8 +313,8 @@ subgraph testDoWhileTrue { 141 -> {142} [style=dotted]; } -subgraph testDoWhileTrueWithBreak { - 143 [shape=box label="Enter function testDoWhileTrueWithBreak"]; +subgraph cluster_testDoWhileTrueWithBreak { + 143 [shape=box label="Enter function testDoWhileTrueWithBreak" style="filled"]; 144 [shape=box label="Enter block"]; 145 [shape=box label="Enter do-while loop"]; 146 [shape=box label="Enter loop block"]; @@ -343,7 +343,7 @@ subgraph testDoWhileTrueWithBreak { 169 [shape=box label="Exit do-whileloop"]; 170 [shape=box label="Const: Int(1)"]; 171 [shape=box label="Exit block"]; - 172 [shape=box label="Exit function testDoWhileTrueWithBreak"]; + 172 [shape=box label="Exit function testDoWhileTrueWithBreak" style="filled"]; 143 -> {144}; 144 -> {145}; @@ -378,8 +378,8 @@ subgraph testDoWhileTrueWithBreak { 171 -> {172}; } -subgraph testDoWhileFalse { - 173 [shape=box label="Enter function testDoWhileFalse"]; +subgraph cluster_testDoWhileFalse { + 173 [shape=box label="Enter function testDoWhileFalse" style="filled"]; 174 [shape=box label="Enter block"]; 175 [shape=box label="Enter do-while loop"]; 176 [shape=box label="Enter loop block"]; @@ -393,7 +393,7 @@ subgraph testDoWhileFalse { 184 [shape=box label="Exit do-whileloop"]; 185 [shape=box label="Const: Int(1)"]; 186 [shape=box label="Exit block"]; - 187 [shape=box label="Exit function testDoWhileFalse"]; + 187 [shape=box label="Exit function testDoWhileFalse" style="filled"]; 188 [shape=box label="Stub[DEAD]"]; 173 -> {174}; diff --git a/compiler/fir/resolve/testData/resolve/cfg/propertiesAndInitBlocks.dot b/compiler/fir/resolve/testData/resolve/cfg/propertiesAndInitBlocks.dot index 3df4ade76a9..43237216bc3 100644 --- a/compiler/fir/resolve/testData/resolve/cfg/propertiesAndInitBlocks.dot +++ b/compiler/fir/resolve/testData/resolve/cfg/propertiesAndInitBlocks.dot @@ -1,12 +1,12 @@ digraph propertiesAndInitBlocks_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph run { - 0 [shape=box label="Enter function run"]; +subgraph cluster_run { + 0 [shape=box label="Enter function run" style="filled"]; 1 [shape=box label="Enter block"]; 2 [shape=box label="Function call: R|/block|.R|FakeOverride|()"]; 3 [shape=box label="Exit block"]; - 4 [shape=box label="Exit function run"]; + 4 [shape=box label="Exit function run" style="filled"]; 0 -> {1}; 1 -> {2}; @@ -14,23 +14,23 @@ subgraph run { 3 -> {4}; } -subgraph val_x1 { - 5 [shape=box label="Enter property"]; +subgraph cluster_val_x1 { + 5 [shape=box label="Enter property" style="filled"]; 6 [shape=box label="Const: Int(1)"]; - 7 [shape=box label="Exit property"]; + 7 [shape=box label="Exit property" style="filled"]; 5 -> {6}; 6 -> {7}; } -subgraph { - 8 [shape=box label="Enter function getter"]; +subgraph cluster__getter_ { + 8 [shape=box label="Enter function getter" style="filled"]; 9 [shape=box label="Enter block"]; 10 [shape=box label="Const: Int(1)"]; 11 [shape=box label="Jump: ^ Int(1)"]; 12 [shape=box label="Stub[DEAD]"]; 13 [shape=box label="Exit block[DEAD]"]; - 14 [shape=box label="Exit function getter[DEAD]"]; + 14 [shape=box label="Exit function getter[DEAD]" style="filled"]; 8 -> {9}; 9 -> {10}; @@ -40,13 +40,13 @@ subgraph { 13 -> {14} [style=dotted]; } -subgraph { - 15 [shape=box label="Enter function setter"]; +subgraph cluster__setter_ { + 15 [shape=box label="Enter function setter" style="filled"]; 16 [shape=box label="Enter block"]; 17 [shape=box label="Const: Int(1)"]; 18 [shape=box label="Assignmenet: F|/x2|"]; 19 [shape=box label="Exit block"]; - 20 [shape=box label="Exit function setter"]; + 20 [shape=box label="Exit function setter" style="filled"]; 15 -> {16}; 16 -> {17}; @@ -55,17 +55,17 @@ subgraph { 19 -> {20}; } -subgraph val_x2 { - 21 [shape=box label="Enter property"]; +subgraph cluster_val_x2 { + 21 [shape=box label="Enter property" style="filled"]; 22 [shape=box label="Const: Int(1)"]; - 23 [shape=box label="Exit property"]; + 23 [shape=box label="Exit property" style="filled"]; 21 -> {22}; 22 -> {23}; } -subgraph foo { - 24 [shape=box label="Enter function foo"]; +subgraph cluster_foo { + 24 [shape=box label="Enter function foo" style="filled"]; 25 [shape=box label="Enter block"]; 26 [shape=box label="Const: Int(1)"]; 27 [shape=box label="Const: Int(1)"]; @@ -75,7 +75,7 @@ subgraph foo { 31 [shape=box label="Throw: throw #()"]; 32 [shape=box label="Stub[DEAD]"]; 33 [shape=box label="Exit block[DEAD]"]; - 34 [shape=box label="Exit function foo[DEAD]"]; + 34 [shape=box label="Exit function foo[DEAD]" style="filled"]; 24 -> {25}; 25 -> {26}; @@ -89,14 +89,14 @@ subgraph foo { 33 -> {34} [style=dotted]; } -subgraph { - 35 [shape=box label="Enter function "]; - 36 [shape=box label="Exit function "]; +subgraph cluster__init_ { + 35 [shape=box label="Enter function " style="filled"]; + 36 [shape=box label="Exit function " style="filled"]; 35 -> {36}; } -subgraph { +subgraph cluster__getter_ { 37 [shape=box label="Enter init block"]; 38 [shape=box label="Enter block"]; 39 [shape=box label="Function call: #()"]; @@ -104,10 +104,10 @@ subgraph { 41 [shape=box label="Stub[DEAD]"]; 42 [shape=box label="Exit block[DEAD]"]; 43 [shape=box label="Exit init block[DEAD]"]; - 44 [shape=box label="Enter function getter"]; + 44 [shape=box label="Enter function getter" style="filled"]; 45 [shape=box label="Enter block"]; 46 [shape=box label="Exit block"]; - 47 [shape=box label="Exit function getter"]; + 47 [shape=box label="Exit function getter" style="filled"]; 37 -> {38}; 38 -> {39}; @@ -120,14 +120,14 @@ subgraph { 46 -> {47}; } -subgraph { - 48 [shape=box label="Enter function "]; - 49 [shape=box label="Exit function "]; +subgraph cluster__init_ { + 48 [shape=box label="Enter function " style="filled"]; + 49 [shape=box label="Exit function " style="filled"]; 48 -> {49}; } -subgraph val_x3 { +subgraph cluster_val_x3 { 50 [shape=box label="Enter init block"]; 51 [shape=box label="Enter block"]; 52 [shape=box label="Function call: #()"]; @@ -136,7 +136,7 @@ subgraph val_x3 { 55 [shape=box label="Const: Int(1)[DEAD]"]; 56 [shape=box label="Exit block[DEAD]"]; 57 [shape=box label="Exit init block[DEAD]"]; - 58 [shape=box label="Enter property"]; + 58 [shape=box label="Enter property" style="filled"]; 59 [shape=box label="Enter function anonymousFunction"]; 60 [shape=box label="Enter block"]; 61 [shape=box label="Function call: #()"]; @@ -165,7 +165,7 @@ subgraph val_x3 { throw #() } )[DEAD]"]; - 67 [shape=box label="Exit property[DEAD]"]; + 67 [shape=box label="Exit property[DEAD]" style="filled"]; 50 -> {51}; 51 -> {52}; @@ -185,8 +185,8 @@ subgraph val_x3 { 66 -> {67} [style=dotted]; } -subgraph val_x4 { - 68 [shape=box label="Enter property"]; +subgraph cluster_val_x4 { + 68 [shape=box label="Enter property" style="filled"]; 69 [shape=box label="Try expression enter"]; 70 [shape=box label="Try main block enter"]; 71 [shape=box label="Enter block"]; @@ -204,7 +204,7 @@ subgraph val_x4 { 83 [shape=box label="Exit block"]; 84 [shape=box label="Catch exit"]; 85 [shape=box label="Try expression exit"]; - 86 [shape=box label="Exit property"]; + 86 [shape=box label="Exit property" style="filled"]; 68 -> {69}; 69 -> {70}; diff --git a/compiler/fir/resolve/testData/resolve/cfg/simple.dot b/compiler/fir/resolve/testData/resolve/cfg/simple.dot index 089d912a8db..7669cb0297c 100644 --- a/compiler/fir/resolve/testData/resolve/cfg/simple.dot +++ b/compiler/fir/resolve/testData/resolve/cfg/simple.dot @@ -1,19 +1,19 @@ digraph simple_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph foo { - 0 [shape=box label="Enter function foo"]; +subgraph cluster_foo { + 0 [shape=box label="Enter function foo" style="filled"]; 1 [shape=box label="Enter block"]; 2 [shape=box label="Exit block"]; - 3 [shape=box label="Exit function foo"]; + 3 [shape=box label="Exit function foo" style="filled"]; 0 -> {1}; 1 -> {2}; 2 -> {3}; } -subgraph test { - 4 [shape=box label="Enter function test"]; +subgraph cluster_test { + 4 [shape=box label="Enter function test" style="filled"]; 5 [shape=box label="Enter block"]; 6 [shape=box label="Const: Int(1)"]; 7 [shape=box label="Variable declaration: lval x: R|kotlin/Int|"]; @@ -23,7 +23,7 @@ subgraph test { 11 [shape=box label="Variable declaration: lval y: R|kotlin/Int|"]; 12 [shape=box label="Function call: R|/foo|()"]; 13 [shape=box label="Exit block"]; - 14 [shape=box label="Exit function test"]; + 14 [shape=box label="Exit function test" style="filled"]; 4 -> {5}; 5 -> {6}; diff --git a/compiler/fir/resolve/testData/resolve/cfg/tryCatch.dot b/compiler/fir/resolve/testData/resolve/cfg/tryCatch.dot index f218dc83b25..a0608584f5d 100644 --- a/compiler/fir/resolve/testData/resolve/cfg/tryCatch.dot +++ b/compiler/fir/resolve/testData/resolve/cfg/tryCatch.dot @@ -1,8 +1,8 @@ digraph tryCatch_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph test_1 { - 0 [shape=box label="Enter function test_1"]; +subgraph cluster_test_1 { + 0 [shape=box label="Enter function test_1" style="filled"]; 1 [shape=box label="Enter block"]; 2 [shape=box label="Try expression enter"]; 3 [shape=box label="Try main block enter"]; @@ -25,7 +25,7 @@ subgraph test_1 { 20 [shape=box label="Catch exit"]; 21 [shape=box label="Try expression exit"]; 22 [shape=box label="Exit block"]; - 23 [shape=box label="Exit function test_1"]; + 23 [shape=box label="Exit function test_1" style="filled"]; 0 -> {1}; 1 -> {2}; @@ -52,8 +52,8 @@ subgraph test_1 { 22 -> {23}; } -subgraph test_2 { - 24 [shape=box label="Enter function test_2"]; +subgraph cluster_test_2 { + 24 [shape=box label="Enter function test_2" style="filled"]; 25 [shape=box label="Enter block"]; 26 [shape=box label="Try expression enter"]; 27 [shape=box label="Try main block enter"]; @@ -69,7 +69,7 @@ subgraph test_2 { 37 [shape=box label="Try expression exit"]; 38 [shape=box label="Variable declaration: lval x: R|kotlin/Int|"]; 39 [shape=box label="Exit block"]; - 40 [shape=box label="Exit function test_2"]; + 40 [shape=box label="Exit function test_2" style="filled"]; 24 -> {25}; 25 -> {26}; @@ -89,8 +89,8 @@ subgraph test_2 { 39 -> {40}; } -subgraph test_3 { - 41 [shape=box label="Enter function test_3"]; +subgraph cluster_test_3 { + 41 [shape=box label="Enter function test_3" style="filled"]; 42 [shape=box label="Enter block"]; 43 [shape=box label="Enter while loop"]; 44 [shape=box label="Enter loop condition"]; @@ -158,7 +158,7 @@ subgraph test_3 { 106 [shape=box label="Const: Int(3)"]; 107 [shape=box label="Variable declaration: lval z: R|kotlin/Int|"]; 108 [shape=box label="Exit block"]; - 109 [shape=box label="Exit function test_3"]; + 109 [shape=box label="Exit function test_3" style="filled"]; 41 -> {42}; 42 -> {43}; diff --git a/compiler/fir/resolve/testData/resolve/cfg/when.dot b/compiler/fir/resolve/testData/resolve/cfg/when.dot index af095017b70..2ae0e1b3039 100644 --- a/compiler/fir/resolve/testData/resolve/cfg/when.dot +++ b/compiler/fir/resolve/testData/resolve/cfg/when.dot @@ -1,8 +1,8 @@ digraph when_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph test_1 { - 0 [shape=box label="Enter function test_1"]; +subgraph cluster_test_1 { + 0 [shape=box label="Enter function test_1" style="filled"]; 1 [shape=box label="Enter block"]; 2 [shape=box label="Enter when"]; 3 [shape=box label="Enter when branch condition "]; @@ -46,7 +46,7 @@ subgraph test_1 { 41 [shape=box label="Exit when"]; 42 [shape=box label="Variable declaration: lval y: R|kotlin/Int|"]; 43 [shape=box label="Exit block"]; - 44 [shape=box label="Exit function test_1"]; + 44 [shape=box label="Exit function test_1" style="filled"]; 0 -> {1}; 1 -> {2}; @@ -95,8 +95,8 @@ subgraph test_1 { 43 -> {44}; } -subgraph test_2 { - 45 [shape=box label="Enter function test_2"]; +subgraph cluster_test_2 { + 45 [shape=box label="Enter function test_2" style="filled"]; 46 [shape=box label="Enter block"]; 47 [shape=box label="Enter when"]; 48 [shape=box label="Enter when branch condition "]; @@ -120,7 +120,7 @@ subgraph test_2 { 66 [shape=box label="Exit when branch result"]; 67 [shape=box label="Exit when"]; 68 [shape=box label="Exit block"]; - 69 [shape=box label="Exit function test_2"]; + 69 [shape=box label="Exit function test_2" style="filled"]; 45 -> {46}; 46 -> {47}; diff --git a/compiler/fir/resolve/testData/resolve/smartcasts/booleanOperators.dot b/compiler/fir/resolve/testData/resolve/smartcasts/booleanOperators.dot index 1561d1e04ba..76be6d59dc6 100644 --- a/compiler/fir/resolve/testData/resolve/smartcasts/booleanOperators.dot +++ b/compiler/fir/resolve/testData/resolve/smartcasts/booleanOperators.dot @@ -1,36 +1,36 @@ digraph booleanOperators_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph foo { - 0 [shape=box label="Enter function foo"]; - 1 [shape=box label="Exit function foo"]; +subgraph cluster_foo { + 0 [shape=box label="Enter function foo" style="filled"]; + 1 [shape=box label="Exit function foo" style="filled"]; 0 -> {1}; } -subgraph bool { - 2 [shape=box label="Enter function bool"]; - 3 [shape=box label="Exit function bool"]; +subgraph cluster_bool { + 2 [shape=box label="Enter function bool" style="filled"]; + 3 [shape=box label="Exit function bool" style="filled"]; 2 -> {3}; } -subgraph bar { - 4 [shape=box label="Enter function bar"]; - 5 [shape=box label="Exit function bar"]; +subgraph cluster_bar { + 4 [shape=box label="Enter function bar" style="filled"]; + 5 [shape=box label="Exit function bar" style="filled"]; 4 -> {5}; } -subgraph baz { - 6 [shape=box label="Enter function baz"]; - 7 [shape=box label="Exit function baz"]; +subgraph cluster_baz { + 6 [shape=box label="Enter function baz" style="filled"]; + 7 [shape=box label="Exit function baz" style="filled"]; 6 -> {7}; } -subgraph test_1 { - 8 [shape=box label="Enter function test_1"]; +subgraph cluster_test_1 { + 8 [shape=box label="Enter function test_1" style="filled"]; 9 [shape=box label="Enter block"]; 10 [shape=box label="Enter when"]; 11 [shape=box label="Enter when branch condition "]; @@ -58,7 +58,7 @@ subgraph test_1 { 33 [shape=box label="Exit when branch result"]; 34 [shape=box label="Exit when"]; 35 [shape=box label="Exit block"]; - 36 [shape=box label="Exit function test_1"]; + 36 [shape=box label="Exit function test_1" style="filled"]; 8 -> {9}; 9 -> {10}; @@ -90,8 +90,8 @@ subgraph test_1 { 35 -> {36}; } -subgraph test_2 { - 37 [shape=box label="Enter function test_2"]; +subgraph cluster_test_2 { + 37 [shape=box label="Enter function test_2" style="filled"]; 38 [shape=box label="Enter block"]; 39 [shape=box label="Enter when"]; 40 [shape=box label="Enter when branch condition "]; @@ -119,7 +119,7 @@ subgraph test_2 { 62 [shape=box label="Exit when branch result"]; 63 [shape=box label="Exit when"]; 64 [shape=box label="Exit block"]; - 65 [shape=box label="Exit function test_2"]; + 65 [shape=box label="Exit function test_2" style="filled"]; 37 -> {38}; 38 -> {39}; @@ -151,8 +151,8 @@ subgraph test_2 { 64 -> {65}; } -subgraph test_3 { - 66 [shape=box label="Enter function test_3"]; +subgraph cluster_test_3 { + 66 [shape=box label="Enter function test_3" style="filled"]; 67 [shape=box label="Enter block"]; 68 [shape=box label="Enter when"]; 69 [shape=box label="Enter when branch condition "]; @@ -172,7 +172,7 @@ subgraph test_3 { 83 [shape=box label="Exit when branch result"]; 84 [shape=box label="Exit when"]; 85 [shape=box label="Exit block"]; - 86 [shape=box label="Exit function test_3"]; + 86 [shape=box label="Exit function test_3" style="filled"]; 66 -> {67}; 67 -> {68}; @@ -196,8 +196,8 @@ subgraph test_3 { 85 -> {86}; } -subgraph test_4 { - 87 [shape=box label="Enter function test_4"]; +subgraph cluster_test_4 { + 87 [shape=box label="Enter function test_4" style="filled"]; 88 [shape=box label="Enter block"]; 89 [shape=box label="Enter when"]; 90 [shape=box label="Enter when branch condition "]; @@ -225,7 +225,7 @@ subgraph test_4 { 112 [shape=box label="Access variable R|/x|"]; 113 [shape=box label="Access variable #"]; 114 [shape=box label="Exit block"]; - 115 [shape=box label="Exit function test_4"]; + 115 [shape=box label="Exit function test_4" style="filled"]; 87 -> {88}; 88 -> {89}; @@ -257,8 +257,8 @@ subgraph test_4 { 114 -> {115}; } -subgraph test_5 { - 116 [shape=box label="Enter function test_5"]; +subgraph cluster_test_5 { + 116 [shape=box label="Enter function test_5" style="filled"]; 117 [shape=box label="Enter block"]; 118 [shape=box label="Enter when"]; 119 [shape=box label="Enter when branch condition "]; @@ -282,7 +282,7 @@ subgraph test_5 { 137 [shape=box label="Exit when branch result"]; 138 [shape=box label="Exit when"]; 139 [shape=box label="Exit block"]; - 140 [shape=box label="Exit function test_5"]; + 140 [shape=box label="Exit function test_5" style="filled"]; 116 -> {117}; 117 -> {118}; @@ -310,8 +310,8 @@ subgraph test_5 { 139 -> {140}; } -subgraph test_6 { - 141 [shape=box label="Enter function test_6"]; +subgraph cluster_test_6 { + 141 [shape=box label="Enter function test_6" style="filled"]; 142 [shape=box label="Enter block"]; 143 [shape=box label="Enter when"]; 144 [shape=box label="Enter when branch condition "]; @@ -336,7 +336,7 @@ subgraph test_6 { 163 [shape=box label="Exit when branch result"]; 164 [shape=box label="Exit when"]; 165 [shape=box label="Exit block"]; - 166 [shape=box label="Exit function test_6"]; + 166 [shape=box label="Exit function test_6" style="filled"]; 141 -> {142}; 142 -> {143}; @@ -366,8 +366,8 @@ subgraph test_6 { 165 -> {166}; } -subgraph test_7 { - 167 [shape=box label="Enter function test_7"]; +subgraph cluster_test_7 { + 167 [shape=box label="Enter function test_7" style="filled"]; 168 [shape=box label="Enter block"]; 169 [shape=box label="Enter when"]; 170 [shape=box label="Enter when branch condition "]; @@ -391,7 +391,7 @@ subgraph test_7 { 188 [shape=box label="Exit when branch result"]; 189 [shape=box label="Exit when"]; 190 [shape=box label="Exit block"]; - 191 [shape=box label="Exit function test_7"]; + 191 [shape=box label="Exit function test_7" style="filled"]; 167 -> {168}; 168 -> {169}; diff --git a/compiler/fir/resolve/testData/resolve/smartcasts/boundSmartcasts.dot b/compiler/fir/resolve/testData/resolve/smartcasts/boundSmartcasts.dot index 19802381db6..b95dfb05e9e 100644 --- a/compiler/fir/resolve/testData/resolve/smartcasts/boundSmartcasts.dot +++ b/compiler/fir/resolve/testData/resolve/smartcasts/boundSmartcasts.dot @@ -1,22 +1,22 @@ digraph boundSmartcasts_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph foo { - 0 [shape=box label="Enter function foo"]; - 1 [shape=box label="Exit function foo"]; +subgraph cluster_foo { + 0 [shape=box label="Enter function foo" style="filled"]; + 1 [shape=box label="Exit function foo" style="filled"]; 0 -> {1}; } -subgraph bar { - 2 [shape=box label="Enter function bar"]; - 3 [shape=box label="Exit function bar"]; +subgraph cluster_bar { + 2 [shape=box label="Enter function bar" style="filled"]; + 3 [shape=box label="Exit function bar" style="filled"]; 2 -> {3}; } -subgraph test_1 { - 4 [shape=box label="Enter function test_1"]; +subgraph cluster_test_1 { + 4 [shape=box label="Enter function test_1" style="filled"]; 5 [shape=box label="Enter block"]; 6 [shape=box label="Access variable R|/x|"]; 7 [shape=box label="Variable declaration: lval y: R|kotlin/Any|"]; @@ -39,7 +39,7 @@ subgraph test_1 { 24 [shape=box label="Exit when branch result"]; 25 [shape=box label="Exit when"]; 26 [shape=box label="Exit block"]; - 27 [shape=box label="Exit function test_1"]; + 27 [shape=box label="Exit function test_1" style="filled"]; 4 -> {5}; 5 -> {6}; @@ -66,8 +66,8 @@ subgraph test_1 { 26 -> {27}; } -subgraph test_2 { - 28 [shape=box label="Enter function test_2"]; +subgraph cluster_test_2 { + 28 [shape=box label="Enter function test_2" style="filled"]; 29 [shape=box label="Enter block"]; 30 [shape=box label="Access variable R|/x|"]; 31 [shape=box label="Variable declaration: lval y: R|kotlin/Any|"]; @@ -90,7 +90,7 @@ subgraph test_2 { 48 [shape=box label="Exit when branch result"]; 49 [shape=box label="Exit when"]; 50 [shape=box label="Exit block"]; - 51 [shape=box label="Exit function test_2"]; + 51 [shape=box label="Exit function test_2" style="filled"]; 28 -> {29}; 29 -> {30}; @@ -117,8 +117,8 @@ subgraph test_2 { 50 -> {51}; } -subgraph test_3 { - 52 [shape=box label="Enter function test_3"]; +subgraph cluster_test_3 { + 52 [shape=box label="Enter function test_3" style="filled"]; 53 [shape=box label="Enter block"]; 54 [shape=box label="Access variable R|/x|"]; 55 [shape=box label="Variable declaration: lvar z: R|kotlin/Any|"]; @@ -157,7 +157,7 @@ subgraph test_3 { 88 [shape=box label="Exit when branch result"]; 89 [shape=box label="Exit when"]; 90 [shape=box label="Exit block"]; - 91 [shape=box label="Exit function test_3"]; + 91 [shape=box label="Exit function test_3" style="filled"]; 52 -> {53}; 53 -> {54}; @@ -200,8 +200,8 @@ subgraph test_3 { 90 -> {91}; } -subgraph test_4 { - 92 [shape=box label="Enter function test_4"]; +subgraph cluster_test_4 { + 92 [shape=box label="Enter function test_4" style="filled"]; 93 [shape=box label="Enter block"]; 94 [shape=box label="Const: Int(1)"]; 95 [shape=box label="Variable declaration: lvar x: R|kotlin/Any|"]; @@ -232,7 +232,7 @@ subgraph test_4 { 120 [shape=box label="Exit when branch result"]; 121 [shape=box label="Exit when"]; 122 [shape=box label="Exit block"]; - 123 [shape=box label="Exit function test_4"]; + 123 [shape=box label="Exit function test_4" style="filled"]; 92 -> {93}; 93 -> {94}; diff --git a/compiler/fir/resolve/testData/resolve/smartcasts/casts.dot b/compiler/fir/resolve/testData/resolve/smartcasts/casts.dot index 72fd19f82f0..e7c37292711 100644 --- a/compiler/fir/resolve/testData/resolve/smartcasts/casts.dot +++ b/compiler/fir/resolve/testData/resolve/smartcasts/casts.dot @@ -1,15 +1,15 @@ digraph casts_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph test_1 { - 0 [shape=box label="Enter function test_1"]; +subgraph cluster_test_1 { + 0 [shape=box label="Enter function test_1" style="filled"]; 1 [shape=box label="Enter block"]; 2 [shape=box label="Access variable R|/x|"]; 3 [shape=box label="Type operator: x as String"]; 4 [shape=box label="Access variable R|/x|"]; 5 [shape=box label="Access variable R|kotlin/String.length|"]; 6 [shape=box label="Exit block"]; - 7 [shape=box label="Exit function test_1"]; + 7 [shape=box label="Exit function test_1" style="filled"]; 0 -> {1}; 1 -> {2}; @@ -20,8 +20,8 @@ subgraph test_1 { 6 -> {7}; } -subgraph test_2 { - 8 [shape=box label="Enter function test_2"]; +subgraph cluster_test_2 { + 8 [shape=box label="Enter function test_2" style="filled"]; 9 [shape=box label="Enter block"]; 10 [shape=box label="Enter when"]; 11 [shape=box label="Enter when branch condition "]; @@ -42,7 +42,7 @@ subgraph test_2 { 26 [shape=box label="Access variable R|/x|"]; 27 [shape=box label="Function call: R|/x|.R|kotlin/Boolean.not|()"]; 28 [shape=box label="Exit block"]; - 29 [shape=box label="Exit function test_2"]; + 29 [shape=box label="Exit function test_2" style="filled"]; 8 -> {9}; 9 -> {10}; @@ -67,8 +67,8 @@ subgraph test_2 { 28 -> {29}; } -subgraph test_3 { - 30 [shape=box label="Enter function test_3"]; +subgraph cluster_test_3 { + 30 [shape=box label="Enter function test_3" style="filled"]; 31 [shape=box label="Enter block"]; 32 [shape=box label="Enter when"]; 33 [shape=box label="Enter when branch condition "]; @@ -139,7 +139,7 @@ subgraph test_3 { 98 [shape=box label="Access variable R|/x|"]; 99 [shape=box label="Function call: R|/x|.#()"]; 100 [shape=box label="Exit block"]; - 101 [shape=box label="Exit function test_3"]; + 101 [shape=box label="Exit function test_3" style="filled"]; 30 -> {31}; 31 -> {32}; @@ -214,8 +214,8 @@ subgraph test_3 { 100 -> {101}; } -subgraph test_4 { - 102 [shape=box label="Enter function test_4"]; +subgraph cluster_test_4 { + 102 [shape=box label="Enter function test_4" style="filled"]; 103 [shape=box label="Enter block"]; 104 [shape=box label="Enter when"]; 105 [shape=box label="Enter when branch condition "]; @@ -262,7 +262,7 @@ subgraph test_4 { 146 [shape=box label="Access variable R|/b|"]; 147 [shape=box label="Function call: R|/b|.#()"]; 148 [shape=box label="Exit block"]; - 149 [shape=box label="Exit function test_4"]; + 149 [shape=box label="Exit function test_4" style="filled"]; 102 -> {103}; 103 -> {104}; diff --git a/compiler/fir/resolve/testData/resolve/smartcasts/elvis.dot b/compiler/fir/resolve/testData/resolve/smartcasts/elvis.dot index 7ce69a7bb45..4774965e069 100644 --- a/compiler/fir/resolve/testData/resolve/smartcasts/elvis.dot +++ b/compiler/fir/resolve/testData/resolve/smartcasts/elvis.dot @@ -1,22 +1,22 @@ digraph elvis_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph foo { - 0 [shape=box label="Enter function foo"]; - 1 [shape=box label="Exit function foo"]; +subgraph cluster_foo { + 0 [shape=box label="Enter function foo" style="filled"]; + 1 [shape=box label="Exit function foo" style="filled"]; 0 -> {1}; } -subgraph val_b { - 2 [shape=box label="Enter property"]; - 3 [shape=box label="Exit property"]; +subgraph cluster_val_b { + 2 [shape=box label="Enter property" style="filled"]; + 3 [shape=box label="Exit property" style="filled"]; 2 -> {3}; } -subgraph test_1 { - 4 [shape=box label="Enter function test_1"]; +subgraph cluster_test_1 { + 4 [shape=box label="Enter function test_1" style="filled"]; 5 [shape=box label="Enter block"]; 6 [shape=box label="Enter when"]; 7 [shape=box label="Enter when branch condition "]; @@ -53,7 +53,7 @@ subgraph test_1 { 38 [shape=box label="Exit when branch result"]; 39 [shape=box label="Exit when"]; 40 [shape=box label="Exit block"]; - 41 [shape=box label="Exit function test_1"]; + 41 [shape=box label="Exit function test_1" style="filled"]; 4 -> {5}; 5 -> {6}; diff --git a/compiler/fir/resolve/testData/resolve/smartcasts/endlessLoops.dot b/compiler/fir/resolve/testData/resolve/smartcasts/endlessLoops.dot index c1d2f007071..5e3aeed17dc 100644 --- a/compiler/fir/resolve/testData/resolve/smartcasts/endlessLoops.dot +++ b/compiler/fir/resolve/testData/resolve/smartcasts/endlessLoops.dot @@ -1,15 +1,15 @@ digraph endlessLoops_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph foo { - 0 [shape=box label="Enter function foo"]; - 1 [shape=box label="Exit function foo"]; +subgraph cluster_foo { + 0 [shape=box label="Enter function foo" style="filled"]; + 1 [shape=box label="Exit function foo" style="filled"]; 0 -> {1}; } -subgraph test_1 { - 2 [shape=box label="Enter function test_1"]; +subgraph cluster_test_1 { + 2 [shape=box label="Enter function test_1" style="filled"]; 3 [shape=box label="Enter block"]; 4 [shape=box label="Enter while loop"]; 5 [shape=box label="Enter loop condition"]; @@ -41,7 +41,7 @@ subgraph test_1 { 31 [shape=box label="Access variable R|/x|"]; 32 [shape=box label="Function call: R|/x|.R|/A.foo|()"]; 33 [shape=box label="Exit block"]; - 34 [shape=box label="Exit function test_1"]; + 34 [shape=box label="Exit function test_1" style="filled"]; 2 -> {3}; 3 -> {4}; @@ -79,8 +79,8 @@ subgraph test_1 { 33 -> {34}; } -subgraph test_2 { - 35 [shape=box label="Enter function test_2"]; +subgraph cluster_test_2 { + 35 [shape=box label="Enter function test_2" style="filled"]; 36 [shape=box label="Enter block"]; 37 [shape=box label="Enter while loop"]; 38 [shape=box label="Enter loop condition"]; @@ -112,7 +112,7 @@ subgraph test_2 { 64 [shape=box label="Access variable R|/x|"]; 65 [shape=box label="Function call: R|/x|.R|/A.foo|()"]; 66 [shape=box label="Exit block"]; - 67 [shape=box label="Exit function test_2"]; + 67 [shape=box label="Exit function test_2" style="filled"]; 35 -> {36}; 36 -> {37}; @@ -150,8 +150,8 @@ subgraph test_2 { 66 -> {67}; } -subgraph test_3 { - 68 [shape=box label="Enter function test_3"]; +subgraph cluster_test_3 { + 68 [shape=box label="Enter function test_3" style="filled"]; 69 [shape=box label="Enter block"]; 70 [shape=box label="Enter while loop"]; 71 [shape=box label="Enter loop condition"]; @@ -198,7 +198,7 @@ subgraph test_3 { 112 [shape=box label="Access variable R|/x|"]; 113 [shape=box label="Function call: R|/x|.R|/A.foo|()"]; 114 [shape=box label="Exit block"]; - 115 [shape=box label="Exit function test_3"]; + 115 [shape=box label="Exit function test_3" style="filled"]; 68 -> {69}; 69 -> {70}; @@ -252,8 +252,8 @@ subgraph test_3 { 114 -> {115}; } -subgraph test_4 { - 116 [shape=box label="Enter function test_4"]; +subgraph cluster_test_4 { + 116 [shape=box label="Enter function test_4" style="filled"]; 117 [shape=box label="Enter block"]; 118 [shape=box label="Enter while loop"]; 119 [shape=box label="Enter loop condition"]; @@ -287,7 +287,7 @@ subgraph test_4 { 147 [shape=box label="Access variable R|/x|"]; 148 [shape=box label="Function call: R|/x|.#()"]; 149 [shape=box label="Exit block"]; - 150 [shape=box label="Exit function test_4"]; + 150 [shape=box label="Exit function test_4" style="filled"]; 116 -> {117}; 117 -> {118}; @@ -328,8 +328,8 @@ subgraph test_4 { 149 -> {150}; } -subgraph test_5 { - 151 [shape=box label="Enter function test_5"]; +subgraph cluster_test_5 { + 151 [shape=box label="Enter function test_5" style="filled"]; 152 [shape=box label="Enter block"]; 153 [shape=box label="Enter do-while loop"]; 154 [shape=box label="Enter loop block"]; @@ -361,7 +361,7 @@ subgraph test_5 { 180 [shape=box label="Access variable R|/x|"]; 181 [shape=box label="Function call: R|/x|.R|/A.foo|()"]; 182 [shape=box label="Exit block"]; - 183 [shape=box label="Exit function test_5"]; + 183 [shape=box label="Exit function test_5" style="filled"]; 151 -> {152}; 152 -> {153}; @@ -399,8 +399,8 @@ subgraph test_5 { 182 -> {183}; } -subgraph test_6 { - 184 [shape=box label="Enter function test_6"]; +subgraph cluster_test_6 { + 184 [shape=box label="Enter function test_6" style="filled"]; 185 [shape=box label="Enter block"]; 186 [shape=box label="Enter do-while loop"]; 187 [shape=box label="Enter loop block"]; @@ -432,7 +432,7 @@ subgraph test_6 { 213 [shape=box label="Access variable R|/x|"]; 214 [shape=box label="Function call: R|/x|.R|/A.foo|()"]; 215 [shape=box label="Exit block"]; - 216 [shape=box label="Exit function test_6"]; + 216 [shape=box label="Exit function test_6" style="filled"]; 184 -> {185}; 185 -> {186}; @@ -470,8 +470,8 @@ subgraph test_6 { 215 -> {216}; } -subgraph test_7 { - 217 [shape=box label="Enter function test_7"]; +subgraph cluster_test_7 { + 217 [shape=box label="Enter function test_7" style="filled"]; 218 [shape=box label="Enter block"]; 219 [shape=box label="Enter do-while loop"]; 220 [shape=box label="Enter loop block"]; @@ -488,7 +488,7 @@ subgraph test_7 { 231 [shape=box label="Access variable R|/x|[DEAD]"]; 232 [shape=box label="Function call: R|/x|.#()[DEAD]"]; 233 [shape=box label="Exit block[DEAD]"]; - 234 [shape=box label="Exit function test_7[DEAD]"]; + 234 [shape=box label="Exit function test_7[DEAD]" style="filled"]; 217 -> {218}; 218 -> {219}; diff --git a/compiler/fir/resolve/testData/resolve/smartcasts/equalsAndIdentity.dot b/compiler/fir/resolve/testData/resolve/smartcasts/equalsAndIdentity.dot index 789e5a92e62..8908f0882ea 100644 --- a/compiler/fir/resolve/testData/resolve/smartcasts/equalsAndIdentity.dot +++ b/compiler/fir/resolve/testData/resolve/smartcasts/equalsAndIdentity.dot @@ -1,15 +1,15 @@ digraph equalsAndIdentity_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph foo { - 0 [shape=box label="Enter function foo"]; - 1 [shape=box label="Exit function foo"]; +subgraph cluster_foo { + 0 [shape=box label="Enter function foo" style="filled"]; + 1 [shape=box label="Exit function foo" style="filled"]; 0 -> {1}; } -subgraph test_1 { - 2 [shape=box label="Enter function test_1"]; +subgraph cluster_test_1 { + 2 [shape=box label="Enter function test_1" style="filled"]; 3 [shape=box label="Enter block"]; 4 [shape=box label="Enter when"]; 5 [shape=box label="Enter when branch condition "]; @@ -50,7 +50,7 @@ subgraph test_1 { 40 [shape=box label="Exit when branch result"]; 41 [shape=box label="Exit when"]; 42 [shape=box label="Exit block"]; - 43 [shape=box label="Exit function test_1"]; + 43 [shape=box label="Exit function test_1" style="filled"]; 2 -> {3}; 3 -> {4}; @@ -95,8 +95,8 @@ subgraph test_1 { 42 -> {43}; } -subgraph test_2 { - 44 [shape=box label="Enter function test_2"]; +subgraph cluster_test_2 { + 44 [shape=box label="Enter function test_2" style="filled"]; 45 [shape=box label="Enter block"]; 46 [shape=box label="Enter when"]; 47 [shape=box label="Enter when branch condition "]; @@ -137,7 +137,7 @@ subgraph test_2 { 82 [shape=box label="Exit when branch result"]; 83 [shape=box label="Exit when"]; 84 [shape=box label="Exit block"]; - 85 [shape=box label="Exit function test_2"]; + 85 [shape=box label="Exit function test_2" style="filled"]; 44 -> {45}; 45 -> {46}; @@ -182,8 +182,8 @@ subgraph test_2 { 84 -> {85}; } -subgraph test_3 { - 86 [shape=box label="Enter function test_3"]; +subgraph cluster_test_3 { + 86 [shape=box label="Enter function test_3" style="filled"]; 87 [shape=box label="Enter block"]; 88 [shape=box label="Enter when"]; 89 [shape=box label="Enter when branch condition "]; @@ -241,7 +241,7 @@ subgraph test_3 { 141 [shape=box label="Exit when branch result"]; 142 [shape=box label="Exit when"]; 143 [shape=box label="Exit block"]; - 144 [shape=box label="Exit function test_3"]; + 144 [shape=box label="Exit function test_3" style="filled"]; 86 -> {87}; 87 -> {88}; diff --git a/compiler/fir/resolve/testData/resolve/smartcasts/equalsToBoolean.dot b/compiler/fir/resolve/testData/resolve/smartcasts/equalsToBoolean.dot index acc2eeadb53..f0a8fdeace4 100644 --- a/compiler/fir/resolve/testData/resolve/smartcasts/equalsToBoolean.dot +++ b/compiler/fir/resolve/testData/resolve/smartcasts/equalsToBoolean.dot @@ -1,22 +1,22 @@ digraph equalsToBoolean_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph foo { - 0 [shape=box label="Enter function foo"]; - 1 [shape=box label="Exit function foo"]; +subgraph cluster_foo { + 0 [shape=box label="Enter function foo" style="filled"]; + 1 [shape=box label="Exit function foo" style="filled"]; 0 -> {1}; } -subgraph val_b { - 2 [shape=box label="Enter property"]; - 3 [shape=box label="Exit property"]; +subgraph cluster_val_b { + 2 [shape=box label="Enter property" style="filled"]; + 3 [shape=box label="Exit property" style="filled"]; 2 -> {3}; } -subgraph test_1 { - 4 [shape=box label="Enter function test_1"]; +subgraph cluster_test_1 { + 4 [shape=box label="Enter function test_1" style="filled"]; 5 [shape=box label="Enter block"]; 6 [shape=box label="Enter when"]; 7 [shape=box label="Enter when branch condition "]; @@ -40,7 +40,7 @@ subgraph test_1 { 25 [shape=box label="Exit when branch result"]; 26 [shape=box label="Exit when"]; 27 [shape=box label="Exit block"]; - 28 [shape=box label="Exit function test_1"]; + 28 [shape=box label="Exit function test_1" style="filled"]; 4 -> {5}; 5 -> {6}; @@ -68,8 +68,8 @@ subgraph test_1 { 27 -> {28}; } -subgraph test_2 { - 29 [shape=box label="Enter function test_2"]; +subgraph cluster_test_2 { + 29 [shape=box label="Enter function test_2" style="filled"]; 30 [shape=box label="Enter block"]; 31 [shape=box label="Enter when"]; 32 [shape=box label="Enter when branch condition "]; @@ -93,7 +93,7 @@ subgraph test_2 { 50 [shape=box label="Exit when branch result"]; 51 [shape=box label="Exit when"]; 52 [shape=box label="Exit block"]; - 53 [shape=box label="Exit function test_2"]; + 53 [shape=box label="Exit function test_2" style="filled"]; 29 -> {30}; 30 -> {31}; @@ -121,8 +121,8 @@ subgraph test_2 { 52 -> {53}; } -subgraph test_3 { - 54 [shape=box label="Enter function test_3"]; +subgraph cluster_test_3 { + 54 [shape=box label="Enter function test_3" style="filled"]; 55 [shape=box label="Enter block"]; 56 [shape=box label="Enter when"]; 57 [shape=box label="Enter when branch condition "]; @@ -146,7 +146,7 @@ subgraph test_3 { 75 [shape=box label="Exit when branch result"]; 76 [shape=box label="Exit when"]; 77 [shape=box label="Exit block"]; - 78 [shape=box label="Exit function test_3"]; + 78 [shape=box label="Exit function test_3" style="filled"]; 54 -> {55}; 55 -> {56}; @@ -174,8 +174,8 @@ subgraph test_3 { 77 -> {78}; } -subgraph test_4 { - 79 [shape=box label="Enter function test_4"]; +subgraph cluster_test_4 { + 79 [shape=box label="Enter function test_4" style="filled"]; 80 [shape=box label="Enter block"]; 81 [shape=box label="Enter when"]; 82 [shape=box label="Enter when branch condition "]; @@ -199,7 +199,7 @@ subgraph test_4 { 100 [shape=box label="Exit when branch result"]; 101 [shape=box label="Exit when"]; 102 [shape=box label="Exit block"]; - 103 [shape=box label="Exit function test_4"]; + 103 [shape=box label="Exit function test_4" style="filled"]; 79 -> {80}; 80 -> {81}; @@ -227,8 +227,8 @@ subgraph test_4 { 102 -> {103}; } -subgraph test_5 { - 104 [shape=box label="Enter function test_5"]; +subgraph cluster_test_5 { + 104 [shape=box label="Enter function test_5" style="filled"]; 105 [shape=box label="Enter block"]; 106 [shape=box label="Enter when"]; 107 [shape=box label="Enter when branch condition "]; @@ -252,7 +252,7 @@ subgraph test_5 { 125 [shape=box label="Exit when branch result"]; 126 [shape=box label="Exit when"]; 127 [shape=box label="Exit block"]; - 128 [shape=box label="Exit function test_5"]; + 128 [shape=box label="Exit function test_5" style="filled"]; 104 -> {105}; 105 -> {106}; @@ -280,8 +280,8 @@ subgraph test_5 { 127 -> {128}; } -subgraph test_6 { - 129 [shape=box label="Enter function test_6"]; +subgraph cluster_test_6 { + 129 [shape=box label="Enter function test_6" style="filled"]; 130 [shape=box label="Enter block"]; 131 [shape=box label="Enter when"]; 132 [shape=box label="Enter when branch condition "]; @@ -305,7 +305,7 @@ subgraph test_6 { 150 [shape=box label="Exit when branch result"]; 151 [shape=box label="Exit when"]; 152 [shape=box label="Exit block"]; - 153 [shape=box label="Exit function test_6"]; + 153 [shape=box label="Exit function test_6" style="filled"]; 129 -> {130}; 130 -> {131}; @@ -333,8 +333,8 @@ subgraph test_6 { 152 -> {153}; } -subgraph test_7 { - 154 [shape=box label="Enter function test_7"]; +subgraph cluster_test_7 { + 154 [shape=box label="Enter function test_7" style="filled"]; 155 [shape=box label="Enter block"]; 156 [shape=box label="Enter when"]; 157 [shape=box label="Enter when branch condition "]; @@ -358,7 +358,7 @@ subgraph test_7 { 175 [shape=box label="Exit when branch result"]; 176 [shape=box label="Exit when"]; 177 [shape=box label="Exit block"]; - 178 [shape=box label="Exit function test_7"]; + 178 [shape=box label="Exit function test_7" style="filled"]; 154 -> {155}; 155 -> {156}; @@ -386,8 +386,8 @@ subgraph test_7 { 177 -> {178}; } -subgraph test_8 { - 179 [shape=box label="Enter function test_8"]; +subgraph cluster_test_8 { + 179 [shape=box label="Enter function test_8" style="filled"]; 180 [shape=box label="Enter block"]; 181 [shape=box label="Enter when"]; 182 [shape=box label="Enter when branch condition "]; @@ -411,7 +411,7 @@ subgraph test_8 { 200 [shape=box label="Exit when branch result"]; 201 [shape=box label="Exit when"]; 202 [shape=box label="Exit block"]; - 203 [shape=box label="Exit function test_8"]; + 203 [shape=box label="Exit function test_8" style="filled"]; 179 -> {180}; 180 -> {181}; diff --git a/compiler/fir/resolve/testData/resolve/smartcasts/inPlaceLambdas.dot b/compiler/fir/resolve/testData/resolve/smartcasts/inPlaceLambdas.dot index 86e5a6f986d..1f9bc6c25ef 100644 --- a/compiler/fir/resolve/testData/resolve/smartcasts/inPlaceLambdas.dot +++ b/compiler/fir/resolve/testData/resolve/smartcasts/inPlaceLambdas.dot @@ -1,26 +1,26 @@ digraph inPlaceLambdas_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph foo { - 0 [shape=box label="Enter function foo"]; - 1 [shape=box label="Exit function foo"]; +subgraph cluster_foo { + 0 [shape=box label="Enter function foo" style="filled"]; + 1 [shape=box label="Exit function foo" style="filled"]; 0 -> {1}; } -subgraph bar { - 2 [shape=box label="Enter function bar"]; - 3 [shape=box label="Exit function bar"]; +subgraph cluster_bar { + 2 [shape=box label="Enter function bar" style="filled"]; + 3 [shape=box label="Exit function bar" style="filled"]; 2 -> {3}; } -subgraph run { - 4 [shape=box label="Enter function run"]; +subgraph cluster_run { + 4 [shape=box label="Enter function run" style="filled"]; 5 [shape=box label="Enter block"]; 6 [shape=box label="Function call: R|/block|.R|FakeOverride|()"]; 7 [shape=box label="Exit block"]; - 8 [shape=box label="Exit function run"]; + 8 [shape=box label="Exit function run" style="filled"]; 4 -> {5}; 5 -> {6}; @@ -28,8 +28,8 @@ subgraph run { 7 -> {8}; } -subgraph test_1 { - 9 [shape=box label="Enter function test_1"]; +subgraph cluster_test_1 { + 9 [shape=box label="Enter function test_1" style="filled"]; 10 [shape=box label="Enter block"]; 11 [shape=box label="Enter when"]; 12 [shape=box label="Enter when branch condition "]; @@ -56,7 +56,7 @@ subgraph test_1 { 30 [shape=box label="Exit when branch result"]; 31 [shape=box label="Exit when"]; 32 [shape=box label="Exit block"]; - 33 [shape=box label="Exit function test_1"]; + 33 [shape=box label="Exit function test_1" style="filled"]; 9 -> {10}; 10 -> {11}; @@ -84,8 +84,8 @@ subgraph test_1 { 32 -> {33}; } -subgraph test_2 { - 34 [shape=box label="Enter function test_2"]; +subgraph cluster_test_2 { + 34 [shape=box label="Enter function test_2" style="filled"]; 35 [shape=box label="Enter block"]; 36 [shape=box label="Enter function anonymousFunction"]; 37 [shape=box label="Enter block"]; @@ -100,7 +100,7 @@ subgraph test_2 { 43 [shape=box label="Access variable R|/x|"]; 44 [shape=box label="Function call: R|/x|.R|/B.bar|()"]; 45 [shape=box label="Exit block"]; - 46 [shape=box label="Exit function test_2"]; + 46 [shape=box label="Exit function test_2" style="filled"]; 34 -> {35}; 35 -> {36}; @@ -116,8 +116,8 @@ subgraph test_2 { 45 -> {46}; } -subgraph test_3 { - 47 [shape=box label="Enter function test_3"]; +subgraph cluster_test_3 { + 47 [shape=box label="Enter function test_3" style="filled"]; 48 [shape=box label="Enter block"]; 49 [shape=box label="Enter when"]; 50 [shape=box label="Enter when branch condition "]; @@ -149,7 +149,7 @@ subgraph test_3 { 72 [shape=box label="Exit when branch result"]; 73 [shape=box label="Exit when"]; 74 [shape=box label="Exit block"]; - 75 [shape=box label="Exit function test_3"]; + 75 [shape=box label="Exit function test_3" style="filled"]; 47 -> {48}; 48 -> {49}; diff --git a/compiler/fir/resolve/testData/resolve/smartcasts/nullability.dot b/compiler/fir/resolve/testData/resolve/smartcasts/nullability.dot index 6c8516e9b4a..4c9908fb49a 100644 --- a/compiler/fir/resolve/testData/resolve/smartcasts/nullability.dot +++ b/compiler/fir/resolve/testData/resolve/smartcasts/nullability.dot @@ -1,50 +1,50 @@ digraph nullability_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph foo { - 0 [shape=box label="Enter function foo"]; - 1 [shape=box label="Exit function foo"]; +subgraph cluster_foo { + 0 [shape=box label="Enter function foo" style="filled"]; + 1 [shape=box label="Exit function foo" style="filled"]; 0 -> {1}; } -subgraph getA { - 2 [shape=box label="Enter function getA"]; - 3 [shape=box label="Exit function getA"]; +subgraph cluster_getA { + 2 [shape=box label="Enter function getA" style="filled"]; + 3 [shape=box label="Exit function getA" style="filled"]; 2 -> {3}; } -subgraph val_s { - 4 [shape=box label="Enter property"]; - 5 [shape=box label="Exit property"]; +subgraph cluster_val_s { + 4 [shape=box label="Enter property" style="filled"]; + 5 [shape=box label="Exit property" style="filled"]; 4 -> {5}; } -subgraph fs { - 6 [shape=box label="Enter function fs"]; - 7 [shape=box label="Exit function fs"]; +subgraph cluster_fs { + 6 [shape=box label="Enter function fs" style="filled"]; + 7 [shape=box label="Exit function fs" style="filled"]; 6 -> {7}; } -subgraph val_data { - 8 [shape=box label="Enter property"]; - 9 [shape=box label="Exit property"]; +subgraph cluster_val_data { + 8 [shape=box label="Enter property" style="filled"]; + 9 [shape=box label="Exit property" style="filled"]; 8 -> {9}; } -subgraph fdata { - 10 [shape=box label="Enter function fdata"]; - 11 [shape=box label="Exit function fdata"]; +subgraph cluster_fdata { + 10 [shape=box label="Enter function fdata" style="filled"]; + 11 [shape=box label="Exit function fdata" style="filled"]; 10 -> {11}; } -subgraph test_1 { - 12 [shape=box label="Enter function test_1"]; +subgraph cluster_test_1 { + 12 [shape=box label="Enter function test_1" style="filled"]; 13 [shape=box label="Enter block"]; 14 [shape=box label="Enter when"]; 15 [shape=box label="Enter when branch condition "]; @@ -68,7 +68,7 @@ subgraph test_1 { 33 [shape=box label="Access variable R|/x|"]; 34 [shape=box label="Function call: R|/x|.#()"]; 35 [shape=box label="Exit block"]; - 36 [shape=box label="Exit function test_1"]; + 36 [shape=box label="Exit function test_1" style="filled"]; 12 -> {13}; 13 -> {14}; @@ -96,8 +96,8 @@ subgraph test_1 { 35 -> {36}; } -subgraph test_2 { - 37 [shape=box label="Enter function test_2"]; +subgraph cluster_test_2 { + 37 [shape=box label="Enter function test_2" style="filled"]; 38 [shape=box label="Enter block"]; 39 [shape=box label="Enter when"]; 40 [shape=box label="Enter when branch condition "]; @@ -121,7 +121,7 @@ subgraph test_2 { 58 [shape=box label="Access variable R|/x|"]; 59 [shape=box label="Function call: R|/x|.#()"]; 60 [shape=box label="Exit block"]; - 61 [shape=box label="Exit function test_2"]; + 61 [shape=box label="Exit function test_2" style="filled"]; 37 -> {38}; 38 -> {39}; @@ -149,8 +149,8 @@ subgraph test_2 { 60 -> {61}; } -subgraph test_3 { - 62 [shape=box label="Enter function test_3"]; +subgraph cluster_test_3 { + 62 [shape=box label="Enter function test_3" style="filled"]; 63 [shape=box label="Enter block"]; 64 [shape=box label="Enter when"]; 65 [shape=box label="Access variable R|/x|"]; @@ -174,7 +174,7 @@ subgraph test_3 { 83 [shape=box label="Access variable R|/x|"]; 84 [shape=box label="Function call: R|/x|.R|/A.foo|()"]; 85 [shape=box label="Exit block"]; - 86 [shape=box label="Exit function test_3"]; + 86 [shape=box label="Exit function test_3" style="filled"]; 62 -> {63}; 63 -> {64}; @@ -203,8 +203,8 @@ subgraph test_3 { 85 -> {86}; } -subgraph test_4 { - 87 [shape=box label="Enter function test_4"]; +subgraph cluster_test_4 { + 87 [shape=box label="Enter function test_4" style="filled"]; 88 [shape=box label="Enter block"]; 89 [shape=box label="Enter when"]; 90 [shape=box label="Enter when branch condition "]; @@ -227,7 +227,7 @@ subgraph test_4 { 107 [shape=box label="Access variable R|/x|"]; 108 [shape=box label="Function call: R|/x|.R|/A.foo|()"]; 109 [shape=box label="Exit block"]; - 110 [shape=box label="Exit function test_4"]; + 110 [shape=box label="Exit function test_4" style="filled"]; 87 -> {88}; 88 -> {89}; @@ -255,8 +255,8 @@ subgraph test_4 { 109 -> {110}; } -subgraph test_5 { - 111 [shape=box label="Enter function test_5"]; +subgraph cluster_test_5 { + 111 [shape=box label="Enter function test_5" style="filled"]; 112 [shape=box label="Enter block"]; 113 [shape=box label="Enter when"]; 114 [shape=box label="Enter when branch condition "]; @@ -286,7 +286,7 @@ subgraph test_5 { 138 [shape=box label="Exit when branch result"]; 139 [shape=box label="Exit when"]; 140 [shape=box label="Exit block"]; - 141 [shape=box label="Exit function test_5"]; + 141 [shape=box label="Exit function test_5" style="filled"]; 111 -> {112}; 112 -> {113}; @@ -320,8 +320,8 @@ subgraph test_5 { 140 -> {141}; } -subgraph test_6 { - 142 [shape=box label="Enter function test_6"]; +subgraph cluster_test_6 { + 142 [shape=box label="Enter function test_6" style="filled"]; 143 [shape=box label="Enter block"]; 144 [shape=box label="Enter when"]; 145 [shape=box label="Access variable R|/q|"]; @@ -355,7 +355,7 @@ subgraph test_6 { 173 [shape=box label="Access variable R|/MyData.s|"]; 174 [shape=box label="Function call: R|/q|.R|/Q.data|.R|/MyData.s|.R|kotlin/Int.inc|()"]; 175 [shape=box label="Exit block"]; - 176 [shape=box label="Exit function test_6"]; + 176 [shape=box label="Exit function test_6" style="filled"]; 142 -> {143}; 143 -> {144}; @@ -394,8 +394,8 @@ subgraph test_6 { 175 -> {176}; } -subgraph test_7 { - 177 [shape=box label="Enter function test_7"]; +subgraph cluster_test_7 { + 177 [shape=box label="Enter function test_7" style="filled"]; 178 [shape=box label="Enter block"]; 179 [shape=box label="Enter when"]; 180 [shape=box label="Enter when branch condition "]; @@ -425,7 +425,7 @@ subgraph test_7 { 204 [shape=box label="Exit when branch result"]; 205 [shape=box label="Exit when"]; 206 [shape=box label="Exit block"]; - 207 [shape=box label="Exit function test_7"]; + 207 [shape=box label="Exit function test_7" style="filled"]; 177 -> {178}; 178 -> {179}; @@ -459,8 +459,8 @@ subgraph test_7 { 206 -> {207}; } -subgraph test_8 { - 208 [shape=box label="Enter function test_8"]; +subgraph cluster_test_8 { + 208 [shape=box label="Enter function test_8" style="filled"]; 209 [shape=box label="Enter block"]; 210 [shape=box label="Enter when"]; 211 [shape=box label="Enter when branch condition "]; @@ -480,7 +480,7 @@ subgraph test_8 { 225 [shape=box label="Exit when branch result"]; 226 [shape=box label="Exit when"]; 227 [shape=box label="Exit block"]; - 228 [shape=box label="Exit function test_8"]; + 228 [shape=box label="Exit function test_8" style="filled"]; 208 -> {209}; 209 -> {210}; @@ -504,8 +504,8 @@ subgraph test_8 { 227 -> {228}; } -subgraph test_9 { - 229 [shape=box label="Enter function test_9"]; +subgraph cluster_test_9 { + 229 [shape=box label="Enter function test_9" style="filled"]; 230 [shape=box label="Enter block"]; 231 [shape=box label="Enter when"]; 232 [shape=box label="Enter when branch condition "]; @@ -584,7 +584,7 @@ subgraph test_9 { 305 [shape=box label="Access variable R|/b|"]; 306 [shape=box label="Function call: R|/b|.#()"]; 307 [shape=box label="Exit block"]; - 308 [shape=box label="Exit function test_9"]; + 308 [shape=box label="Exit function test_9" style="filled"]; 229 -> {230}; 230 -> {231}; @@ -667,8 +667,8 @@ subgraph test_9 { 307 -> {308}; } -subgraph test_10 { - 309 [shape=box label="Enter function test_10"]; +subgraph cluster_test_10 { + 309 [shape=box label="Enter function test_10" style="filled"]; 310 [shape=box label="Enter block"]; 311 [shape=box label="Enter when"]; 312 [shape=box label="Enter when branch condition "]; @@ -747,7 +747,7 @@ subgraph test_10 { 385 [shape=box label="Access variable R|/b|"]; 386 [shape=box label="Function call: R|/b|.#()"]; 387 [shape=box label="Exit block"]; - 388 [shape=box label="Exit function test_10"]; + 388 [shape=box label="Exit function test_10" style="filled"]; 309 -> {310}; 310 -> {311}; diff --git a/compiler/fir/resolve/testData/resolve/smartcasts/returns.dot b/compiler/fir/resolve/testData/resolve/smartcasts/returns.dot index 8917b48bc47..32885c08b9f 100644 --- a/compiler/fir/resolve/testData/resolve/smartcasts/returns.dot +++ b/compiler/fir/resolve/testData/resolve/smartcasts/returns.dot @@ -1,8 +1,8 @@ digraph returns_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph test_0 { - 0 [shape=box label="Enter function test_0"]; +subgraph cluster_test_0 { + 0 [shape=box label="Enter function test_0" style="filled"]; 1 [shape=box label="Enter block"]; 2 [shape=box label="Enter when"]; 3 [shape=box label="Enter when branch condition "]; @@ -23,7 +23,7 @@ subgraph test_0 { 18 [shape=box label="Access variable R|/x|"]; 19 [shape=box label="Access variable #"]; 20 [shape=box label="Exit block"]; - 21 [shape=box label="Exit function test_0"]; + 21 [shape=box label="Exit function test_0" style="filled"]; 0 -> {1}; 1 -> {2}; @@ -48,8 +48,8 @@ subgraph test_0 { 20 -> {21}; } -subgraph test_1 { - 22 [shape=box label="Enter function test_1"]; +subgraph cluster_test_1 { + 22 [shape=box label="Enter function test_1" style="filled"]; 23 [shape=box label="Enter block"]; 24 [shape=box label="Enter when"]; 25 [shape=box label="Enter when branch condition "]; @@ -72,7 +72,7 @@ subgraph test_1 { 42 [shape=box label="Access variable R|/x|"]; 43 [shape=box label="Access variable R|kotlin/String.length|"]; 44 [shape=box label="Exit block"]; - 45 [shape=box label="Exit function test_1"]; + 45 [shape=box label="Exit function test_1" style="filled"]; 22 -> {23}; 23 -> {24}; @@ -100,29 +100,29 @@ subgraph test_1 { 44 -> {45}; } -subgraph foo { - 46 [shape=box label="Enter function foo"]; - 47 [shape=box label="Exit function foo"]; +subgraph cluster_foo { + 46 [shape=box label="Enter function foo" style="filled"]; + 47 [shape=box label="Exit function foo" style="filled"]; 46 -> {47}; } -subgraph bar { - 48 [shape=box label="Enter function bar"]; - 49 [shape=box label="Exit function bar"]; +subgraph cluster_bar { + 48 [shape=box label="Enter function bar" style="filled"]; + 49 [shape=box label="Exit function bar" style="filled"]; 48 -> {49}; } -subgraph baz { - 50 [shape=box label="Enter function baz"]; - 51 [shape=box label="Exit function baz"]; +subgraph cluster_baz { + 50 [shape=box label="Enter function baz" style="filled"]; + 51 [shape=box label="Exit function baz" style="filled"]; 50 -> {51}; } -subgraph test_2 { - 52 [shape=box label="Enter function test_2"]; +subgraph cluster_test_2 { + 52 [shape=box label="Enter function test_2" style="filled"]; 53 [shape=box label="Enter block"]; 54 [shape=box label="Enter when"]; 55 [shape=box label="Enter when branch condition "]; @@ -158,7 +158,7 @@ subgraph test_2 { 85 [shape=box label="Access variable R|/x|"]; 86 [shape=box label="Function call: R|/x|.#()"]; 87 [shape=box label="Exit block"]; - 88 [shape=box label="Exit function test_2"]; + 88 [shape=box label="Exit function test_2" style="filled"]; 52 -> {53}; 53 -> {54}; @@ -199,8 +199,8 @@ subgraph test_2 { 87 -> {88}; } -subgraph test_3 { - 89 [shape=box label="Enter function test_3"]; +subgraph cluster_test_3 { + 89 [shape=box label="Enter function test_3" style="filled"]; 90 [shape=box label="Enter block"]; 91 [shape=box label="Enter when"]; 92 [shape=box label="Enter when branch condition "]; @@ -234,7 +234,7 @@ subgraph test_3 { 120 [shape=box label="Access variable R|/x|"]; 121 [shape=box label="Function call: R|/x|.#()"]; 122 [shape=box label="Exit block"]; - 123 [shape=box label="Exit function test_3"]; + 123 [shape=box label="Exit function test_3" style="filled"]; 89 -> {90}; 90 -> {91}; diff --git a/compiler/fir/resolve/testData/resolve/smartcasts/simpleIf.dot b/compiler/fir/resolve/testData/resolve/smartcasts/simpleIf.dot index b5f3da8b8aa..8f0a7603c38 100644 --- a/compiler/fir/resolve/testData/resolve/smartcasts/simpleIf.dot +++ b/compiler/fir/resolve/testData/resolve/smartcasts/simpleIf.dot @@ -1,8 +1,8 @@ digraph simpleIf_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph test_1 { - 0 [shape=box label="Enter function test_1"]; +subgraph cluster_test_1 { + 0 [shape=box label="Enter function test_1" style="filled"]; 1 [shape=box label="Enter block"]; 2 [shape=box label="Enter when"]; 3 [shape=box label="Enter when branch condition "]; @@ -23,7 +23,7 @@ subgraph test_1 { 18 [shape=box label="Access variable R|/x|"]; 19 [shape=box label="Access variable #"]; 20 [shape=box label="Exit block"]; - 21 [shape=box label="Exit function test_1"]; + 21 [shape=box label="Exit function test_1" style="filled"]; 0 -> {1}; 1 -> {2}; @@ -48,8 +48,8 @@ subgraph test_1 { 20 -> {21}; } -subgraph test_2 { - 22 [shape=box label="Enter function test_2"]; +subgraph cluster_test_2 { + 22 [shape=box label="Enter function test_2" style="filled"]; 23 [shape=box label="Enter block"]; 24 [shape=box label="Access variable R|/x|"]; 25 [shape=box label="Type operator: x is String"]; @@ -72,7 +72,7 @@ subgraph test_2 { 42 [shape=box label="Access variable R|/x|"]; 43 [shape=box label="Access variable #"]; 44 [shape=box label="Exit block"]; - 45 [shape=box label="Exit function test_2"]; + 45 [shape=box label="Exit function test_2" style="filled"]; 22 -> {23}; 23 -> {24}; @@ -99,8 +99,8 @@ subgraph test_2 { 44 -> {45}; } -subgraph test_3 { - 46 [shape=box label="Enter function test_3"]; +subgraph cluster_test_3 { + 46 [shape=box label="Enter function test_3" style="filled"]; 47 [shape=box label="Enter block"]; 48 [shape=box label="Enter when"]; 49 [shape=box label="Enter when branch condition "]; @@ -128,7 +128,7 @@ subgraph test_3 { 71 [shape=box label="Exit when branch result"]; 72 [shape=box label="Exit when"]; 73 [shape=box label="Exit block"]; - 74 [shape=box label="Exit function test_3"]; + 74 [shape=box label="Exit function test_3" style="filled"]; 46 -> {47}; 47 -> {48}; diff --git a/compiler/fir/resolve/testData/resolve/smartcasts/when.dot b/compiler/fir/resolve/testData/resolve/smartcasts/when.dot index 8bd588084b6..bfa875d621e 100644 --- a/compiler/fir/resolve/testData/resolve/smartcasts/when.dot +++ b/compiler/fir/resolve/testData/resolve/smartcasts/when.dot @@ -1,22 +1,22 @@ digraph when_kt { -graph [splines=ortho] +graph [splines=ortho, nodesep=3] -subgraph foo { - 0 [shape=box label="Enter function foo"]; - 1 [shape=box label="Exit function foo"]; +subgraph cluster_foo { + 0 [shape=box label="Enter function foo" style="filled"]; + 1 [shape=box label="Exit function foo" style="filled"]; 0 -> {1}; } -subgraph bar { - 2 [shape=box label="Enter function bar"]; - 3 [shape=box label="Exit function bar"]; +subgraph cluster_bar { + 2 [shape=box label="Enter function bar" style="filled"]; + 3 [shape=box label="Exit function bar" style="filled"]; 2 -> {3}; } -subgraph test_1 { - 4 [shape=box label="Enter function test_1"]; +subgraph cluster_test_1 { + 4 [shape=box label="Enter function test_1" style="filled"]; 5 [shape=box label="Enter block"]; 6 [shape=box label="Enter when"]; 7 [shape=box label="Enter when branch condition "]; @@ -84,7 +84,7 @@ subgraph test_1 { 69 [shape=box label="Exit when branch result"]; 70 [shape=box label="Exit when"]; 71 [shape=box label="Exit block"]; - 72 [shape=box label="Exit function test_1"]; + 72 [shape=box label="Exit function test_1" style="filled"]; 4 -> {5}; 5 -> {6}; @@ -156,8 +156,8 @@ subgraph test_1 { 71 -> {72}; } -subgraph test_2 { - 73 [shape=box label="Enter function test_2"]; +subgraph cluster_test_2 { + 73 [shape=box label="Enter function test_2" style="filled"]; 74 [shape=box label="Enter block"]; 75 [shape=box label="Enter when"]; 76 [shape=box label="Access variable R|/x|"]; @@ -222,7 +222,7 @@ subgraph test_2 { 135 [shape=box label="Exit when branch result"]; 136 [shape=box label="Exit when"]; 137 [shape=box label="Exit block"]; - 138 [shape=box label="Exit function test_2"]; + 138 [shape=box label="Exit function test_2" style="filled"]; 73 -> {74}; 74 -> {75}; @@ -291,8 +291,8 @@ subgraph test_2 { 137 -> {138}; } -subgraph test_3 { - 139 [shape=box label="Enter function test_3"]; +subgraph cluster_test_3 { + 139 [shape=box label="Enter function test_3" style="filled"]; 140 [shape=box label="Enter block"]; 141 [shape=box label="Enter when"]; 142 [shape=box label="Access variable R|/x|"]; @@ -375,7 +375,7 @@ subgraph test_3 { 219 [shape=box label="Exit when branch result"]; 220 [shape=box label="Exit when"]; 221 [shape=box label="Exit block"]; - 222 [shape=box label="Exit function test_3"]; + 222 [shape=box label="Exit function test_3" style="filled"]; 139 -> {140}; 140 -> {141}; @@ -462,8 +462,8 @@ subgraph test_3 { 221 -> {222}; } -subgraph test_4 { - 223 [shape=box label="Enter function test_4"]; +subgraph cluster_test_4 { + 223 [shape=box label="Enter function test_4" style="filled"]; 224 [shape=box label="Enter block"]; 225 [shape=box label="Enter when"]; 226 [shape=box label="Access variable R|/x|"]; @@ -486,7 +486,7 @@ subgraph test_4 { 243 [shape=box label="Access variable R|/x|"]; 244 [shape=box label="Function call: R|/x|.R|kotlin/Int.inc|()"]; 245 [shape=box label="Exit block"]; - 246 [shape=box label="Exit function test_4"]; + 246 [shape=box label="Exit function test_4" style="filled"]; 223 -> {224}; 224 -> {225}; diff --git a/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/AbstractFirCfgBuildingTest.kt b/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/AbstractFirCfgBuildingTest.kt index 18ab3463d37..d659ba2be71 100644 --- a/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/AbstractFirCfgBuildingTest.kt +++ b/compiler/fir/resolve/tests/org/jetbrains/kotlin/fir/AbstractFirCfgBuildingTest.kt @@ -60,7 +60,7 @@ abstract class AbstractFirCfgBuildingTest : AbstractFirResolveTestCase() { override fun visitFile(file: FirFile) { dotBuilder.appendln("digraph ${file.name.replace(".", "_")} {") - .appendln("graph [splines=ortho]") + .appendln("graph [splines=ortho, nodesep=3]") .appendln() super.visitFile(file) dotBuilder.appendln("}") @@ -86,7 +86,8 @@ fun ControlFlowGraph.dotRenderToStringBuilder(builder: StringBuilder, indexOffse with(builder) { val sortedNodes = sortNodes() val indices = sortedNodes.indicesMap().mapValues { (_, index) -> index + indexOffset } - appendln("subgraph ${name.replace(" ", "_")} {") + val graphName = name.replace(Regex("[ <>]"), "_") + appendln("subgraph cluster_$graphName {") fun CFGNode<*>.splitEdges(): Pair>, List>> = if (isDead) emptyList>() to followingNodes @@ -95,7 +96,12 @@ fun ControlFlowGraph.dotRenderToStringBuilder(builder: StringBuilder, indexOffse sortedNodes.forEach { append(INDENT) append(indices.getValue(it)) - appendln(" [shape=box label=\"${it.render().replace("\"", "")}\"];") + val attributes = mutableListOf("shape=box") + attributes += "label=\"${it.render().replace("\"", "")}\"" + if (it == enterNode || it == exitNode) { + attributes += "style=\"filled\"" + } + appendln(attributes.joinToString(separator = " ", prefix = " [", postfix = "];")) } appendln()