z_1_filetest.gno

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