z_0_filetest.gno

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