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