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