z_0_filetest.gno
6.92 Kb ยท 233 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("key0", "value0")
13}
14
15func main() {
16 crossing()
17
18 var updated bool
19 node, updated = node.Set("key1", "value1")
20 // println(node, updated)
21 println(updated, node.Size())
22}
23
24// Output:
25// false 2
26
27// Realm:
28// finalizerealm["gno.land/r/test"]
29// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:7]=
30// @@ -1,8 +1,8 @@
31// {
32// "ObjectInfo": {
33// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7",
34// - "ModTime": "0",
35// - "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3",
36// + "ModTime": "10",
37// + "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:10",
38// "RefCount": "1"
39// },
40// "Value": {
41// c[a8ada09dee16d791fd406d629fe29bb0ed084a30:12]={
42// "Fields": [
43// {
44// "T": {
45// "@type": "/gno.PrimitiveType",
46// "value": "16"
47// },
48// "V": {
49// "@type": "/gno.StringValue",
50// "value": "key1"
51// }
52// },
53// {
54// "T": {
55// "@type": "/gno.PrimitiveType",
56// "value": "16"
57// },
58// "V": {
59// "@type": "/gno.StringValue",
60// "value": "value1"
61// }
62// },
63// {
64// "T": {
65// "@type": "/gno.PrimitiveType",
66// "value": "64"
67// }
68// },
69// {
70// "N": "AQAAAAAAAAA=",
71// "T": {
72// "@type": "/gno.PrimitiveType",
73// "value": "32"
74// }
75// },
76// {
77// "T": {
78// "@type": "/gno.PointerType",
79// "Elt": {
80// "@type": "/gno.RefType",
81// "ID": "gno.land/p/demo/avl.Node"
82// }
83// }
84// },
85// {
86// "T": {
87// "@type": "/gno.PointerType",
88// "Elt": {
89// "@type": "/gno.RefType",
90// "ID": "gno.land/p/demo/avl.Node"
91// }
92// }
93// }
94// ],
95// "ObjectInfo": {
96// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:12",
97// "ModTime": "0",
98// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:11",
99// "RefCount": "1"
100// }
101// }
102// c[a8ada09dee16d791fd406d629fe29bb0ed084a30:11]={
103// "ObjectInfo": {
104// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:11",
105// "ModTime": "0",
106// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:10",
107// "RefCount": "1"
108// },
109// "Value": {
110// "T": {
111// "@type": "/gno.RefType",
112// "ID": "gno.land/p/demo/avl.Node"
113// },
114// "V": {
115// "@type": "/gno.RefValue",
116// "Hash": "3288b3597947d02e04dfdc35f06b380f3c323ed5",
117// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:12"
118// }
119// }
120// }
121// c[a8ada09dee16d791fd406d629fe29bb0ed084a30:10]={
122// "Fields": [
123// {
124// "T": {
125// "@type": "/gno.PrimitiveType",
126// "value": "16"
127// },
128// "V": {
129// "@type": "/gno.StringValue",
130// "value": "key1"
131// }
132// },
133// {},
134// {
135// "N": "AQAAAAAAAAA=",
136// "T": {
137// "@type": "/gno.PrimitiveType",
138// "value": "64"
139// }
140// },
141// {
142// "N": "AgAAAAAAAAA=",
143// "T": {
144// "@type": "/gno.PrimitiveType",
145// "value": "32"
146// }
147// },
148// {
149// "T": {
150// "@type": "/gno.PointerType",
151// "Elt": {
152// "@type": "/gno.RefType",
153// "ID": "gno.land/p/demo/avl.Node"
154// }
155// },
156// "V": {
157// "@type": "/gno.PointerValue",
158// "Base": {
159// "@type": "/gno.RefValue",
160// "Hash": "27689d532d3d0324ffa3fda9408ef11e3e12b2d9",
161// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7"
162// },
163// "Index": "0",
164// "TV": null
165// }
166// },
167// {
168// "T": {
169// "@type": "/gno.PointerType",
170// "Elt": {
171// "@type": "/gno.RefType",
172// "ID": "gno.land/p/demo/avl.Node"
173// }
174// },
175// "V": {
176// "@type": "/gno.PointerValue",
177// "Base": {
178// "@type": "/gno.RefValue",
179// "Hash": "149bdb243dd96ad31fd4f897d7dbe1fe932734c0",
180// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:11"
181// },
182// "Index": "0",
183// "TV": null
184// }
185// }
186// ],
187// "ObjectInfo": {
188// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:10",
189// "ModTime": "0",
190// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:9",
191// "RefCount": "1"
192// }
193// }
194// c[a8ada09dee16d791fd406d629fe29bb0ed084a30:9]={
195// "ObjectInfo": {
196// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:9",
197// "ModTime": "0",
198// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3",
199// "RefCount": "1"
200// },
201// "Value": {
202// "T": {
203// "@type": "/gno.RefType",
204// "ID": "gno.land/p/demo/avl.Node"
205// },
206// "V": {
207// "@type": "/gno.RefValue",
208// "Hash": "2a80953f4db02c933cfd1b5b9fed586c4695e845",
209// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:10"
210// }
211// }
212// }
213// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:3]=
214// @@ -1,7 +1,7 @@
215// {
216// "ObjectInfo": {
217// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3",
218// - "ModTime": "6",
219// + "ModTime": "8",
220// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2",
221// "RefCount": "1"
222// },
223// @@ -17,8 +17,8 @@
224// "@type": "/gno.PointerValue",
225// "Base": {
226// "@type": "/gno.RefValue",
227// - "Hash": "276d9e20c54d77da7b8d9652d5e4c0102be192f7",
228// - "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7"
229// + "Hash": "7112df693d0606ff9f21eb56b5e21228f9fd0463",
230// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:9"
231// },
232// "Index": "0",
233// "TV": null