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("key0", "value0")
13}
14
15func main() {
16 var updated bool
17 node, updated = node.Set("key1", "value1")
18 // println(node, updated)
19 println(updated, node.Size())
20}
21
22// Output:
23// false 2
24
25// Realm:
26// switchrealm["gno.land/r/test"]
27// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:4]={
28// "ObjectInfo": {
29// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4",
30// "ModTime": "7",
31// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7",
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": "627e8e517e7ae5db0f3b753e2a32b607989198b6",
42// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5"
43// }
44// }
45// }
46// c[a8ada09dee16d791fd406d629fe29bb0ed084a30:9]={
47// "Fields": [
48// {
49// "T": {
50// "@type": "/gno.PrimitiveType",
51// "value": "16"
52// },
53// "V": {
54// "@type": "/gno.StringValue",
55// "value": "key1"
56// }
57// },
58// {
59// "T": {
60// "@type": "/gno.PrimitiveType",
61// "value": "16"
62// },
63// "V": {
64// "@type": "/gno.StringValue",
65// "value": "value1"
66// }
67// },
68// {
69// "T": {
70// "@type": "/gno.PrimitiveType",
71// "value": "64"
72// }
73// },
74// {
75// "N": "AQAAAAAAAAA=",
76// "T": {
77// "@type": "/gno.PrimitiveType",
78// "value": "32"
79// }
80// },
81// {
82// "T": {
83// "@type": "/gno.PointerType",
84// "Elt": {
85// "@type": "/gno.RefType",
86// "ID": "gno.land/p/demo/avl.Node"
87// }
88// }
89// },
90// {
91// "T": {
92// "@type": "/gno.PointerType",
93// "Elt": {
94// "@type": "/gno.RefType",
95// "ID": "gno.land/p/demo/avl.Node"
96// }
97// }
98// }
99// ],
100// "ObjectInfo": {
101// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:9",
102// "ModTime": "0",
103// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8",
104// "RefCount": "1"
105// }
106// }
107// c[a8ada09dee16d791fd406d629fe29bb0ed084a30:8]={
108// "ObjectInfo": {
109// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8",
110// "ModTime": "0",
111// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7",
112// "RefCount": "1"
113// },
114// "Value": {
115// "T": {
116// "@type": "/gno.RefType",
117// "ID": "gno.land/p/demo/avl.Node"
118// },
119// "V": {
120// "@type": "/gno.RefValue",
121// "Hash": "b28057ab7be6383785c0a5503e8a531bdbc21851",
122// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:9"
123// }
124// }
125// }
126// c[a8ada09dee16d791fd406d629fe29bb0ed084a30:7]={
127// "Fields": [
128// {
129// "T": {
130// "@type": "/gno.PrimitiveType",
131// "value": "16"
132// },
133// "V": {
134// "@type": "/gno.StringValue",
135// "value": "key1"
136// }
137// },
138// {},
139// {
140// "N": "AQAAAAAAAAA=",
141// "T": {
142// "@type": "/gno.PrimitiveType",
143// "value": "64"
144// }
145// },
146// {
147// "N": "AgAAAAAAAAA=",
148// "T": {
149// "@type": "/gno.PrimitiveType",
150// "value": "32"
151// }
152// },
153// {
154// "T": {
155// "@type": "/gno.PointerType",
156// "Elt": {
157// "@type": "/gno.RefType",
158// "ID": "gno.land/p/demo/avl.Node"
159// }
160// },
161// "V": {
162// "@type": "/gno.PointerValue",
163// "Base": {
164// "@type": "/gno.RefValue",
165// "Hash": "6da365f0d6cacbcdf53cd5a4b125803cddce08c2",
166// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4"
167// },
168// "Index": "0",
169// "TV": null
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": "f216afe7b5a17f4ebdbb98dceccedbc22e237596",
185// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8"
186// },
187// "Index": "0",
188// "TV": null
189// }
190// }
191// ],
192// "ObjectInfo": {
193// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7",
194// "ModTime": "0",
195// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6",
196// "RefCount": "1"
197// }
198// }
199// c[a8ada09dee16d791fd406d629fe29bb0ed084a30:6]={
200// "ObjectInfo": {
201// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6",
202// "ModTime": "0",
203// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2",
204// "RefCount": "1"
205// },
206// "Value": {
207// "T": {
208// "@type": "/gno.RefType",
209// "ID": "gno.land/p/demo/avl.Node"
210// },
211// "V": {
212// "@type": "/gno.RefValue",
213// "Hash": "ff1a50d8489090af37a2c7766d659f0d717939b5",
214// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7"
215// }
216// }
217// }
z_0_filetest.gno
6.17 Kb ยท 217 lines