forked from hsiaosiyuan0/slowjs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathatom_array.drawio
136 lines (136 loc) · 11.8 KB
/
atom_array.drawio
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
<mxfile host="Electron" modified="2023-06-15T00:57:40.686Z" agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/21.4.0 Chrome/112.0.5615.204 Electron/24.5.1 Safari/537.36" etag="2CCriS91GI7xx67yTwhX" version="21.4.0" type="device">
<diagram id="BE0ovioZWPl28bur3GKl" name="Page-1">
<mxGraphModel dx="1088" dy="745" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="1" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="d7k7JaHhVkfDtRXN3Bn--1" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#CCCCFF;strokeColor=#6c8ebf;arcSize=5;" parent="1" vertex="1">
<mxGeometry x="393" y="720" width="40" height="40" as="geometry" />
</mxCell>
<mxCell id="d7k7JaHhVkfDtRXN3Bn--2" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#CCCCFF;strokeColor=#6c8ebf;" parent="1" vertex="1">
<mxGeometry x="433" y="720" width="40" height="40" as="geometry" />
</mxCell>
<mxCell id="d7k7JaHhVkfDtRXN3Bn--3" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#CCCCFF;strokeColor=#6c8ebf;" parent="1" vertex="1">
<mxGeometry x="473" y="720" width="40" height="40" as="geometry" />
</mxCell>
<mxCell id="d7k7JaHhVkfDtRXN3Bn--4" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#CCCCFF;strokeColor=#6c8ebf;" parent="1" vertex="1">
<mxGeometry x="513" y="720" width="40" height="40" as="geometry" />
</mxCell>
<mxCell id="d7k7JaHhVkfDtRXN3Bn--5" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#CCCCFF;strokeColor=#6c8ebf;" parent="1" vertex="1">
<mxGeometry x="553" y="720" width="40" height="40" as="geometry" />
</mxCell>
<mxCell id="d7k7JaHhVkfDtRXN3Bn--6" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#CCCCFF;strokeColor=#6c8ebf;arcSize=5;" parent="1" vertex="1">
<mxGeometry x="593" y="720" width="40" height="40" as="geometry" />
</mxCell>
<mxCell id="d7k7JaHhVkfDtRXN3Bn--7" value="<font color="#b5739d" style="font-size: 14px;">atom_array</font>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontFamily=SF Mono;" parent="1" vertex="1">
<mxGeometry x="279" y="725" width="110" height="30" as="geometry" />
</mxCell>
<mxCell id="d7k7JaHhVkfDtRXN3Bn--8" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;arcSize=5;" parent="1" vertex="1">
<mxGeometry x="353" y="585" width="40" height="40" as="geometry" />
</mxCell>
<mxCell id="d7k7JaHhVkfDtRXN3Bn--9" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="1" vertex="1">
<mxGeometry x="393" y="585" width="40" height="40" as="geometry" />
</mxCell>
<mxCell id="d7k7JaHhVkfDtRXN3Bn--10" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="1" vertex="1">
<mxGeometry x="433" y="585" width="40" height="40" as="geometry" />
</mxCell>
<mxCell id="d7k7JaHhVkfDtRXN3Bn--11" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="1" vertex="1">
<mxGeometry x="473" y="585" width="40" height="40" as="geometry" />
</mxCell>
<mxCell id="d7k7JaHhVkfDtRXN3Bn--12" value="" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="1" vertex="1">
<mxGeometry x="513" y="585" width="40" height="40" as="geometry" />
</mxCell>
<mxCell id="d7k7JaHhVkfDtRXN3Bn--13" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;arcSize=5;" parent="1" vertex="1">
<mxGeometry x="553" y="585" width="40" height="40" as="geometry" />
</mxCell>
<mxCell id="d7k7JaHhVkfDtRXN3Bn--14" value="<font color="#b5739d" style="font-size: 14px;">atom_hash</font>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontFamily=SF Mono;" parent="1" vertex="1">
<mxGeometry x="247" y="590" width="90" height="30" as="geometry" />
</mxCell>
<mxCell id="d7k7JaHhVkfDtRXN3Bn--16" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="d7k7JaHhVkfDtRXN3Bn--10" target="d7k7JaHhVkfDtRXN3Bn--2" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="390" y="440" as="sourcePoint" />
<mxPoint x="440" y="390" as="targetPoint" />
<Array as="points">
<mxPoint x="453" y="680" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="d7k7JaHhVkfDtRXN3Bn--29" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="d7k7JaHhVkfDtRXN3Bn--2" target="dHQ5mNr2f7TnLZc9f3mp-4" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="663" y="860" as="sourcePoint" />
<mxPoint x="453" y="850" as="targetPoint" />
<Array as="points">
<mxPoint x="453" y="800" />
<mxPoint x="453" y="840" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="d7k7JaHhVkfDtRXN3Bn--35" value="<span style="background-color: rgb(255, 255, 255);"><font style="font-size: 16px;">$$idx_{atom\_array}$$</font></span>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;shadow=0;glass=0;labelBackgroundColor=none;" parent="1" vertex="1">
<mxGeometry x="320" y="650" width="140" height="30" as="geometry" />
</mxCell>
<mxCell id="d7k7JaHhVkfDtRXN3Bn--39" value="<span style="background-color: rgb(255, 255, 255);"><font style="font-size: 12px;">hash_next</font></span>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;shadow=0;glass=0;labelBackgroundColor=none;" parent="1" vertex="1">
<mxGeometry x="423" y="924" width="140" height="30" as="geometry" />
</mxCell>
<mxCell id="dHQ5mNr2f7TnLZc9f3mp-4" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;imageHeight=24;arcSize=5;" parent="1" vertex="1">
<mxGeometry x="433" y="840" width="40" height="40" as="geometry" />
</mxCell>
<mxCell id="dHQ5mNr2f7TnLZc9f3mp-6" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;arcSize=5;" parent="1" vertex="1">
<mxGeometry x="680" y="840" width="40" height="40" as="geometry" />
</mxCell>
<mxCell id="dHQ5mNr2f7TnLZc9f3mp-9" value="<font style="font-size: 12px;">JSString</font>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontFamily=SF Mono;" parent="1" vertex="1">
<mxGeometry x="357" y="845" width="77" height="30" as="geometry" />
</mxCell>
<mxCell id="dHQ5mNr2f7TnLZc9f3mp-10" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" parent="1" source="dHQ5mNr2f7TnLZc9f3mp-4" target="d7k7JaHhVkfDtRXN3Bn--4" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="580" y="670" as="sourcePoint" />
<mxPoint x="630" y="620" as="targetPoint" />
<Array as="points">
<mxPoint x="453" y="920" />
<mxPoint x="533" y="920" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="dHQ5mNr2f7TnLZc9f3mp-13" value="<font style="font-size: 12px;">JSString</font>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontFamily=SF Mono;" parent="1" vertex="1">
<mxGeometry x="723" y="845" width="70" height="30" as="geometry" />
</mxCell>
<mxCell id="dHQ5mNr2f7TnLZc9f3mp-14" value="" style="endArrow=classic;html=1;rounded=0;fontSize=16;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="d7k7JaHhVkfDtRXN3Bn--4" target="dHQ5mNr2f7TnLZc9f3mp-6" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="570" y="730" as="sourcePoint" />
<mxPoint x="620" y="680" as="targetPoint" />
<Array as="points">
<mxPoint x="533" y="680" />
<mxPoint x="700" y="680" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="dHQ5mNr2f7TnLZc9f3mp-17" value="<font face="SF Mono" style="font-size: 12px;">JSString*</font>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=16;" parent="1" vertex="1">
<mxGeometry x="360" y="780" width="90" height="30" as="geometry" />
</mxCell>
<mxCell id="dHQ5mNr2f7TnLZc9f3mp-18" value="JSString*" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=12;fontFamily=SF Mono;" parent="1" vertex="1">
<mxGeometry x="699" y="720" width="90" height="30" as="geometry" />
</mxCell>
<mxCell id="dHQ5mNr2f7TnLZc9f3mp-19" value="<span style="background-color: rgb(255, 255, 255);">$$idx_{atom\_hash}$$</span>" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=16;" parent="1" vertex="1">
<mxGeometry x="423" y="510" width="110" height="30" as="geometry" />
</mxCell>
<mxCell id="e04o6s8iYcdu_MtuzH4c-1" value="<font style="font-size: 12px;">StringData</font>" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;arcSize=5;fontFamily=SF Mono;" parent="1" vertex="1">
<mxGeometry x="140" y="440" width="100" height="40" as="geometry" />
</mxCell>
<mxCell id="e04o6s8iYcdu_MtuzH4c-2" value="$$hash(StringData)\rightarrow idx_{atom\_hash}<br>$$" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#CCE5FF;strokeColor=#3399FF;arcSize=5;" parent="1" vertex="1">
<mxGeometry x="349" y="440" width="257" height="40" as="geometry" />
</mxCell>
<mxCell id="e04o6s8iYcdu_MtuzH4c-3" value="" style="endArrow=classic;html=1;rounded=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="e04o6s8iYcdu_MtuzH4c-1" target="e04o6s8iYcdu_MtuzH4c-2" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="580" y="590" as="sourcePoint" />
<mxPoint x="630" y="540" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="e04o6s8iYcdu_MtuzH4c-4" value="" style="endArrow=classic;html=1;rounded=0;exitX=0.25;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" parent="1" source="e04o6s8iYcdu_MtuzH4c-2" target="d7k7JaHhVkfDtRXN3Bn--9" edge="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="580" y="590" as="sourcePoint" />
<mxPoint x="630" y="540" as="targetPoint" />
</mxGeometry>
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>