4bb7b1ac9f
Also fix graphs for enums with specialized entries - since we don't create property subgraphs for FirEnumEntry, there is no body to insert AnonymousObjectEnterNode, AnonymousObjectExitNode, and AnonymousObjectExpressionExitNode into.
315 lines
11 KiB
Plaintext
Vendored
315 lines
11 KiB
Plaintext
Vendored
digraph propertiesAndInitBlocks_kt {
|
|
graph [nodesep=3]
|
|
node [shape=box penwidth=2]
|
|
edge [penwidth=2]
|
|
|
|
subgraph cluster_0 {
|
|
color=red
|
|
0 [label="Enter function run" style="filled" fillcolor=red];
|
|
subgraph cluster_1 {
|
|
color=blue
|
|
1 [label="Enter block"];
|
|
2 [label="Function call: R|<local>/block|.R|SubstitutionOverride<kotlin/Function0.invoke: R|kotlin/Unit|>|()" style="filled" fillcolor=yellow];
|
|
3 [label="Exit block"];
|
|
}
|
|
4 [label="Exit function run" style="filled" fillcolor=red];
|
|
}
|
|
0 -> {1};
|
|
1 -> {2};
|
|
2 -> {3};
|
|
3 -> {4};
|
|
|
|
subgraph cluster_2 {
|
|
color=red
|
|
5 [label="Enter property" style="filled" fillcolor=red];
|
|
6 [label="Const: Int(1)"];
|
|
7 [label="Exit property" style="filled" fillcolor=red];
|
|
}
|
|
5 -> {6};
|
|
6 -> {7};
|
|
|
|
subgraph cluster_3 {
|
|
color=red
|
|
8 [label="Enter function getter" style="filled" fillcolor=red];
|
|
subgraph cluster_4 {
|
|
color=blue
|
|
9 [label="Enter block"];
|
|
10 [label="Const: Int(1)"];
|
|
11 [label="Jump: ^ Int(1)"];
|
|
12 [label="Stub" style="filled" fillcolor=gray];
|
|
13 [label="Exit block" style="filled" fillcolor=gray];
|
|
}
|
|
14 [label="Exit function getter" style="filled" fillcolor=red];
|
|
}
|
|
8 -> {9};
|
|
9 -> {10};
|
|
10 -> {11};
|
|
11 -> {14};
|
|
11 -> {12} [style=dotted];
|
|
12 -> {13} [style=dotted];
|
|
13 -> {14} [style=dotted];
|
|
|
|
subgraph cluster_5 {
|
|
color=red
|
|
15 [label="Enter function setter" style="filled" fillcolor=red];
|
|
subgraph cluster_6 {
|
|
color=blue
|
|
16 [label="Enter block"];
|
|
17 [label="Const: Int(1)"];
|
|
18 [label="Assignment: F|/x2|"];
|
|
19 [label="Exit block"];
|
|
}
|
|
20 [label="Exit function setter" style="filled" fillcolor=red];
|
|
}
|
|
15 -> {16};
|
|
16 -> {17};
|
|
17 -> {18};
|
|
18 -> {19};
|
|
19 -> {20};
|
|
|
|
subgraph cluster_7 {
|
|
color=red
|
|
21 [label="Enter property" style="filled" fillcolor=red];
|
|
22 [label="Const: Int(1)"];
|
|
23 [label="Exit property" style="filled" fillcolor=red];
|
|
}
|
|
21 -> {22};
|
|
22 -> {23};
|
|
|
|
subgraph cluster_8 {
|
|
color=red
|
|
58 [label="Enter function getter" style="filled" fillcolor=red];
|
|
subgraph cluster_9 {
|
|
color=blue
|
|
59 [label="Enter block"];
|
|
60 [label="Exit local class <getter>"];
|
|
61 [label="Exit block"];
|
|
}
|
|
62 [label="Exit function getter" style="filled" fillcolor=red];
|
|
}
|
|
subgraph cluster_10 {
|
|
color=blue
|
|
63 [label="Enter class GetterLocalClass" style="filled" fillcolor=red];
|
|
64 [label="Part of class initialization"];
|
|
subgraph cluster_11 {
|
|
color=blue
|
|
66 [label="Enter init block" style="filled" fillcolor=red];
|
|
subgraph cluster_12 {
|
|
color=blue
|
|
67 [label="Enter block"];
|
|
68 [label="Function call: R|java/lang/Exception.Exception|()" style="filled" fillcolor=yellow];
|
|
69 [label="Throw: throw R|java/lang/Exception.Exception|()"];
|
|
70 [label="Stub" style="filled" fillcolor=gray];
|
|
71 [label="Exit block" style="filled" fillcolor=gray];
|
|
}
|
|
72 [label="Exit init block" style="filled" fillcolor=red style="filled" fillcolor=gray];
|
|
}
|
|
65 [label="Exit class GetterLocalClass" style="filled" fillcolor=red style="filled" fillcolor=gray];
|
|
}
|
|
subgraph cluster_13 {
|
|
color=blue
|
|
73 [label="Enter function <init>" style="filled" fillcolor=red style="filled" fillcolor=gray];
|
|
74 [label="Delegated constructor call: super<R|kotlin/Any|>()" style="filled" fillcolor=yellow];
|
|
75 [label="Exit function <init>" style="filled" fillcolor=red];
|
|
}
|
|
58 -> {59};
|
|
59 -> {60};
|
|
60 -> {61 63};
|
|
60 -> {63} [style=dashed];
|
|
61 -> {62};
|
|
63 -> {64} [color=green];
|
|
63 -> {66 73} [color=red];
|
|
64 -> {66} [color=green];
|
|
64 -> {65} [style=dotted];
|
|
64 -> {66} [style=dashed];
|
|
65 -> {73} [style=dotted];
|
|
65 -> {73} [style=dashed];
|
|
66 -> {67};
|
|
67 -> {68};
|
|
68 -> {69};
|
|
69 -> {70} [style=dotted];
|
|
70 -> {71} [style=dotted];
|
|
71 -> {72} [style=dotted];
|
|
72 -> {65} [style=dotted];
|
|
73 -> {74};
|
|
74 -> {75};
|
|
|
|
subgraph cluster_14 {
|
|
color=red
|
|
76 [label="Enter property" style="filled" fillcolor=red];
|
|
77 [label="Postponed enter to lambda"];
|
|
subgraph cluster_15 {
|
|
color=blue
|
|
24 [label="Enter function anonymousFunction" style="filled" fillcolor=red];
|
|
subgraph cluster_16 {
|
|
color=blue
|
|
25 [label="Enter block"];
|
|
26 [label="Local function declaration <anonymous>"];
|
|
27 [label="Exit local class <anonymous>"];
|
|
28 [label="Function call: R|java/lang/Exception.Exception|()" style="filled" fillcolor=yellow];
|
|
29 [label="Throw: throw R|java/lang/Exception.Exception|()"];
|
|
30 [label="Stub" style="filled" fillcolor=gray];
|
|
31 [label="Exit block" style="filled" fillcolor=gray];
|
|
}
|
|
32 [label="Exit function anonymousFunction" style="filled" fillcolor=red style="filled" fillcolor=gray];
|
|
}
|
|
subgraph cluster_17 {
|
|
color=blue
|
|
44 [label="Enter class InitializerLocalClass" style="filled" fillcolor=red];
|
|
45 [label="Part of class initialization"];
|
|
subgraph cluster_18 {
|
|
color=blue
|
|
47 [label="Enter init block" style="filled" fillcolor=red];
|
|
subgraph cluster_19 {
|
|
color=blue
|
|
48 [label="Enter block"];
|
|
49 [label="Function call: R|java/lang/Exception.Exception|()" style="filled" fillcolor=yellow];
|
|
50 [label="Throw: throw R|java/lang/Exception.Exception|()"];
|
|
51 [label="Stub" style="filled" fillcolor=gray];
|
|
52 [label="Const: Int(1)" style="filled" fillcolor=gray];
|
|
53 [label="Exit block" style="filled" fillcolor=gray];
|
|
}
|
|
54 [label="Exit init block" style="filled" fillcolor=red style="filled" fillcolor=gray];
|
|
}
|
|
46 [label="Exit class InitializerLocalClass" style="filled" fillcolor=red style="filled" fillcolor=gray];
|
|
}
|
|
subgraph cluster_20 {
|
|
color=blue
|
|
55 [label="Enter function <init>" style="filled" fillcolor=red style="filled" fillcolor=gray];
|
|
56 [label="Delegated constructor call: super<R|kotlin/Any|>()" style="filled" fillcolor=yellow];
|
|
57 [label="Exit function <init>" style="filled" fillcolor=red];
|
|
}
|
|
subgraph cluster_21 {
|
|
color=blue
|
|
33 [label="Enter function foo" style="filled" fillcolor=red];
|
|
subgraph cluster_22 {
|
|
color=blue
|
|
34 [label="Enter block"];
|
|
35 [label="Const: Int(1)"];
|
|
36 [label="Const: Int(1)"];
|
|
37 [label="Function call: Int(1).R|kotlin/Int.plus|(...)" style="filled" fillcolor=yellow];
|
|
38 [label="Variable declaration: lval c: R|kotlin/Int|"];
|
|
39 [label="Function call: R|java/lang/Exception.Exception|()" style="filled" fillcolor=yellow];
|
|
40 [label="Throw: throw R|java/lang/Exception.Exception|()"];
|
|
41 [label="Stub" style="filled" fillcolor=gray];
|
|
42 [label="Exit block" style="filled" fillcolor=gray];
|
|
}
|
|
43 [label="Exit function foo" style="filled" fillcolor=red style="filled" fillcolor=gray];
|
|
}
|
|
78 [label="Postponed exit from lambda"];
|
|
79 [label="Function call: R|/run|(...)" style="filled" fillcolor=yellow];
|
|
80 [label="Exit property" style="filled" fillcolor=red];
|
|
}
|
|
76 -> {77};
|
|
77 -> {24 78 79};
|
|
77 -> {24} [style=dashed];
|
|
78 -> {79};
|
|
78 -> {77} [color=green style=dashed];
|
|
79 -> {80};
|
|
24 -> {25};
|
|
25 -> {26};
|
|
26 -> {27 33};
|
|
26 -> {33} [style=dashed];
|
|
27 -> {28 44};
|
|
27 -> {44} [style=dashed];
|
|
28 -> {29};
|
|
29 -> {30} [style=dotted];
|
|
30 -> {31} [style=dotted];
|
|
31 -> {32} [style=dotted];
|
|
32 -> {78} [style=dotted];
|
|
33 -> {34};
|
|
34 -> {35};
|
|
35 -> {36};
|
|
36 -> {37};
|
|
37 -> {38};
|
|
38 -> {39};
|
|
39 -> {40};
|
|
40 -> {41} [style=dotted];
|
|
41 -> {42} [style=dotted];
|
|
42 -> {43} [style=dotted];
|
|
44 -> {45} [color=green];
|
|
44 -> {47 55} [color=red];
|
|
45 -> {47} [color=green];
|
|
45 -> {46} [style=dotted];
|
|
45 -> {47} [style=dashed];
|
|
46 -> {55} [style=dotted];
|
|
46 -> {55} [style=dashed];
|
|
47 -> {48};
|
|
48 -> {49};
|
|
49 -> {50};
|
|
50 -> {51} [style=dotted];
|
|
51 -> {52} [style=dotted];
|
|
52 -> {53} [style=dotted];
|
|
53 -> {54} [style=dotted];
|
|
54 -> {46} [style=dotted];
|
|
55 -> {56};
|
|
56 -> {57};
|
|
|
|
subgraph cluster_23 {
|
|
color=red
|
|
81 [label="Enter property" style="filled" fillcolor=red];
|
|
subgraph cluster_24 {
|
|
color=blue
|
|
82 [label="Try expression enter"];
|
|
subgraph cluster_25 {
|
|
color=blue
|
|
83 [label="Try main block enter"];
|
|
subgraph cluster_26 {
|
|
color=blue
|
|
84 [label="Enter block"];
|
|
85 [label="Const: Int(1)"];
|
|
86 [label="Exit block"];
|
|
}
|
|
87 [label="Try main block exit"];
|
|
}
|
|
subgraph cluster_27 {
|
|
color=blue
|
|
88 [label="Catch enter"];
|
|
89 [label="Variable declaration: e: R|kotlin/Exception|"];
|
|
subgraph cluster_28 {
|
|
color=blue
|
|
90 [label="Enter block"];
|
|
91 [label="Const: Int(2)"];
|
|
92 [label="Exit block"];
|
|
}
|
|
93 [label="Catch exit"];
|
|
}
|
|
subgraph cluster_29 {
|
|
color=blue
|
|
94 [label="Enter finally"];
|
|
subgraph cluster_30 {
|
|
color=blue
|
|
95 [label="Enter block"];
|
|
96 [label="Const: Int(0)"];
|
|
97 [label="Exit block"];
|
|
}
|
|
98 [label="Exit finally"];
|
|
}
|
|
99 [label="Try expression exit"];
|
|
}
|
|
100 [label="Exit property" style="filled" fillcolor=red];
|
|
}
|
|
81 -> {82};
|
|
82 -> {83 88};
|
|
82 -> {94} [label="onUncaughtException"];
|
|
83 -> {84};
|
|
84 -> {85};
|
|
85 -> {86};
|
|
86 -> {87};
|
|
87 -> {88 94};
|
|
88 -> {89};
|
|
88 -> {94} [label="onUncaughtException"];
|
|
89 -> {90};
|
|
90 -> {91};
|
|
91 -> {92};
|
|
92 -> {93};
|
|
93 -> {94};
|
|
94 -> {95};
|
|
95 -> {96};
|
|
96 -> {97};
|
|
97 -> {98};
|
|
98 -> {99};
|
|
99 -> {100};
|
|
|
|
}
|