-
Notifications
You must be signed in to change notification settings - Fork 3
/
class_diagram.uml
253 lines (252 loc) · 12.4 KB
/
class_diagram.uml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
<?xml version="1.0" encoding="UTF-8"?>
<Diagram>
<ID>JAVA</ID>
<OriginalElement>D:/Raqha/Dokumente/DHBW_Vorlesungen/TheoInf/CUM/HouseOfCompiler/src/main/java</OriginalElement>
<nodes>
<node x="1049.0" y="-700.5">syntaxtree.statements.WhileStmt</node>
<node x="810.0" y="-700.5">syntaxtree.statements.LocalVarDecl</node>
<node x="283.0" y="-480.5">syntaxtree.expressions.Unary</node>
<node x="580.0" y="-450.5">syntaxtree.statements.Block</node>
<node x="1349.5" y="-89.0">context.Context</node>
<node x="1326.5" y="279.5">common.ReferenceType</node>
<node x="44.0" y="-480.5">syntaxtree.expressions.InstVar</node>
<node x="30.5" y="337.5">syntaxtree.structure.FieldDecl</node>
<node x="580.0" y="-700.5">syntaxtree.statements.IfStmt</node>
<node x="325.5" y="337.5">syntaxtree.structure.ClassDecl</node>
<node x="995.0" y="-147.0">semantic.SemanticCheck</node>
<node x="-230.5" y="155.0">common.Operator</node>
<node x="-9.5" y="-19.5">visitor.Visitable</node>
<node x="-178.0" y="849.0">visitor.codevisitor.ClassCodeVisitor</node>
<node x="22.0" y="-230.5">syntaxtree.expressions.IntegerExpr</node>
<node x="-86.0" y="-731.0">common.IProgramGenerator</node>
<node x="226.5" y="-893.0">codegen.MethodGenerator</node>
<node x="372.0" y="697.0">context.ClassContext</node>
<node x="-86.0" y="-652.0">visitor.codevisitor.ProgramCodeVisitor</node>
<node x="947.0" y="-450.5">syntaxtree.statements.ReturnStmt</node>
<node x="854.0" y="320.5">syntaxtree.statementexpression.IStatementExpression</node>
<node x="769.5" y="-903.0">context.MethodContext</node>
<node x="537.5" y="-895.0">semantic.TypeHelper</node>
<node x="1035.0" y="187.0">visitor.SemanticVisitor</node>
<node x="-201.0" y="-36.5">syntaxtree.expressions.Null</node>
<node x="-201.0" y="-480.5">syntaxtree.expressions.Binary</node>
<node x="207.0" y="-230.5">syntaxtree.expressions.BoolExpr</node>
<node x="387.0" y="-230.5">syntaxtree.expressions.CharExpr</node>
<node x="30.5" y="59.5">syntaxtree.structure.MethodDecl</node>
<node x="274.5" y="559.5">syntaxtree.structure.Program</node>
<node x="1320.0" y="-625.0">common.AccessModifier</node>
<node x="540.0" y="-779.5">syntaxtree.statements.IStatement</node>
<node x="1229.5" y="-343.0">context.ConstructorContext</node>
<node x="-241.0" y="-559.5">syntaxtree.expressions.IExpression</node>
<node x="-218.0" y="711.0">codegen.ClassGenerator</node>
<node x="894.0" y="399.5">syntaxtree.statementexpression.MethodCall</node>
<node x="550.0" y="-230.5">syntaxtree.expressions.This</node>
<node x="1263.0" y="649.5">syntaxtree.statementexpression.Assign</node>
<node x="451.5" y="59.5">syntaxtree.structure.ConstructorDecl</node>
<node x="1326.5" y="445.5">common.BaseType</node>
<node x="1179.0" y="-903.0">main.ReflectLoader</node>
<node x="-126.0" y="-869.0">codegen.ProgramGenerator</node>
<node x="-201.0" y="-230.5">syntaxtree.expressions.LocalOrFieldVar</node>
<node x="94.0" y="763.0">semantic.TypeCheckResult</node>
<node x="30.5" y="559.5">syntaxtree.structure.MethodParameter</node>
<node x="894.0" y="649.5">syntaxtree.statementexpression.NewDecl</node>
<node x="266.5" y="-587.0">visitor.codevisitor.MethodCodeVisitor</node>
<node x="1535.0" y="329.0">common.Primitives</node>
<node x="1286.5" y="200.5">common.Type</node>
<node x="1442.5" y="71.0">context.FieldContext</node>
</nodes>
<notes />
<edges>
<edge source="syntaxtree.expressions.InstVar" target="syntaxtree.expressions.IExpression" relationship="REALIZATION">
<point x="0.0" y="-105.0" />
<point x="153.5" y="-500.5" />
<point x="-135.0" y="-500.5" />
<point x="25.0" y="19.5" />
</edge>
<edge source="codegen.MethodGenerator" target="visitor.codevisitor.MethodCodeVisitor" relationship="REALIZATION">
<point x="45.0" y="133.0" />
<point x="0.0" y="-19.5" />
</edge>
<edge source="syntaxtree.expressions.LocalOrFieldVar" target="syntaxtree.expressions.IExpression" relationship="REALIZATION">
<point x="0.0" y="-77.0" />
<point x="-99.5" y="-238.5" />
<point x="-223.85714285714286" y="-238.5" />
<point x="-63.85714285714286" y="19.5" />
</edge>
<edge source="syntaxtree.statementexpression.Assign" target="syntaxtree.statementexpression.IStatementExpression" relationship="REALIZATION">
<point x="-92.5" y="-91.0" />
<point x="1283.0" y="397.5" />
<point x="1005.0" y="397.5" />
<point x="25.0" y="19.5" />
</edge>
<edge source="codegen.ClassGenerator" target="visitor.codevisitor.ClassCodeVisitor" relationship="REALIZATION">
<point x="47.0" y="49.0" />
<point x="0.0" y="-19.5" />
</edge>
<edge source="syntaxtree.statementexpression.NewDecl" target="syntaxtree.statementexpression.IStatementExpression" relationship="REALIZATION">
<point x="0.0" y="-91.0" />
<point x="1068.5" y="611.5" />
<point x="892.0" y="611.5" />
<point x="-88.0" y="19.5" />
</edge>
<edge source="syntaxtree.statements.IfStmt" target="syntaxtree.statements.IStatement" relationship="REALIZATION">
<point x="-65.0" y="-105.0" />
<point x="0.0" y="19.5" />
</edge>
<edge source="syntaxtree.statements.Block" target="syntaxtree.statements.IStatement" relationship="REALIZATION">
<point x="38.5" y="-77.0" />
<point x="792.0" y="-705.8333333333333" />
<point x="630.0" y="-705.8333333333333" />
<point x="10.0" y="19.5" />
</edge>
<edge source="codegen.ProgramGenerator" target="visitor.codevisitor.ProgramCodeVisitor" relationship="REALIZATION">
<point x="130.0" y="49.0" />
<point x="114.5" y="-19.5" />
</edge>
<edge source="syntaxtree.structure.ClassDecl" target="visitor.Visitable" relationship="REALIZATION">
<point x="-112.5" y="-77.0" />
<point x="449.5" y="57.5" />
<point x="80.0" y="57.5" />
<point x="20.0" y="19.5" />
</edge>
<edge source="syntaxtree.structure.ConstructorDecl" target="visitor.Visitable" relationship="REALIZATION">
<point x="0.0" y="-105.0" />
<point x="691.5" y="21.5" />
<point x="90.0" y="21.5" />
<point x="30.0" y="19.5" />
</edge>
<edge source="syntaxtree.structure.FieldDecl" target="visitor.Visitable" relationship="REALIZATION">
<point x="0.0" y="-91.0" />
<point x="168.0" y="299.5" />
<point x="20.5" y="299.5" />
<point x="-39.5" y="19.5" />
</edge>
<edge source="syntaxtree.expressions.This" target="syntaxtree.expressions.IExpression" relationship="REALIZATION">
<point x="0.0" y="-63.0" />
<point x="618.5" y="-262.5" />
<point x="-206.7142857142857" y="-262.5" />
<point x="-46.714285714285694" y="19.5" />
</edge>
<edge source="syntaxtree.expressions.CharExpr" target="syntaxtree.expressions.IExpression" relationship="REALIZATION">
<point x="0.0" y="-77.0" />
<point x="458.5" y="-254.5" />
<point x="-212.42857142857142" y="-254.5" />
<point x="-52.428571428571416" y="19.5" />
</edge>
<edge source="syntaxtree.expressions.BoolExpr" target="syntaxtree.expressions.IExpression" relationship="REALIZATION">
<point x="0.0" y="-77.0" />
<point x="287.0" y="-246.5" />
<point x="-218.14285714285714" y="-246.5" />
<point x="-58.14285714285714" y="19.5" />
</edge>
<edge source="syntaxtree.structure.MethodParameter" target="visitor.Visitable" relationship="REALIZATION">
<point x="0.0" y="-77.0" />
<point x="142.5" y="544.5" />
<point x="0.5" y="544.5" />
<point x="-59.5" y="19.5" />
</edge>
<edge source="syntaxtree.statements.LocalVarDecl" target="syntaxtree.statements.IStatement" relationship="REALIZATION">
<point x="0.0" y="-91.0" />
<point x="919.5" y="-716.5" />
<point x="650.0" y="-716.5" />
<point x="30.0" y="19.5" />
</edge>
<edge source="syntaxtree.statementexpression.MethodCall" target="syntaxtree.statementexpression.IStatementExpression" relationship="REALIZATION">
<point x="-73.5" y="-105.0" />
<point x="15.0" y="19.5" />
</edge>
<edge source="syntaxtree.structure.Program" target="visitor.Visitable" relationship="REALIZATION">
<point x="0.0" y="-35.0" />
<point x="429.5" y="534.5" />
<point x="10.5" y="534.5" />
<point x="-49.5" y="19.5" />
</edge>
<edge source="common.BaseType" target="common.Type" relationship="REALIZATION">
<point x="0.0" y="-35.0" />
<point x="1425.5" y="407.5" />
<point x="1324.5" y="407.5" />
<point x="-15.5" y="19.5" />
</edge>
<edge source="codegen.ProgramGenerator" target="common.IProgramGenerator" relationship="REALIZATION">
<point x="11.0" y="49.0" />
<point x="0.0" y="-19.5" />
</edge>
<edge source="syntaxtree.statements.IStatement" target="visitor.Visitable" relationship="INTERFACE_GENERALIZATION">
<point x="-75.0" y="19.5" />
<point x="545.0" y="5.0" />
<point x="69.5" y="5.0" />
</edge>
<edge source="syntaxtree.structure.MethodDecl" target="visitor.Visitable" relationship="REALIZATION">
<point x="-161.0" y="-119.0" />
<point x="10.0" y="19.5" />
</edge>
<edge source="syntaxtree.expressions.Unary" target="syntaxtree.expressions.IExpression" relationship="REALIZATION">
<point x="0.0" y="-91.0" />
<point x="392.5" y="-510.5" />
<point x="-125.0" y="-510.5" />
<point x="35.0" y="19.5" />
</edge>
<edge source="syntaxtree.statementexpression.IStatementExpression" target="syntaxtree.expressions.IExpression" relationship="INTERFACE_GENERALIZATION">
<point x="-21.75" y="-19.5" />
<point x="958.25" y="-234.5" />
<point x="-229.57142857142858" y="-234.5" />
<point x="-69.57142857142858" y="19.5" />
</edge>
<edge source="syntaxtree.statements.WhileStmt" target="syntaxtree.statements.IStatement" relationship="REALIZATION">
<point x="0.0" y="-91.0" />
<point x="1158.5" y="-726.5" />
<point x="660.0" y="-726.5" />
<point x="40.0" y="19.5" />
</edge>
<edge source="syntaxtree.statementexpression.IStatementExpression" target="syntaxtree.statements.IStatement" relationship="INTERFACE_GENERALIZATION">
<point x="-11.75" y="-19.5" />
<point x="968.25" y="-248.50015241579027" />
<point x="562.5001270131586" y="-248.50015241579027" />
<point x="-57.49987298684141" y="19.5" />
</edge>
<edge source="semantic.SemanticCheck" target="visitor.SemanticVisitor" relationship="REALIZATION">
<point x="-4.5" y="147.0" />
<point x="0.0" y="-19.5" />
</edge>
<edge source="common.ReferenceType" target="common.Type" relationship="REALIZATION">
<point x="-82.5" y="-63.0" />
<point x="0.0" y="19.5" />
</edge>
<edge source="syntaxtree.expressions.Binary" target="syntaxtree.expressions.IExpression" relationship="REALIZATION">
<point x="-66.5" y="-105.0" />
<point x="5.0" y="19.5" />
</edge>
<edge source="syntaxtree.expressions.Null" target="syntaxtree.expressions.IExpression" relationship="REALIZATION">
<point x="0.0" y="-63.0" />
<point x="-132.5" y="-74.5" />
<point x="-235.2857142857143" y="-74.5" />
<point x="-75.2857142857143" y="19.5" />
</edge>
<edge source="syntaxtree.statements.ReturnStmt" target="syntaxtree.statements.IStatement" relationship="REALIZATION">
<point x="-9.5" y="-77.0" />
<point x="1047.0" y="-711.1666666666667" />
<point x="640.0" y="-711.1666666666667" />
<point x="20.0" y="19.5" />
</edge>
<edge source="syntaxtree.expressions.IExpression" target="visitor.Visitable" relationship="INTERFACE_GENERALIZATION">
<point x="81.0" y="0.0" />
<point x="532.0" y="-540.0" />
<point x="532.0" y="-5.0" />
<point x="69.5" y="-5.0" />
</edge>
<edge source="syntaxtree.expressions.IntegerExpr" target="syntaxtree.expressions.IExpression" relationship="REALIZATION">
<point x="-62.5" y="-77.0" />
<point x="42.0" y="-490.5" />
<point x="-145.0" y="-490.5" />
<point x="15.0" y="19.5" />
</edge>
</edges>
<settings layout="Compact" zoom="0.6505434782608696" showDependencies="false" x="718.5167084377607" y="-92.91645781119496" />
<SelectedNodes>
<node>common.Primitives</node>
</SelectedNodes>
<Categories>
<Category>Fields</Category>
</Categories>
<SCOPE>All</SCOPE>
<VISIBILITY>private</VISIBILITY>
</Diagram>