z_1_filetest.gno
10.16 Kb ยท 335 lines
1// PKGPATH: gno.land/r/test
2package test
3
4import (
5 "gno.land/p/demo/avl"
6)
7
8var node *avl.Node
9
10func init() {
11 node = avl.NewNode("key0", "value0")
12 node, _ = node.Set("key1", "value1")
13}
14
15func main() {
16 crossing()
17
18 var updated bool
19 node, updated = node.Set("key2", "value2")
20 // println(node, updated)
21 println(updated, node.Size())
22}
23
24// Output:
25// false 3
26
27// Realm:
28// finalizerealm["gno.land/r/test"]
29// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:9]=
30// @@ -1,7 +1,7 @@
31// {
32// "ObjectInfo": {
33// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:9",
34// - "ModTime": "0",
35// + "ModTime": "14",
36// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8",
37// "RefCount": "1"
38// },
39// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:11]=
40// @@ -1,7 +1,7 @@
41// {
42// "ObjectInfo": {
43// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:11",
44// - "ModTime": "0",
45// + "ModTime": "16",
46// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8",
47// "RefCount": "1"
48// },
49// c[a8ada09dee16d791fd406d629fe29bb0ed084a30:18]={
50// "Fields": [
51// {
52// "T": {
53// "@type": "/gno.PrimitiveType",
54// "value": "16"
55// },
56// "V": {
57// "@type": "/gno.StringValue",
58// "value": "key2"
59// }
60// },
61// {
62// "T": {
63// "@type": "/gno.PrimitiveType",
64// "value": "16"
65// },
66// "V": {
67// "@type": "/gno.StringValue",
68// "value": "value2"
69// }
70// },
71// {
72// "T": {
73// "@type": "/gno.PrimitiveType",
74// "value": "64"
75// }
76// },
77// {
78// "N": "AQAAAAAAAAA=",
79// "T": {
80// "@type": "/gno.PrimitiveType",
81// "value": "32"
82// }
83// },
84// {
85// "T": {
86// "@type": "/gno.PointerType",
87// "Elt": {
88// "@type": "/gno.RefType",
89// "ID": "gno.land/p/demo/avl.Node"
90// }
91// }
92// },
93// {
94// "T": {
95// "@type": "/gno.PointerType",
96// "Elt": {
97// "@type": "/gno.RefType",
98// "ID": "gno.land/p/demo/avl.Node"
99// }
100// }
101// }
102// ],
103// "ObjectInfo": {
104// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:18",
105// "ModTime": "0",
106// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:17",
107// "RefCount": "1"
108// }
109// }
110// c[a8ada09dee16d791fd406d629fe29bb0ed084a30:17]={
111// "ObjectInfo": {
112// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:17",
113// "ModTime": "0",
114// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:16",
115// "RefCount": "1"
116// },
117// "Value": {
118// "T": {
119// "@type": "/gno.RefType",
120// "ID": "gno.land/p/demo/avl.Node"
121// },
122// "V": {
123// "@type": "/gno.RefValue",
124// "Hash": "27c82fe9c0e010bd7055e873dcc8e394963b7fd2",
125// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:18"
126// }
127// }
128// }
129// c[a8ada09dee16d791fd406d629fe29bb0ed084a30:16]={
130// "Fields": [
131// {
132// "T": {
133// "@type": "/gno.PrimitiveType",
134// "value": "16"
135// },
136// "V": {
137// "@type": "/gno.StringValue",
138// "value": "key2"
139// }
140// },
141// {},
142// {
143// "N": "AQAAAAAAAAA=",
144// "T": {
145// "@type": "/gno.PrimitiveType",
146// "value": "64"
147// }
148// },
149// {
150// "N": "AgAAAAAAAAA=",
151// "T": {
152// "@type": "/gno.PrimitiveType",
153// "value": "32"
154// }
155// },
156// {
157// "T": {
158// "@type": "/gno.PointerType",
159// "Elt": {
160// "@type": "/gno.RefType",
161// "ID": "gno.land/p/demo/avl.Node"
162// }
163// },
164// "V": {
165// "@type": "/gno.PointerValue",
166// "Base": {
167// "@type": "/gno.RefValue",
168// "Hash": "6fedda0be1874c2ab889c6498ab942a5b4788635",
169// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:11"
170// },
171// "Index": "0",
172// "TV": null
173// }
174// },
175// {
176// "T": {
177// "@type": "/gno.PointerType",
178// "Elt": {
179// "@type": "/gno.RefType",
180// "ID": "gno.land/p/demo/avl.Node"
181// }
182// },
183// "V": {
184// "@type": "/gno.PointerValue",
185// "Base": {
186// "@type": "/gno.RefValue",
187// "Hash": "98954fd1c465552a4ba7dd00877348820d4dc0a2",
188// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:17"
189// },
190// "Index": "0",
191// "TV": null
192// }
193// }
194// ],
195// "ObjectInfo": {
196// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:16",
197// "ModTime": "0",
198// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:15",
199// "RefCount": "1"
200// }
201// }
202// c[a8ada09dee16d791fd406d629fe29bb0ed084a30:15]={
203// "ObjectInfo": {
204// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:15",
205// "ModTime": "0",
206// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:14",
207// "RefCount": "1"
208// },
209// "Value": {
210// "T": {
211// "@type": "/gno.RefType",
212// "ID": "gno.land/p/demo/avl.Node"
213// },
214// "V": {
215// "@type": "/gno.RefValue",
216// "Hash": "7c93c5b0ba175d456548c4aa126490dec76fd9ea",
217// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:16"
218// }
219// }
220// }
221// c[a8ada09dee16d791fd406d629fe29bb0ed084a30:14]={
222// "Fields": [
223// {
224// "T": {
225// "@type": "/gno.PrimitiveType",
226// "value": "16"
227// },
228// "V": {
229// "@type": "/gno.StringValue",
230// "value": "key1"
231// }
232// },
233// {},
234// {
235// "N": "AgAAAAAAAAA=",
236// "T": {
237// "@type": "/gno.PrimitiveType",
238// "value": "64"
239// }
240// },
241// {
242// "N": "AwAAAAAAAAA=",
243// "T": {
244// "@type": "/gno.PrimitiveType",
245// "value": "32"
246// }
247// },
248// {
249// "T": {
250// "@type": "/gno.PointerType",
251// "Elt": {
252// "@type": "/gno.RefType",
253// "ID": "gno.land/p/demo/avl.Node"
254// }
255// },
256// "V": {
257// "@type": "/gno.PointerValue",
258// "Base": {
259// "@type": "/gno.RefValue",
260// "Hash": "4bdce8127e004a4f9d332aeb5a78cfe8c6ca96b0",
261// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:9"
262// },
263// "Index": "0",
264// "TV": null
265// }
266// },
267// {
268// "T": {
269// "@type": "/gno.PointerType",
270// "Elt": {
271// "@type": "/gno.RefType",
272// "ID": "gno.land/p/demo/avl.Node"
273// }
274// },
275// "V": {
276// "@type": "/gno.PointerValue",
277// "Base": {
278// "@type": "/gno.RefValue",
279// "Hash": "6073f435fc15cdb2c58b42fa7d297b8c4d3543fa",
280// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:15"
281// },
282// "Index": "0",
283// "TV": null
284// }
285// }
286// ],
287// "ObjectInfo": {
288// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:14",
289// "ModTime": "0",
290// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:13",
291// "RefCount": "1"
292// }
293// }
294// c[a8ada09dee16d791fd406d629fe29bb0ed084a30:13]={
295// "ObjectInfo": {
296// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:13",
297// "ModTime": "0",
298// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3",
299// "RefCount": "1"
300// },
301// "Value": {
302// "T": {
303// "@type": "/gno.RefType",
304// "ID": "gno.land/p/demo/avl.Node"
305// },
306// "V": {
307// "@type": "/gno.RefValue",
308// "Hash": "0eb69253ed71f09f5fa08ff9f2234f576f296b13",
309// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:14"
310// }
311// }
312// }
313// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:3]=
314// @@ -1,7 +1,7 @@
315// {
316// "ObjectInfo": {
317// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3",
318// - "ModTime": "6",
319// + "ModTime": "12",
320// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2",
321// "RefCount": "1"
322// },
323// @@ -17,8 +17,8 @@
324// "@type": "/gno.PointerValue",
325// "Base": {
326// "@type": "/gno.RefValue",
327// - "Hash": "b04c19a6409cd14ac64426556d8d883ee2b6a55d",
328// - "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7"
329// + "Hash": "d32ff23c6146ecf73934b20d0a0367ac558d87e4",
330// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:13"
331// },
332// "Index": "0",
333// "TV": null
334// d[a8ada09dee16d791fd406d629fe29bb0ed084a30:7]
335// d[a8ada09dee16d791fd406d629fe29bb0ed084a30:8]