diff --git a/examples/gno.land/p/demo/avl/z_0_filetest.gno b/examples/gno.land/p/demo/avl/z_0_filetest.gno index 1db1adebd3e..73cf1a4dccf 100644 --- a/examples/gno.land/p/demo/avl/z_0_filetest.gno +++ b/examples/gno.land/p/demo/avl/z_0_filetest.gno @@ -24,25 +24,18 @@ func main() { // Realm: // switchrealm["gno.land/r/test"] -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:4]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", -// "ModTime": "7", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Node" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "627e8e517e7ae5db0f3b753e2a32b607989198b6", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5" -// } -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:4]= +// @@ -1,8 +1,8 @@ +// { +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", +// - "ModTime": "0", +// - "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// + "ModTime": "7", +// + "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7", +// "RefCount": "1" +// }, +// "Value": { // c[a8ada09dee16d791fd406d629fe29bb0ed084a30:9]={ // "Fields": [ // { @@ -215,3 +208,24 @@ func main() { // } // } // } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:2]= +// @@ -3,7 +3,7 @@ +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// "IsEscaped": true, +// - "ModTime": "3", +// + "ModTime": "5", +// "RefCount": "2" +// }, +// "Parent": null, +// @@ -30,8 +30,8 @@ +// "@type": "/gno.PointerValue", +// "Base": { +// "@type": "/gno.RefValue", +// - "Hash": "424b49c215f471979ccd718172a016e6ec9dd934", +// - "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" +// + "Hash": "ae86874f9b47fa5e64c30b3e92e9d07f2ec967a4", +// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6" +// }, +// "Index": "0", +// "TV": null diff --git a/examples/gno.land/p/demo/avl/z_1_filetest.gno b/examples/gno.land/p/demo/avl/z_1_filetest.gno index 572c49333bc..932cc8053cc 100644 --- a/examples/gno.land/p/demo/avl/z_1_filetest.gno +++ b/examples/gno.land/p/demo/avl/z_1_filetest.gno @@ -24,44 +24,26 @@ func main() { // Realm: // switchrealm["gno.land/r/test"] -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:6]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6", -// "ModTime": "11", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Node" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "1375f6f96a1a3f298347dc8fc0065afa36cb7f0f", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7" -// } -// } -// } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:8]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8", -// "ModTime": "13", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Node" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "b28057ab7be6383785c0a5503e8a531bdbc21851", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:9" -// } -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:6]= +// @@ -1,7 +1,7 @@ +// { +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6", +// - "ModTime": "0", +// + "ModTime": "11", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", +// "RefCount": "1" +// }, +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:8]= +// @@ -1,7 +1,7 @@ +// { +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8", +// - "ModTime": "0", +// + "ModTime": "13", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", +// "RefCount": "1" +// }, // c[a8ada09dee16d791fd406d629fe29bb0ed084a30:15]={ // "Fields": [ // { @@ -326,5 +308,26 @@ func main() { // } // } // } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:2]= +// @@ -3,7 +3,7 @@ +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// "IsEscaped": true, +// - "ModTime": "3", +// + "ModTime": "9", +// "RefCount": "2" +// }, +// "Parent": null, +// @@ -30,8 +30,8 @@ +// "@type": "/gno.PointerValue", +// "Base": { +// "@type": "/gno.RefValue", +// - "Hash": "213a2c56908ed00c6d21377f37be61a76102cd5f", +// - "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" +// + "Hash": "515b45e4a6f5fa153a0251d7108781d86c52ce1c", +// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:10" +// }, +// "Index": "0", +// "TV": null // d[a8ada09dee16d791fd406d629fe29bb0ed084a30:4] // d[a8ada09dee16d791fd406d629fe29bb0ed084a30:5] diff --git a/examples/gno.land/p/demo/avl/z_2_filetest.gno b/examples/gno.land/p/demo/avl/z_2_filetest.gno index c45088075d6..ec5b15e4fe0 100644 --- a/examples/gno.land/p/demo/avl/z_2_filetest.gno +++ b/examples/gno.land/p/demo/avl/z_2_filetest.gno @@ -23,44 +23,26 @@ func main() { // Realm: // switchrealm["gno.land/r/test"] -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:7]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7", -// "ModTime": "12", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Node" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "ba7550123807b8da857e38b72f66204b1ec582a2", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8" -// } -// } -// } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:9]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:9", -// "ModTime": "14", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Node" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "3cb8485664c356fcb5c88dfb96b7455133a6b022", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:10" -// } -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:7]= +// @@ -1,7 +1,7 @@ +// { +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7", +// - "ModTime": "0", +// + "ModTime": "12", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6", +// "RefCount": "1" +// }, +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:9]= +// @@ -1,7 +1,7 @@ +// { +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:9", +// - "ModTime": "0", +// + "ModTime": "14", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6", +// "RefCount": "1" +// }, // c[a8ada09dee16d791fd406d629fe29bb0ed084a30:16]={ // "Fields": [ // { @@ -325,34 +307,26 @@ func main() { // } // } // } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:3]={ -// "Fields": [ -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Node" -// } -// }, -// "V": { -// "@type": "/gno.PointerValue", -// "Base": { -// "@type": "/gno.RefValue", -// "Hash": "ff46b4dd63457c3fd59801e725f65af524ec829d", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:11" -// }, -// "Index": "0", -// "TV": null -// } -// } -// ], -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3", -// "ModTime": "10", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", -// "RefCount": "1" -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:3]= +// @@ -12,8 +12,8 @@ +// "@type": "/gno.PointerValue", +// "Base": { +// "@type": "/gno.RefValue", +// - "Hash": "fbf007d972314fd7a2005d628c444b0831c16402", +// - "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5" +// + "Hash": "ff46b4dd63457c3fd59801e725f65af524ec829d", +// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:11" +// }, +// "Index": "0", +// "TV": null +// @@ -22,7 +22,7 @@ +// ], +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3", +// - "ModTime": "4", +// + "ModTime": "10", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// "RefCount": "1" +// } // d[a8ada09dee16d791fd406d629fe29bb0ed084a30:5] // d[a8ada09dee16d791fd406d629fe29bb0ed084a30:6] diff --git a/examples/gno.land/r/demo/boards/z_4_filetest.gno b/examples/gno.land/r/demo/boards/z_4_filetest.gno index 8cbe25b390c..d9d69acdbc9 100644 --- a/examples/gno.land/r/demo/boards/z_4_filetest.gno +++ b/examples/gno.land/r/demo/boards/z_4_filetest.gno @@ -53,25 +53,18 @@ func main() { // switchrealm["gno.land/r/sys/users"] // switchrealm["gno.land/r/sys/users"] // switchrealm["gno.land/r/demo/boards"] -// u[f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:111]={ -// "ObjectInfo": { -// "ID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:111", -// "ModTime": "123", -// "OwnerID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:123", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Node" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "68663c8895d37d479e417c11e21badfe21345c61", -// "ObjectID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:112" -// } -// } -// } +// u[f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:111]= +// @@ -1,8 +1,8 @@ +// { +// "ObjectInfo": { +// "ID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:111", +// - "ModTime": "0", +// - "OwnerID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:106", +// + "ModTime": "123", +// + "OwnerID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:123", +// "RefCount": "1" +// }, +// "Value": { // c[f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:125]={ // "Fields": [ // { @@ -544,25 +537,18 @@ func main() { // } // } // } -// u[f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:120]={ -// "ObjectInfo": { -// "ID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:120", -// "ModTime": "134", -// "OwnerID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:134", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Node" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "dc1f011553dc53e7a846049e08cc77fa35ea6a51", -// "ObjectID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:121" -// } -// } -// } +// u[f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:120]= +// @@ -1,8 +1,8 @@ +// { +// "ObjectInfo": { +// "ID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:120", +// - "ModTime": "0", +// - "OwnerID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:107", +// + "ModTime": "134", +// + "OwnerID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:134", +// "RefCount": "1" +// }, +// "Value": { // c[f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:136]={ // "Fields": [ // { @@ -744,170 +730,100 @@ func main() { // } // } // } -// u[f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:85]={ -// "Fields": [ -// { -// "N": "AQAAAAAAAAA=", -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/demo/boards.BoardID" -// } -// }, -// { -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "16" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "/r/demo/boards:test_board" -// } -// }, -// { -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "16" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "test_board" -// } -// }, -// { -// "T": { -// "@type": "/gno.RefType", -// "ID": "std.Address" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "g1wymu47drhr0kuq2098m792lytgtj2nyx77yrsm" -// } -// }, -// { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Tree" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "a416a751c3a45a1e5cba11e737c51340b081e372", -// "ObjectID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:86" -// } -// }, -// { -// "N": "BAAAAAAAAAA=", -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "65536" -// } -// }, -// { -// "T": { -// "@type": "/gno.RefType", -// "ID": "time.Time" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "36299fccbc13f2a84c4629fad4cb940f0bd4b1c6", -// "ObjectID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:87" -// } -// }, -// { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Tree" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "af6ed0268f99b7f369329094eb6dfaea7812708b", -// "ObjectID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:88" -// } -// } -// ], -// "ObjectInfo": { -// "ID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:85", -// "ModTime": "121", -// "OwnerID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:84", -// "RefCount": "1" -// } -// } -// u[f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:106]={ -// "Fields": [ -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Node" -// } -// }, -// "V": { -// "@type": "/gno.PointerValue", -// "Base": { -// "@type": "/gno.RefValue", -// "Hash": "9809329dc1ddc5d3556f7a8fa3c2cebcbf65560b", -// "ObjectID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:122" -// }, -// "Index": "0", -// "TV": null -// } -// } -// ], -// "ObjectInfo": { -// "ID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:106", -// "ModTime": "121", -// "OwnerID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:105", -// "RefCount": "1" -// } -// } -// u[f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:107]={ -// "Fields": [ -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Node" -// } -// }, -// "V": { -// "@type": "/gno.PointerValue", -// "Base": { -// "@type": "/gno.RefValue", -// "Hash": "ceae9a1c4ed28bb51062e6ccdccfad0caafd1c4f", -// "ObjectID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:133" -// }, -// "Index": "0", -// "TV": null -// } -// } -// ], -// "ObjectInfo": { -// "ID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:107", -// "ModTime": "121", -// "OwnerID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:105", -// "RefCount": "1" -// } -// } -// u[f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:84]={ -// "ObjectInfo": { -// "ID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:84", -// "IsEscaped": true, -// "ModTime": "127", -// "RefCount": "6" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/demo/boards.Board" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "a88a9b837af217656ee27084309f7cd02cd94cb3", -// "ObjectID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:85" -// } -// } -// } +// u[f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:85]= +// @@ -49,7 +49,7 @@ +// } +// }, +// { +// - "N": "AwAAAAAAAAA=", +// + "N": "BAAAAAAAAAA=", +// "T": { +// "@type": "/gno.PrimitiveType", +// "value": "65536" +// @@ -80,7 +80,7 @@ +// ], +// "ObjectInfo": { +// "ID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:85", +// - "ModTime": "110", +// + "ModTime": "121", +// "OwnerID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:84", +// "RefCount": "1" +// } +// u[f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:106]= +// @@ -12,8 +12,8 @@ +// "@type": "/gno.PointerValue", +// "Base": { +// "@type": "/gno.RefValue", +// - "Hash": "3d6aa1e96f126aba3cfd48f0203b85a287a6f1c0", +// - "ObjectID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:111" +// + "Hash": "9809329dc1ddc5d3556f7a8fa3c2cebcbf65560b", +// + "ObjectID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:122" +// }, +// "Index": "0", +// "TV": null +// @@ -22,7 +22,7 @@ +// ], +// "ObjectInfo": { +// "ID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:106", +// - "ModTime": "110", +// + "ModTime": "121", +// "OwnerID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:105", +// "RefCount": "1" +// } +// u[f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:107]= +// @@ -12,8 +12,8 @@ +// "@type": "/gno.PointerValue", +// "Base": { +// "@type": "/gno.RefValue", +// - "Hash": "96a7d0b7b5bf5d366d10c559464ba56a50f78bbc", +// - "ObjectID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:120" +// + "Hash": "ceae9a1c4ed28bb51062e6ccdccfad0caafd1c4f", +// + "ObjectID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:133" +// }, +// "Index": "0", +// "TV": null +// @@ -22,7 +22,7 @@ +// ], +// "ObjectInfo": { +// "ID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:107", +// - "ModTime": "110", +// + "ModTime": "121", +// "OwnerID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:105", +// "RefCount": "1" +// } +// u[f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:84]= +// @@ -2,8 +2,8 @@ +// "ObjectInfo": { +// "ID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:84", +// "IsEscaped": true, +// - "ModTime": "114", +// - "RefCount": "5" +// + "ModTime": "127", +// + "RefCount": "6" +// }, +// "Value": { +// "T": { +// @@ -12,7 +12,7 @@ +// }, +// "V": { +// "@type": "/gno.RefValue", +// - "Hash": "058a49e6ee26f75cc44901754d4c298fd1a1655c", +// + "Hash": "a88a9b837af217656ee27084309f7cd02cd94cb3", +// "ObjectID": "f6dbf411da22e67d74cd7ddba6a76cd7e14a4822:85" +// } +// } +// u[336074805fc853987abe6f7fe3ad97a6a6f3077a:2]= +// @@ -3,8 +3,8 @@ +// "ObjectInfo": { +// "ID": "336074805fc853987abe6f7fe3ad97a6a6f3077a:2", +// "IsEscaped": true, +// - "ModTime": "118", +// - "RefCount": "11" +// + "ModTime": "131", +// + "RefCount": "12" +// }, +// "Parent": null, +// "Source": { // switchrealm["gno.land/r/demo/boards"] // switchrealm["gno.land/r/sys/users"] // switchrealm["gno.land/r/sys/users"] diff --git a/examples/gno.land/r/demo/nft/z_0_filetest.gno b/examples/gno.land/r/demo/nft/z_0_filetest.gno index c72c9191b56..324c154d738 100644 --- a/examples/gno.land/r/demo/nft/z_0_filetest.gno +++ b/examples/gno.land/r/demo/nft/z_0_filetest.gno @@ -176,74 +176,57 @@ func main() { // } // } // } -// u[67c479d3d51d4056b2f4111d5352912a00be311e:5]={ -// "Fields": [ -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Node" -// } -// }, -// "V": { -// "@type": "/gno.PointerValue", -// "Base": { -// "@type": "/gno.RefValue", -// "Hash": "b229b824842ec3e7f2341e33d0fa0ca77af2f480", -// "ObjectID": "67c479d3d51d4056b2f4111d5352912a00be311e:8" -// }, -// "Index": "0", -// "TV": null -// } -// } -// ], -// "ObjectInfo": { -// "ID": "67c479d3d51d4056b2f4111d5352912a00be311e:5", -// "ModTime": "7", -// "OwnerID": "67c479d3d51d4056b2f4111d5352912a00be311e:4", -// "RefCount": "1" -// } -// } -// u[67c479d3d51d4056b2f4111d5352912a00be311e:4]={ -// "Fields": [ -// {}, -// { -// "N": "AQAAAAAAAAA=", -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "32" -// } -// }, -// { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Tree" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "1e0b9dddb406b4f50500a022266a4cb8a4ea38c6", -// "ObjectID": "67c479d3d51d4056b2f4111d5352912a00be311e:5" -// } -// }, -// { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Tree" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "05ab6746ea84b55ca133806af215d99a1c4b045e", -// "ObjectID": "67c479d3d51d4056b2f4111d5352912a00be311e:6" -// } -// } -// ], -// "ObjectInfo": { -// "ID": "67c479d3d51d4056b2f4111d5352912a00be311e:4", -// "ModTime": "7", -// "OwnerID": "67c479d3d51d4056b2f4111d5352912a00be311e:3", -// "RefCount": "1" -// } -// } +// u[67c479d3d51d4056b2f4111d5352912a00be311e:5]= +// @@ -7,12 +7,22 @@ +// "@type": "/gno.RefType", +// "ID": "gno.land/p/demo/avl.Node" +// } +// + }, +// + "V": { +// + "@type": "/gno.PointerValue", +// + "Base": { +// + "@type": "/gno.RefValue", +// + "Hash": "b229b824842ec3e7f2341e33d0fa0ca77af2f480", +// + "ObjectID": "67c479d3d51d4056b2f4111d5352912a00be311e:8" +// + }, +// + "Index": "0", +// + "TV": null +// } +// } +// ], +// "ObjectInfo": { +// "ID": "67c479d3d51d4056b2f4111d5352912a00be311e:5", +// - "ModTime": "0", +// + "ModTime": "7", +// "OwnerID": "67c479d3d51d4056b2f4111d5352912a00be311e:4", +// "RefCount": "1" +// } +// u[67c479d3d51d4056b2f4111d5352912a00be311e:4]= +// @@ -2,6 +2,7 @@ +// "Fields": [ +// {}, +// { +// + "N": "AQAAAAAAAAA=", +// "T": { +// "@type": "/gno.PrimitiveType", +// "value": "32" +// @@ -14,7 +15,7 @@ +// }, +// "V": { +// "@type": "/gno.RefValue", +// - "Hash": "872ac4fb1c12756da1e64712e7496f1d8db57ee0", +// + "Hash": "1e0b9dddb406b4f50500a022266a4cb8a4ea38c6", +// "ObjectID": "67c479d3d51d4056b2f4111d5352912a00be311e:5" +// } +// }, +// @@ -32,7 +33,7 @@ +// ], +// "ObjectInfo": { +// "ID": "67c479d3d51d4056b2f4111d5352912a00be311e:4", +// - "ModTime": "0", +// + "ModTime": "7", +// "OwnerID": "67c479d3d51d4056b2f4111d5352912a00be311e:3", +// "RefCount": "1" +// } // switchrealm["gno.land/r/demo/nft"] // switchrealm["gno.land/r/demo/nft_test"] diff --git a/gnovm/cmd/gno/run.go b/gnovm/cmd/gno/run.go index 160178e349a..a785cf17f1b 100644 --- a/gnovm/cmd/gno/run.go +++ b/gnovm/cmd/gno/run.go @@ -95,9 +95,6 @@ func execRun(cfg *runCfg, args []string, io commands.IO) error { output := test.OutputWithError(stdout, stderr) _, testStore := test.Store( cfg.rootDir, output) - if cfg.verbose { - testStore.SetLogStoreOps(true) - } if len(args) == 0 { args = []string{"."} diff --git a/gnovm/cmd/gno/testdata/test/realm_correct.txtar b/gnovm/cmd/gno/testdata/test/realm_correct.txtar index 8b1478d0df7..c1763860271 100644 --- a/gnovm/cmd/gno/testdata/test/realm_correct.txtar +++ b/gnovm/cmd/gno/testdata/test/realm_correct.txtar @@ -19,3 +19,12 @@ func main() { // Realm: // switchrealm["gno.land/r/xx"] +// u[aea84df38908f9569d0f552575606e6e6e7e22dd:2]= +// @@ -19,6 +19,7 @@ +// }, +// "Values": [ +// { +// + "N": "AQAAAAAAAAA=", +// "T": { +// "@type": "/gno.PrimitiveType", +// "value": "32" diff --git a/gnovm/cmd/gno/testdata/test/realm_incorrect.txtar b/gnovm/cmd/gno/testdata/test/realm_incorrect.txtar index 84f4e3438ee..34a4c62f591 100644 --- a/gnovm/cmd/gno/testdata/test/realm_incorrect.txtar +++ b/gnovm/cmd/gno/testdata/test/realm_incorrect.txtar @@ -6,8 +6,8 @@ stderr '=== RUN file/x_filetest.gno' stderr 'Realm diff:' stderr '--- Expected' -stderr '\+\+\+ Actual' -stderr '@@ -1,2 \+1,2 @@' +stderr '@@ -1,2 \+1,11 @@' +stderr '-xxxx' stderr '-xxx' stderr '\+switchrealm\["gno.land/r/xx"\]' stderr 'x_filetest.gno failed' diff --git a/gnovm/cmd/gno/testdata/test/realm_sync.txtar b/gnovm/cmd/gno/testdata/test/realm_sync.txtar index 91c83235d15..c08287e3e21 100644 --- a/gnovm/cmd/gno/testdata/test/realm_sync.txtar +++ b/gnovm/cmd/gno/testdata/test/realm_sync.txtar @@ -33,3 +33,12 @@ func main() { // Realm: // switchrealm["gno.land/r/xx"] +// u[aea84df38908f9569d0f552575606e6e6e7e22dd:2]= +// @@ -19,6 +19,7 @@ +// }, +// "Values": [ +// { +// + "N": "AQAAAAAAAAA=", +// "T": { +// "@type": "/gno.PrimitiveType", +// "value": "32" diff --git a/gnovm/pkg/gnolang/store.go b/gnovm/pkg/gnolang/store.go index 084572968fb..00eb18784b6 100644 --- a/gnovm/pkg/gnolang/store.go +++ b/gnovm/pkg/gnolang/store.go @@ -2,6 +2,7 @@ package gnolang import ( "fmt" + "io" "slices" "strconv" "strings" @@ -15,6 +16,7 @@ import ( "github.com/gnolang/gno/tm2/pkg/store" "github.com/gnolang/gno/tm2/pkg/store/utils" stringz "github.com/gnolang/gno/tm2/pkg/strings" + "github.com/pmezard/go-difflib/difflib" ) // PackageGetter specifies how the store may retrieve packages which are not @@ -65,8 +67,7 @@ type Store interface { ClearObjectCache() // run before processing a message SetNativeResolver(NativeResolver) // for native functions GetNative(pkgPath string, name Name) func(m *Machine) // for native functions - SetLogStoreOps(enabled bool) - SprintStoreOps() string + SetLogStoreOps(dst io.Writer) LogSwitchRealm(rlmpath string) // to mark change of realm boundaries Print() } @@ -139,7 +140,7 @@ type defaultStore struct { nativeResolver NativeResolver // for injecting natives // transient - opslog []StoreOp // for debugging and testing. + opslog io.Writer // for logging store operations. current []string // for detecting import cycles. // gas @@ -488,6 +489,39 @@ func (ds *defaultStore) SetObject(oo Object) { panic("should not happen") } oo.SetHash(ValueHash{hash}) + // make store op log entry + if ds.opslog != nil { + obj := o2.(Object) + if oo.GetIsNewReal() { + fmt.Fprintf(ds.opslog, "c[%v]=%s\n", + obj.GetObjectID(), + prettyJSON(amino.MustMarshalJSON(obj))) + } else { + old := ds.loadForLog(oid) + old.SetHash(ValueHash{}) + + // need to do this marshal+unmarshal dance to ensure we get as close + // as possible the output of amino that we'll get of MustMarshalJSON(old), + // ie. empty slices should be null, not []. + var pureNew Object + amino.MustUnmarshalAny(amino.MustMarshalAny(obj), &pureNew) + + s, err := difflib.GetUnifiedDiffString(difflib.UnifiedDiff{ + A: difflib.SplitLines(string(prettyJSON(amino.MustMarshalJSON(old)))), + B: difflib.SplitLines(string(prettyJSON(amino.MustMarshalJSON(pureNew)))), + Context: 3, + }) + if err != nil { + panic(err) + } + if s == "" { + fmt.Fprintf(ds.opslog, "u[%v]=(noop)\n", obj.GetObjectID()) + } else { + s = " " + strings.TrimSpace(strings.ReplaceAll(s, "\n", "\n ")) + fmt.Fprintf(ds.opslog, "u[%v]=\n%s\n", obj.GetObjectID(), s) + } + } + } // save bytes to backend. if ds.baseStore != nil { key := backendObjectKey(oid) @@ -511,17 +545,6 @@ func (ds *defaultStore) SetObject(oo Object) { } } ds.cacheObjects[oid] = oo - // make store op log entry - if _, ok := oo.(*Block); !ok && ds.opslog != nil { - var op StoreOpType - if oo.GetIsNewReal() { - op = StoreOpNew - } else { - op = StoreOpMod - } - ds.opslog = append(ds.opslog, - StoreOp{Type: op, Object: o2.(Object)}) - } // if escaped, add hash to iavl. if oo.GetIsEscaped() && ds.iavlStore != nil { var key, value []byte @@ -531,6 +554,18 @@ func (ds *defaultStore) SetObject(oo Object) { } } +func (ds *defaultStore) loadForLog(oid ObjectID) Object { + key := backendObjectKey(oid) + hashbz := ds.baseStore.Get([]byte(key)) + if hashbz == nil { + return nil + } + bz := hashbz[HashSize:] + var oo Object + amino.MustUnmarshal(bz, &oo) + return oo +} + func (ds *defaultStore) DelObject(oo Object) { if bm.OpsEnabled { bm.PauseOpCode() @@ -553,9 +588,8 @@ func (ds *defaultStore) DelObject(oo Object) { ds.baseStore.Delete([]byte(key)) } // make realm op log entry - if _, ok := oo.(*Block); !ok && ds.opslog != nil { - ds.opslog = append(ds.opslog, - StoreOp{Type: StoreOpDel, Object: oo}) + if ds.opslog != nil { + fmt.Fprintf(ds.opslog, "d[%v]\n", oo.GetObjectID()) } } @@ -887,72 +921,19 @@ func (ds *defaultStore) GetNative(pkgPath string, name Name) func(m *Machine) { return nil } -// ---------------------------------------- -// StoreOp - -type StoreOpType uint8 - -const ( - StoreOpNew StoreOpType = iota - StoreOpMod - StoreOpDel - StoreOpSwitchRealm -) - -type StoreOp struct { - Type StoreOpType - Object Object // ref'd objects - RlmPath string // for StoreOpSwitchRealm -} - -// used by the tests/file_test system to check -// veracity of realm operations. -func (sop StoreOp) String() string { - switch sop.Type { - case StoreOpNew: - return fmt.Sprintf("c[%v]=%s", - sop.Object.GetObjectID(), - prettyJSON(amino.MustMarshalJSON(sop.Object))) - case StoreOpMod: - return fmt.Sprintf("u[%v]=%s", - sop.Object.GetObjectID(), - prettyJSON(amino.MustMarshalJSON(sop.Object))) - case StoreOpDel: - return fmt.Sprintf("d[%v]", - sop.Object.GetObjectID()) - case StoreOpSwitchRealm: - return fmt.Sprintf("switchrealm[%q]", - sop.RlmPath) - default: - panic("should not happen") - } -} - -func (ds *defaultStore) SetLogStoreOps(enabled bool) { +// Set to nil to disable. +func (ds *defaultStore) SetLogStoreOps(buf io.Writer) { if enabled { - ds.ResetStoreOps() + ds.opslog = buf } else { ds.opslog = nil } } -// resets .realmops. -func (ds *defaultStore) ResetStoreOps() { - ds.opslog = make([]StoreOp, 0, 1024) -} - -// for test/file_test.go, to test realm changes. -func (ds *defaultStore) SprintStoreOps() string { - ss := make([]string, 0, len(ds.opslog)) - for _, sop := range ds.opslog { - ss = append(ss, sop.String()) - } - return strings.Join(ss, "\n") -} - func (ds *defaultStore) LogSwitchRealm(rlmpath string) { - ds.opslog = append(ds.opslog, - StoreOp{Type: StoreOpSwitchRealm, RlmPath: rlmpath}) + if ds.opslog != nil { + fmt.Fprintf(ds.opslog, "switchrealm[%q]\n", rlmpath) + } } // for debugging diff --git a/gnovm/pkg/test/filetest.go b/gnovm/pkg/test/filetest.go index 18b3fc2cab6..5ddca5162d2 100644 --- a/gnovm/pkg/test/filetest.go +++ b/gnovm/pkg/test/filetest.go @@ -57,6 +57,11 @@ func (opts *TestOptions) runFiletest(filename string, source []byte) (string, er return "", fmt.Errorf("could not parse MAXALLOC directive: %w", err) } + var opslog io.Writer + if dirs.First(DirectiveRealm) != nil { + opslog = new(bytes.Buffer) + } + // Create machine for execution and run test cw := opts.BaseStore.CacheWrap() m := gno.NewMachineWithOptions(gno.MachineOptions{ @@ -67,7 +72,7 @@ func (opts *TestOptions) runFiletest(filename string, source []byte) (string, er Debug: opts.Debug, }) defer m.Release() - result := opts.runTest(m, pkgPath, filename, source) + result := opts.runTest(m, pkgPath, filename, source, opslog) // updated tells whether the directives have been updated, and as such // a new generated filetest should be returned. @@ -130,8 +135,8 @@ func (opts *TestOptions) runFiletest(filename string, source []byte) (string, er } match(dir, result.Output) case DirectiveRealm: - sops := m.Store.SprintStoreOps() + "\n" - match(dir, sops) + res := opslog.(*bytes.Buffer).String() + match(dir, res) case DirectiveEvents: events := m.Context.(*teststd.TestExecContext).EventLogger.Events() evtjson, err := json.MarshalIndent(events, "", " ") @@ -181,7 +186,7 @@ type runResult struct { GoPanicStack []byte } -func (opts *TestOptions) runTest(m *gno.Machine, pkgPath, filename string, content []byte) (rr runResult) { +func (opts *TestOptions) runTest(m *gno.Machine, pkgPath, filename string, content []byte, opslog io.Writer) (rr runResult) { pkgName := gno.Name(pkgPath[strings.LastIndexByte(pkgPath, '/')+1:]) // Eagerly load imports. @@ -197,6 +202,9 @@ func (opts *TestOptions) runTest(m *gno.Machine, pkgPath, filename string, conte }, }); err != nil { // NOTE: we perform this here, so we can capture the runResult. + if swe, ok := err.(*stackWrappedError); ok { + return runResult{Error: err.Error(), GoPanicStack: swe.stack} + } return runResult{Error: err.Error()} } @@ -267,7 +275,7 @@ func (opts *TestOptions) runTest(m *gno.Machine, pkgPath, filename string, conte m.SetActivePackage(pv2) gno.EnableDebug() // clear store.opslog from init function(s). - m.Store.SetLogStoreOps(true) // resets. + m.Store.SetLogStoreOps(opslog) // resets. m.RunStatement(gno.S(gno.Call(gno.X("main")))) } diff --git a/gnovm/pkg/test/imports.go b/gnovm/pkg/test/imports.go index 50b48534c12..dcf5b4d3a50 100644 --- a/gnovm/pkg/test/imports.go +++ b/gnovm/pkg/test/imports.go @@ -192,7 +192,7 @@ func LoadImports(store gno.Store, memPkg *gnovm.MemPackage) (err error) { case *gno.TypedValue: err = errors.New(v.String()) case *gno.PreprocessError: - err = v.Unwrap() + err = &stackWrappedError{v.Unwrap(), debug.Stack()} case gno.UnhandledPanicError: err = v case error: diff --git a/gnovm/pkg/test/test.go b/gnovm/pkg/test/test.go index 67d3a5fd33c..99edd194010 100644 --- a/gnovm/pkg/test/test.go +++ b/gnovm/pkg/test/test.go @@ -323,7 +323,7 @@ func (opts *TestOptions) runTestFiles( alloc = gno.NewAllocator(math.MaxInt64) } // reset store ops, if any - we only need them for some filetests. - opts.TestStore.SetLogStoreOps(false) + opts.TestStore.SetLogStoreOps(nil) // Check if we already have the package - it may have been eagerly loaded. m = Machine(gs, opts.WriterForStore(), memPkg.Path, opts.Debug) diff --git a/gnovm/tests/files/assign_unnamed_type/more/realm_compositelit_filetest.gno b/gnovm/tests/files/assign_unnamed_type/more/realm_compositelit_filetest.gno index 8514c2676aa..e3cc50ab330 100644 --- a/gnovm/tests/files/assign_unnamed_type/more/realm_compositelit_filetest.gno +++ b/gnovm/tests/files/assign_unnamed_type/more/realm_compositelit_filetest.gno @@ -89,3 +89,21 @@ func main() { // } // } // } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:2]= +// @@ -65,6 +65,16 @@ +// "@type": "/gno.RefType", +// "ID": "gno.land/r/test.Int" +// } +// + }, +// + "V": { +// + "@type": "/gno.PointerValue", +// + "Base": { +// + "@type": "/gno.RefValue", +// + "Hash": "3c89d875f7d6daa94113aa4c7e03432ba56202c2", +// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" +// + }, +// + "Index": "0", +// + "TV": null +// } +// }, +// { diff --git a/gnovm/tests/files/heap_item_value.gno b/gnovm/tests/files/heap_item_value.gno index 7a728d2c6f9..ffddb5f3ad3 100644 --- a/gnovm/tests/files/heap_item_value.gno +++ b/gnovm/tests/files/heap_item_value.gno @@ -51,3 +51,38 @@ func main() { // } // } // } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:2]= +// @@ -54,6 +54,16 @@ +// "@type": "/gno.RefType", +// "ID": "gno.land/r/test.S" +// } +// + }, +// + "V": { +// + "@type": "/gno.PointerValue", +// + "Base": { +// + "@type": "/gno.RefValue", +// + "Escaped": true, +// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" +// + }, +// + "Index": "0", +// + "TV": null +// } +// }, +// { +// @@ -63,6 +73,16 @@ +// "@type": "/gno.RefType", +// "ID": "gno.land/r/test.S" +// } +// + }, +// + "V": { +// + "@type": "/gno.PointerValue", +// + "Base": { +// + "@type": "/gno.RefValue", +// + "Escaped": true, +// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" +// + }, +// + "Index": "0", +// + "TV": null +// } +// }, +// { diff --git a/gnovm/tests/files/heap_item_value_init.gno b/gnovm/tests/files/heap_item_value_init.gno index 6be9caed1f4..a6e90c89dc2 100644 --- a/gnovm/tests/files/heap_item_value_init.gno +++ b/gnovm/tests/files/heap_item_value_init.gno @@ -19,23 +19,53 @@ func main() { // Realm: // switchrealm["gno.land/r/test"] -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:4]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", -// "IsEscaped": true, -// "ModTime": "6", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", -// "RefCount": "2" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/test.S" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "a05e5e1e2d2a27d94408a9325a58068e60b504df", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5" -// } -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:2]= +// @@ -3,7 +3,7 @@ +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// "IsEscaped": true, +// - "ModTime": "3", +// + "ModTime": "6", +// "RefCount": "2" +// }, +// "Parent": null, +// @@ -62,7 +62,7 @@ +// "@type": "/gno.PointerValue", +// "Base": { +// "@type": "/gno.RefValue", +// - "Hash": "4f679d9dc2ea37d8f31b020193e7afae0236c97c", +// + "Escaped": true, +// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" +// }, +// "Index": "0", +// @@ -76,6 +76,16 @@ +// "@type": "/gno.RefType", +// "ID": "gno.land/r/test.S" +// } +// + }, +// + "V": { +// + "@type": "/gno.PointerValue", +// + "Base": { +// + "@type": "/gno.RefValue", +// + "Escaped": true, +// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" +// + }, +// + "Index": "0", +// + "TV": null +// } +// }, +// { +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:4]= +// @@ -1,9 +1,10 @@ +// { +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", +// - "ModTime": "0", +// + "IsEscaped": true, +// + "ModTime": "6", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// - "RefCount": "1" +// + "RefCount": "2" +// }, +// "Value": { +// "T": { diff --git a/gnovm/tests/files/zrealm0.gno b/gnovm/tests/files/zrealm0.gno index b8881bac413..e38d623aa25 100644 --- a/gnovm/tests/files/zrealm0.gno +++ b/gnovm/tests/files/zrealm0.gno @@ -20,3 +20,19 @@ func main() { // Realm: // switchrealm["gno.land/r/test"] +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:2]= +// @@ -19,11 +19,10 @@ +// }, +// "Values": [ +// { +// + "N": "AQAAAAAAAAA=", +// "T": { +// - "@type": "/gno.InterfaceType", +// - "Generic": "", +// - "Methods": null, +// - "PkgPath": "" +// + "@type": "/gno.PrimitiveType", +// + "value": "32" +// } +// }, +// { diff --git a/gnovm/tests/files/zrealm1.gno b/gnovm/tests/files/zrealm1.gno index a9205004798..e707e7c3f39 100644 --- a/gnovm/tests/files/zrealm1.gno +++ b/gnovm/tests/files/zrealm1.gno @@ -47,3 +47,18 @@ func main() { // "RefCount": "1" // } // } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:2]= +// @@ -21,7 +21,12 @@ +// { +// "T": { +// "@type": "/gno.RefType", +// - "ID": "gno.land/r/test.Node" +// + "ID": "gno.land/r/test.InnerNode" +// + }, +// + "V": { +// + "@type": "/gno.RefValue", +// + "Hash": "ae4e9e2d205cc0081d4ee249e1d188ebe270b220", +// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" +// } +// }, +// { diff --git a/gnovm/tests/files/zrealm10.gno b/gnovm/tests/files/zrealm10.gno index 110567bfb12..e3d98cf4079 100644 --- a/gnovm/tests/files/zrealm10.gno +++ b/gnovm/tests/files/zrealm10.gno @@ -23,20 +23,13 @@ func main() { // Realm: // switchrealm["gno.land/r/test"] -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:3]={ -// "Fields": [ -// { -// "N": "AwAAAAAAAAA=", -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "32" -// } -// } -// ], -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3", -// "ModTime": "4", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", -// "RefCount": "1" -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:3]= +// @@ -1,7 +1,7 @@ +// { +// "Fields": [ +// { +// - "N": "AQAAAAAAAAA=", +// + "N": "AwAAAAAAAAA=", +// "T": { +// "@type": "/gno.PrimitiveType", +// "value": "32" diff --git a/gnovm/tests/files/zrealm11.gno b/gnovm/tests/files/zrealm11.gno index 7c8805551c9..fd4b834a592 100644 --- a/gnovm/tests/files/zrealm11.gno +++ b/gnovm/tests/files/zrealm11.gno @@ -23,20 +23,13 @@ func main() { // Realm: // switchrealm["gno.land/r/test"] -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:3]={ -// "Fields": [ -// { -// "N": "//////////8=", -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "32" -// } -// } -// ], -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3", -// "ModTime": "4", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", -// "RefCount": "1" -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:3]= +// @@ -1,7 +1,7 @@ +// { +// "Fields": [ +// { +// - "N": "AQAAAAAAAAA=", +// + "N": "//////////8=", +// "T": { +// "@type": "/gno.PrimitiveType", +// "value": "32" diff --git a/gnovm/tests/files/zrealm13.gno b/gnovm/tests/files/zrealm13.gno index f43f440f731..7dcad050ca5 100644 --- a/gnovm/tests/files/zrealm13.gno +++ b/gnovm/tests/files/zrealm13.gno @@ -36,42 +36,42 @@ func main() { // Realm: // switchrealm["gno.land/r/test"] -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:5]={ -// "Data": null, -// "List": [ -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/test.B" -// } -// } -// }, -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/test.B" -// } -// }, -// "V": { -// "@type": "/gno.PointerValue", -// "Base": { -// "@type": "/gno.RefValue", -// "Escaped": true, -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7" -// }, -// "Index": "1", -// "TV": null -// } -// } -// ], -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", -// "ModTime": "9", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", -// "RefCount": "1" -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:5]= +// @@ -8,16 +8,6 @@ +// "@type": "/gno.RefType", +// "ID": "gno.land/r/test.B" +// } +// - }, +// - "V": { +// - "@type": "/gno.PointerValue", +// - "Base": { +// - "@type": "/gno.RefValue", +// - "Escaped": true, +// - "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7" +// - }, +// - "Index": "0", +// - "TV": null +// } +// }, +// { +// @@ -42,7 +32,7 @@ +// ], +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", +// - "ModTime": "6", +// + "ModTime": "9", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// "RefCount": "1" +// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:7]= +// @@ -3,8 +3,8 @@ +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7", +// "IsEscaped": true, +// - "ModTime": "0", +// - "RefCount": "2" +// + "ModTime": "9", +// + "RefCount": "1" +// }, +// "Parent": { +// "@type": "/gno.RefValue", diff --git a/gnovm/tests/files/zrealm14.gno b/gnovm/tests/files/zrealm14.gno index 84ef45982cb..30e9301091f 100644 --- a/gnovm/tests/files/zrealm14.gno +++ b/gnovm/tests/files/zrealm14.gno @@ -36,53 +36,82 @@ func main() { // Realm: // switchrealm["gno.land/r/test"] -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:5]={ -// "Data": null, -// "List": [ -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/test.B" -// } -// } -// }, -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/test.B" -// } -// } -// } -// ], -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", -// "ModTime": "9", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", -// "RefCount": "1" -// } -// } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:3]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3", -// "IsEscaped": true, -// "ModTime": "9", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/test.A" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "95dca2f5b12899b6367402ecdac04c7ca59a03d9", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" -// } -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:5]= +// @@ -8,16 +8,6 @@ +// "@type": "/gno.RefType", +// "ID": "gno.land/r/test.B" +// } +// - }, +// - "V": { +// - "@type": "/gno.PointerValue", +// - "Base": { +// - "@type": "/gno.RefValue", +// - "Escaped": true, +// - "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7" +// - }, +// - "Index": "0", +// - "TV": null +// } +// }, +// { +// @@ -27,22 +17,12 @@ +// "@type": "/gno.RefType", +// "ID": "gno.land/r/test.B" +// } +// - }, +// - "V": { +// - "@type": "/gno.PointerValue", +// - "Base": { +// - "@type": "/gno.RefValue", +// - "Escaped": true, +// - "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7" +// - }, +// - "Index": "1", +// - "TV": null +// } +// } +// ], +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", +// - "ModTime": "6", +// + "ModTime": "9", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// "RefCount": "1" +// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:7]= +// @@ -3,8 +3,8 @@ +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7", +// "IsEscaped": true, +// - "ModTime": "0", +// - "RefCount": "2" +// + "ModTime": "9", +// + "RefCount": "0" +// }, +// "Parent": { +// "@type": "/gno.RefValue", +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:3]= +// @@ -2,8 +2,8 @@ +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3", +// "IsEscaped": true, +// - "ModTime": "8", +// - "RefCount": "3" +// + "ModTime": "9", +// + "RefCount": "1" +// }, +// "Value": { +// "T": { +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:6]= +// @@ -4,7 +4,7 @@ +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6", +// "IsEscaped": true, +// "ModTime": "9", +// - "RefCount": "4" +// + "RefCount": "3" +// }, +// "Parent": { +// "@type": "/gno.RefValue", +// d[a8ada09dee16d791fd406d629fe29bb0ed084a30:7] // d[a8ada09dee16d791fd406d629fe29bb0ed084a30:8] // d[a8ada09dee16d791fd406d629fe29bb0ed084a30:9] diff --git a/gnovm/tests/files/zrealm15.gno b/gnovm/tests/files/zrealm15.gno index b8ba84bad04..86cb2eec64d 100644 --- a/gnovm/tests/files/zrealm15.gno +++ b/gnovm/tests/files/zrealm15.gno @@ -40,90 +40,125 @@ func main() { // Realm: // switchrealm["gno.land/r/test"] -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:5]={ -// "Data": null, -// "List": [ -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/test.B" -// } -// } -// }, -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/test.B" -// } -// } -// } -// ], -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", -// "ModTime": "10", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", -// "RefCount": "1" -// } -// } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:4]={ -// "Fields": [ -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/test.S" -// } -// } -// } -// ], -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", -// "ModTime": "10", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3", -// "RefCount": "1" -// } -// } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:7]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7", -// "IsEscaped": true, -// "ModTime": "10", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/test.S" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "6e4c3c716e28df1d3a25efeb654a7b7a379ce3b0", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8" -// } -// } -// } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:3]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3", -// "IsEscaped": true, -// "ModTime": "10", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/test.A" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "e82e410f22425e48d5f6c611160084a4dd50d3d1", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" -// } -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:5]= +// @@ -8,16 +8,6 @@ +// "@type": "/gno.RefType", +// "ID": "gno.land/r/test.B" +// } +// - }, +// - "V": { +// - "@type": "/gno.PointerValue", +// - "Base": { +// - "@type": "/gno.RefValue", +// - "Escaped": true, +// - "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:9" +// - }, +// - "Index": "0", +// - "TV": null +// } +// }, +// { +// @@ -27,22 +17,12 @@ +// "@type": "/gno.RefType", +// "ID": "gno.land/r/test.B" +// } +// - }, +// - "V": { +// - "@type": "/gno.PointerValue", +// - "Base": { +// - "@type": "/gno.RefValue", +// - "Escaped": true, +// - "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:9" +// - }, +// - "Index": "0", +// - "TV": null +// } +// } +// ], +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", +// - "ModTime": "6", +// + "ModTime": "10", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// "RefCount": "1" +// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:9]= +// @@ -3,8 +3,8 @@ +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:9", +// "IsEscaped": true, +// - "ModTime": "0", +// - "RefCount": "2" +// + "ModTime": "10", +// + "RefCount": "0" +// }, +// "Parent": { +// "@type": "/gno.RefValue", +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:4]= +// @@ -7,22 +7,12 @@ +// "@type": "/gno.RefType", +// "ID": "gno.land/r/test.S" +// } +// - }, +// - "V": { +// - "@type": "/gno.PointerValue", +// - "Base": { +// - "@type": "/gno.RefValue", +// - "Escaped": true, +// - "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7" +// - }, +// - "Index": "0", +// - "TV": null +// } +// } +// ], +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", +// - "ModTime": "6", +// + "ModTime": "10", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3", +// "RefCount": "1" +// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:7]= +// @@ -2,8 +2,8 @@ +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7", +// "IsEscaped": true, +// - "ModTime": "0", +// - "RefCount": "3" +// + "ModTime": "10", +// + "RefCount": "1" +// }, +// "Value": { +// "T": { +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:3]= +// @@ -3,7 +3,7 @@ +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3", +// "IsEscaped": true, +// "ModTime": "10", +// - "RefCount": "2" +// + "RefCount": "1" +// }, +// "Value": { +// "T": { +// @@ -12,7 +12,7 @@ +// }, +// "V": { +// "@type": "/gno.RefValue", +// - "Hash": "38707548446d3e67a38939d1af16cbc2f3a311f9", +// + "Hash": "e82e410f22425e48d5f6c611160084a4dd50d3d1", +// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" +// } +// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:6]= +// @@ -4,7 +4,7 @@ +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6", +// "IsEscaped": true, +// "ModTime": "10", +// - "RefCount": "4" +// + "RefCount": "3" +// }, +// "Parent": { +// "@type": "/gno.RefValue", +// d[a8ada09dee16d791fd406d629fe29bb0ed084a30:9] // d[a8ada09dee16d791fd406d629fe29bb0ed084a30:10] diff --git a/gnovm/tests/files/zrealm16.gno b/gnovm/tests/files/zrealm16.gno index b7bef5028b0..710aaac20b1 100644 --- a/gnovm/tests/files/zrealm16.gno +++ b/gnovm/tests/files/zrealm16.gno @@ -35,81 +35,48 @@ func main() { // Realm: // switchrealm["gno.land/r/test"] -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:10]={ -// "Fields": [ -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/test.A" -// } -// }, -// "V": { -// "@type": "/gno.PointerValue", -// "Base": { -// "@type": "/gno.RefValue", -// "Escaped": true, -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5" -// }, -// "Index": "0", -// "TV": null -// } -// }, -// { -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "16" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "c" -// } -// } -// ], -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:10", -// "ModTime": "11", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:9", -// "RefCount": "1" -// } -// } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:5]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", -// "IsEscaped": true, -// "ModTime": "11", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", -// "RefCount": "2" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/test.A" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "7c9f93a63419d852f132afaf2245ddcac5e8c3fb", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6" -// } -// } -// } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:3]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3", -// "IsEscaped": true, -// "ModTime": "11", -// "RefCount": "2" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/test.A" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "95dca2f5b12899b6367402ecdac04c7ca59a03d9", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" -// } -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:10]= +// @@ -13,7 +13,7 @@ +// "Base": { +// "@type": "/gno.RefValue", +// "Escaped": true, +// - "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3" +// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5" +// }, +// "Index": "0", +// "TV": null +// @@ -32,7 +32,7 @@ +// ], +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:10", +// - "ModTime": "0", +// + "ModTime": "11", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:9", +// "RefCount": "1" +// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:5]= +// @@ -1,9 +1,10 @@ +// { +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", +// - "ModTime": "0", +// + "IsEscaped": true, +// + "ModTime": "11", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// - "RefCount": "1" +// + "RefCount": "2" +// }, +// "Value": { +// "T": { +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:3]= +// @@ -2,8 +2,8 @@ +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3", +// "IsEscaped": true, +// - "ModTime": "10", +// - "RefCount": "3" +// + "ModTime": "11", +// + "RefCount": "2" +// }, +// "Value": { +// "T": { diff --git a/gnovm/tests/files/zrealm2.gno b/gnovm/tests/files/zrealm2.gno index ade5075f454..e2f6b8fbc08 100644 --- a/gnovm/tests/files/zrealm2.gno +++ b/gnovm/tests/files/zrealm2.gno @@ -50,4 +50,25 @@ func main() { // "RefCount": "1" // } // } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:2]= +// @@ -3,7 +3,7 @@ +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// "IsEscaped": true, +// - "ModTime": "3", +// + "ModTime": "4", +// "RefCount": "2" +// }, +// "Parent": null, +// @@ -25,8 +25,8 @@ +// }, +// "V": { +// "@type": "/gno.RefValue", +// - "Hash": "d9cf719bd2589ae934ec781c5ede54ca30ed2189", +// - "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" +// + "Hash": "61d4aa77a87c01e07038c6030d6aca299d0fdc1b", +// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5" +// } +// }, +// { // d[a8ada09dee16d791fd406d629fe29bb0ed084a30:4] diff --git a/gnovm/tests/files/zrealm3.gno b/gnovm/tests/files/zrealm3.gno index 16aa6f05799..8eaa04d2e7b 100644 --- a/gnovm/tests/files/zrealm3.gno +++ b/gnovm/tests/files/zrealm3.gno @@ -82,5 +82,26 @@ func main() { // } // } // } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:2]= +// @@ -3,7 +3,7 @@ +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// "IsEscaped": true, +// - "ModTime": "3", +// + "ModTime": "5", +// "RefCount": "2" +// }, +// "Parent": null, +// @@ -30,8 +30,8 @@ +// "@type": "/gno.PointerValue", +// "Base": { +// "@type": "/gno.RefValue", +// - "Hash": "f901abc9f5949266042ebee17842ca5f373821c9", +// - "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" +// + "Hash": "8197b7c5b4f2c7bf9c12b1c614f6b4dc6e7ce8dd", +// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6" +// }, +// "Index": "0", +// "TV": null // d[a8ada09dee16d791fd406d629fe29bb0ed084a30:4] // d[a8ada09dee16d791fd406d629fe29bb0ed084a30:5] diff --git a/gnovm/tests/files/zrealm4.gno b/gnovm/tests/files/zrealm4.gno index f8c5502fcb1..521a23dab4f 100644 --- a/gnovm/tests/files/zrealm4.gno +++ b/gnovm/tests/files/zrealm4.gno @@ -23,77 +23,60 @@ func main() { // Realm: // switchrealm["gno.land/r/test"] -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:5]={ -// "Fields": [ -// { -// "T": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/types.String" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "key0" -// } -// }, -// { -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "16" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "value0-new" -// } -// }, -// { -// "N": "AQAAAAAAAAA=", -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "32" -// } -// }, -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// } -// } -// }, -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// } -// } -// } -// ], -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", -// "ModTime": "5", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", -// "RefCount": "1" -// } -// } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:4]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", -// "ModTime": "5", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "d57ee28f5030eb8c612b374155fd545675633288", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5" -// } -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:5]= +// @@ -17,7 +17,7 @@ +// }, +// "V": { +// "@type": "/gno.StringValue", +// - "value": "value0" +// + "value": "value0-new" +// } +// }, +// { +// @@ -48,7 +48,7 @@ +// ], +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", +// - "ModTime": "0", +// + "ModTime": "5", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", +// "RefCount": "1" +// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:4]= +// @@ -1,7 +1,7 @@ +// { +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", +// - "ModTime": "0", +// + "ModTime": "5", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// "RefCount": "1" +// }, +// @@ -12,7 +12,7 @@ +// }, +// "V": { +// "@type": "/gno.RefValue", +// - "Hash": "b819bc3b7c351c8e571654d4ce054a997a3ac50f", +// + "Hash": "d57ee28f5030eb8c612b374155fd545675633288", +// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5" +// } +// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:2]= +// @@ -3,7 +3,7 @@ +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// "IsEscaped": true, +// - "ModTime": "3", +// + "ModTime": "5", +// "RefCount": "2" +// }, +// "Parent": null, +// @@ -30,7 +30,7 @@ +// "@type": "/gno.PointerValue", +// "Base": { +// "@type": "/gno.RefValue", +// - "Hash": "7b9d58f40430bbbcbafd47eefb7a6dd342477f71", +// + "Hash": "ef474e536e2d4229156a07798a88edc3767c0896", +// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" +// }, +// "Index": "0", diff --git a/gnovm/tests/files/zrealm5.gno b/gnovm/tests/files/zrealm5.gno index 13d6e4a6b64..2e0d4c31ad5 100644 --- a/gnovm/tests/files/zrealm5.gno +++ b/gnovm/tests/files/zrealm5.gno @@ -97,87 +97,75 @@ func main() { // } // } // } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:5]={ -// "Fields": [ -// { -// "T": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/types.String" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "key0" -// } -// }, -// { -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "16" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "value0" -// } -// }, -// { -// "N": "AgAAAAAAAAA=", -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "32" -// } -// }, -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// } -// } -// }, -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// } -// }, -// "V": { -// "@type": "/gno.PointerValue", -// "Base": { -// "@type": "/gno.RefValue", -// "Hash": "7c63a8fd451cd7c470c1851f1ead037246422ded", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6" -// }, -// "Index": "0", -// "TV": null -// } -// } -// ], -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", -// "ModTime": "5", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", -// "RefCount": "1" -// } -// } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:4]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", -// "ModTime": "5", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "115779a405a1cae45446397ea897a98a4043cbb2", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5" -// } -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:5]= +// @@ -21,7 +21,7 @@ +// } +// }, +// { +// - "N": "AQAAAAAAAAA=", +// + "N": "AgAAAAAAAAA=", +// "T": { +// "@type": "/gno.PrimitiveType", +// "value": "32" +// @@ -43,12 +43,22 @@ +// "@type": "/gno.RefType", +// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" +// } +// + }, +// + "V": { +// + "@type": "/gno.PointerValue", +// + "Base": { +// + "@type": "/gno.RefValue", +// + "Hash": "7c63a8fd451cd7c470c1851f1ead037246422ded", +// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6" +// + }, +// + "Index": "0", +// + "TV": null +// } +// } +// ], +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", +// - "ModTime": "0", +// + "ModTime": "5", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", +// "RefCount": "1" +// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:4]= +// @@ -1,7 +1,7 @@ +// { +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", +// - "ModTime": "0", +// + "ModTime": "5", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// "RefCount": "1" +// }, +// @@ -12,7 +12,7 @@ +// }, +// "V": { +// "@type": "/gno.RefValue", +// - "Hash": "b819bc3b7c351c8e571654d4ce054a997a3ac50f", +// + "Hash": "115779a405a1cae45446397ea897a98a4043cbb2", +// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5" +// } +// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:2]= +// @@ -3,7 +3,7 @@ +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// "IsEscaped": true, +// - "ModTime": "3", +// + "ModTime": "5", +// "RefCount": "2" +// }, +// "Parent": null, +// @@ -30,7 +30,7 @@ +// "@type": "/gno.PointerValue", +// "Base": { +// "@type": "/gno.RefValue", +// - "Hash": "7b9d58f40430bbbcbafd47eefb7a6dd342477f71", +// + "Hash": "4d1fa77f34d3e7a828c62ed4b74365cf7b665042", +// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" +// }, +// "Index": "0", diff --git a/gnovm/tests/files/zrealm6.gno b/gnovm/tests/files/zrealm6.gno index ba162c4d468..1d09a067286 100644 --- a/gnovm/tests/files/zrealm6.gno +++ b/gnovm/tests/files/zrealm6.gno @@ -98,171 +98,122 @@ func main() { // } // } // } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:7]={ -// "Fields": [ -// { -// "T": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/types.String" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "key1" -// } -// }, -// { -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "16" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "value1" -// } -// }, -// { -// "N": "AgAAAAAAAAA=", -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "32" -// } -// }, -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// } -// } -// }, -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// } -// }, -// "V": { -// "@type": "/gno.PointerValue", -// "Base": { -// "@type": "/gno.RefValue", -// "Hash": "81074f5da453299a913435a2ddd05248ee012f8c", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8" -// }, -// "Index": "0", -// "TV": null -// } -// } -// ], -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7", -// "ModTime": "7", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6", -// "RefCount": "1" -// } -// } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:6]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6", -// "ModTime": "7", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "5d64092f4f064ca58bdeffa32f6a119545b401c8", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7" -// } -// } -// } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:5]={ -// "Fields": [ -// { -// "T": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/types.String" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "key0" -// } -// }, -// { -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "16" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "value0" -// } -// }, -// { -// "N": "AwAAAAAAAAA=", -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "32" -// } -// }, -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// } -// } -// }, -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// } -// }, -// "V": { -// "@type": "/gno.PointerValue", -// "Base": { -// "@type": "/gno.RefValue", -// "Hash": "32593d23afa555fe99d433dbca1130b3843da97a", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6" -// }, -// "Index": "0", -// "TV": null -// } -// } -// ], -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", -// "ModTime": "7", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", -// "RefCount": "1" -// } -// } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:4]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", -// "ModTime": "7", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "131993c49dced230bd7071e9bae8d95e28733b73", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5" -// } -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:7]= +// @@ -21,7 +21,7 @@ +// } +// }, +// { +// - "N": "AQAAAAAAAAA=", +// + "N": "AgAAAAAAAAA=", +// "T": { +// "@type": "/gno.PrimitiveType", +// "value": "32" +// @@ -43,12 +43,22 @@ +// "@type": "/gno.RefType", +// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" +// } +// + }, +// + "V": { +// + "@type": "/gno.PointerValue", +// + "Base": { +// + "@type": "/gno.RefValue", +// + "Hash": "81074f5da453299a913435a2ddd05248ee012f8c", +// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8" +// + }, +// + "Index": "0", +// + "TV": null +// } +// } +// ], +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7", +// - "ModTime": "0", +// + "ModTime": "7", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6", +// "RefCount": "1" +// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:6]= +// @@ -1,7 +1,7 @@ +// { +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6", +// - "ModTime": "0", +// + "ModTime": "7", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", +// "RefCount": "1" +// }, +// @@ -12,7 +12,7 @@ +// }, +// "V": { +// "@type": "/gno.RefValue", +// - "Hash": "8a86634afa28ef7d7a1f4272255637f16daae2cd", +// + "Hash": "5d64092f4f064ca58bdeffa32f6a119545b401c8", +// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7" +// } +// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:5]= +// @@ -21,7 +21,7 @@ +// } +// }, +// { +// - "N": "AgAAAAAAAAA=", +// + "N": "AwAAAAAAAAA=", +// "T": { +// "@type": "/gno.PrimitiveType", +// "value": "32" +// @@ -48,7 +48,7 @@ +// "@type": "/gno.PointerValue", +// "Base": { +// "@type": "/gno.RefValue", +// - "Hash": "7c63a8fd451cd7c470c1851f1ead037246422ded", +// + "Hash": "32593d23afa555fe99d433dbca1130b3843da97a", +// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6" +// }, +// "Index": "0", +// @@ -58,7 +58,7 @@ +// ], +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", +// - "ModTime": "0", +// + "ModTime": "7", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", +// "RefCount": "1" +// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:4]= +// @@ -1,7 +1,7 @@ +// { +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", +// - "ModTime": "0", +// + "ModTime": "7", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// "RefCount": "1" +// }, +// @@ -12,7 +12,7 @@ +// }, +// "V": { +// "@type": "/gno.RefValue", +// - "Hash": "b108e3ffd3ab3f3646673648aa103ff557e5b08c", +// + "Hash": "131993c49dced230bd7071e9bae8d95e28733b73", +// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5" +// } +// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:2]= +// @@ -3,7 +3,7 @@ +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// "IsEscaped": true, +// - "ModTime": "3", +// + "ModTime": "7", +// "RefCount": "2" +// }, +// "Parent": null, +// @@ -30,7 +30,7 @@ +// "@type": "/gno.PointerValue", +// "Base": { +// "@type": "/gno.RefValue", +// - "Hash": "ade9fce2a987ef1924040a1d75c0172410c66952", +// + "Hash": "5c52e0d7b383389f6a176fb490e91211197eca77", +// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" +// }, +// "Index": "0", diff --git a/gnovm/tests/files/zrealm7.gno b/gnovm/tests/files/zrealm7.gno index 5b932962db4..331c5b2fa6d 100644 --- a/gnovm/tests/files/zrealm7.gno +++ b/gnovm/tests/files/zrealm7.gno @@ -99,255 +99,208 @@ func main() { // } // } // } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:9]={ -// "Fields": [ -// { -// "T": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/types.String" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "key2" -// } -// }, -// { -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "16" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "value2" -// } -// }, -// { -// "N": "AgAAAAAAAAA=", -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "32" -// } -// }, -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// } -// } -// }, -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// } -// }, -// "V": { -// "@type": "/gno.PointerValue", -// "Base": { -// "@type": "/gno.RefValue", -// "Hash": "4f88fcdc73a4a94905e8e4044aa50c2ec7bf2227", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:10" -// }, -// "Index": "0", -// "TV": null -// } -// } -// ], -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:9", -// "ModTime": "9", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8", -// "RefCount": "1" -// } -// } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:5]={ -// "Fields": [ -// { -// "T": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/types.String" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "key0" -// } -// }, -// { -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "16" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "value0" -// } -// }, -// { -// "N": "AQAAAAAAAAA=", -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "32" -// } -// }, -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// } -// } -// }, -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// } -// } -// } -// ], -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", -// "ModTime": "9", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", -// "RefCount": "1" -// } -// } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:4]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", -// "ModTime": "9", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "d7fbb234dca9f194f35fe5409a62db9daf39b0fc", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5" -// } -// } -// } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:8]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8", -// "ModTime": "9", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "2c172bbe0183ccc73c59d9acb196c45b0331c39e", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:9" -// } -// } -// } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:7]={ -// "Fields": [ -// { -// "T": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/types.String" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "key1" -// } -// }, -// { -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "16" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "value1" -// } -// }, -// { -// "N": "AwAAAAAAAAA=", -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "32" -// } -// }, -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// } -// }, -// "V": { -// "@type": "/gno.PointerValue", -// "Base": { -// "@type": "/gno.RefValue", -// "Hash": "76a40dcf03d32c312c2213265c14d4de1b12a810", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" -// }, -// "Index": "0", -// "TV": null -// } -// }, -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// } -// }, -// "V": { -// "@type": "/gno.PointerValue", -// "Base": { -// "@type": "/gno.RefValue", -// "Hash": "43f69f24b7827a331921b4af0f667346d186e0c3", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8" -// }, -// "Index": "0", -// "TV": null -// } -// } -// ], -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7", -// "ModTime": "9", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6", -// "RefCount": "1" -// } -// } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:6]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6", -// "ModTime": "9", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "92b2f4ebab764951f64086bce480f898f755de5a", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7" -// } -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:9]= +// @@ -21,7 +21,7 @@ +// } +// }, +// { +// - "N": "AQAAAAAAAAA=", +// + "N": "AgAAAAAAAAA=", +// "T": { +// "@type": "/gno.PrimitiveType", +// "value": "32" +// @@ -43,12 +43,22 @@ +// "@type": "/gno.RefType", +// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" +// } +// + }, +// + "V": { +// + "@type": "/gno.PointerValue", +// + "Base": { +// + "@type": "/gno.RefValue", +// + "Hash": "4f88fcdc73a4a94905e8e4044aa50c2ec7bf2227", +// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:10" +// + }, +// + "Index": "0", +// + "TV": null +// } +// } +// ], +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:9", +// - "ModTime": "0", +// + "ModTime": "9", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8", +// "RefCount": "1" +// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:5]= +// @@ -21,7 +21,7 @@ +// } +// }, +// { +// - "N": "AwAAAAAAAAA=", +// + "N": "AQAAAAAAAAA=", +// "T": { +// "@type": "/gno.PrimitiveType", +// "value": "32" +// @@ -43,22 +43,12 @@ +// "@type": "/gno.RefType", +// "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" +// } +// - }, +// - "V": { +// - "@type": "/gno.PointerValue", +// - "Base": { +// - "@type": "/gno.RefValue", +// - "Hash": "e47c9fe5fa842d7ec1bbbc99317cb157a4174877", +// - "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6" +// - }, +// - "Index": "0", +// - "TV": null +// } +// } +// ], +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", +// - "ModTime": "0", +// + "ModTime": "9", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", +// "RefCount": "1" +// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:4]= +// @@ -1,7 +1,7 @@ +// { +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", +// - "ModTime": "0", +// + "ModTime": "9", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// "RefCount": "1" +// }, +// @@ -12,7 +12,7 @@ +// }, +// "V": { +// "@type": "/gno.RefValue", +// - "Hash": "916668cd920db8d3551f75ba22194d2e1e1cc804", +// + "Hash": "d7fbb234dca9f194f35fe5409a62db9daf39b0fc", +// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5" +// } +// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:8]= +// @@ -1,7 +1,7 @@ +// { +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8", +// - "ModTime": "0", +// + "ModTime": "9", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7", +// "RefCount": "1" +// }, +// @@ -12,7 +12,7 @@ +// }, +// "V": { +// "@type": "/gno.RefValue", +// - "Hash": "17ce788733dc5f31545164a039c5eee6b30e3b25", +// + "Hash": "2c172bbe0183ccc73c59d9acb196c45b0331c39e", +// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:9" +// } +// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:7]= +// @@ -21,19 +21,10 @@ +// } +// }, +// { +// - "N": "AgAAAAAAAAA=", +// + "N": "AwAAAAAAAAA=", +// "T": { +// "@type": "/gno.PrimitiveType", +// "value": "32" +// - } +// - }, +// - { +// - "T": { +// - "@type": "/gno.PointerType", +// - "Elt": { +// - "@type": "/gno.RefType", +// - "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" +// - } +// } +// }, +// { +// @@ -48,7 +39,26 @@ +// "@type": "/gno.PointerValue", +// "Base": { +// "@type": "/gno.RefValue", +// - "Hash": "750e6705842b4af3b3602ccaaca3d089f8402679", +// + "Hash": "76a40dcf03d32c312c2213265c14d4de1b12a810", +// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" +// + }, +// + "Index": "0", +// + "TV": null +// + } +// + }, +// + { +// + "T": { +// + "@type": "/gno.PointerType", +// + "Elt": { +// + "@type": "/gno.RefType", +// + "ID": "github.com/gnolang/gno/_test/timtadh/data_structures/tree/avl.AvlNode" +// + } +// + }, +// + "V": { +// + "@type": "/gno.PointerValue", +// + "Base": { +// + "@type": "/gno.RefValue", +// + "Hash": "43f69f24b7827a331921b4af0f667346d186e0c3", +// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8" +// }, +// "Index": "0", +// @@ -58,7 +68,7 @@ +// ], +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7", +// - "ModTime": "0", +// + "ModTime": "9", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6", +// "RefCount": "1" +// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:6]= +// @@ -1,7 +1,7 @@ +// { +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6", +// - "ModTime": "0", +// + "ModTime": "9", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", +// "RefCount": "1" +// }, +// @@ -12,7 +12,7 @@ +// }, +// "V": { +// "@type": "/gno.RefValue", +// - "Hash": "71038fd71391c2de4859dedffaaf6feae2282dae", +// + "Hash": "92b2f4ebab764951f64086bce480f898f755de5a", +// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7" +// } +// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:2]= +// @@ -3,7 +3,7 @@ +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// "IsEscaped": true, +// - "ModTime": "3", +// + "ModTime": "9", +// "RefCount": "2" +// }, +// "Parent": null, +// @@ -30,8 +30,8 @@ +// "@type": "/gno.PointerValue", +// "Base": { +// "@type": "/gno.RefValue", +// - "Hash": "a4fa9bdf45caf8c6b5be7a3752704423817b3ef2", +// - "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" +// + "Hash": "a303dd292d2104ce5461b1e795b9855540fbe179", +// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6" +// }, +// "Index": "0", +// "TV": null diff --git a/gnovm/tests/files/zrealm8.gno b/gnovm/tests/files/zrealm8.gno index 2b8e946509c..6d48112ac01 100644 --- a/gnovm/tests/files/zrealm8.gno +++ b/gnovm/tests/files/zrealm8.gno @@ -23,20 +23,13 @@ func main() { // Realm: // switchrealm["gno.land/r/test"] -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:3]={ -// "Fields": [ -// { -// "N": "AgAAAAAAAAA=", -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "32" -// } -// } -// ], -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3", -// "ModTime": "4", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", -// "RefCount": "1" -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:3]= +// @@ -1,7 +1,7 @@ +// { +// "Fields": [ +// { +// - "N": "AQAAAAAAAAA=", +// + "N": "AgAAAAAAAAA=", +// "T": { +// "@type": "/gno.PrimitiveType", +// "value": "32" diff --git a/gnovm/tests/files/zrealm9.gno b/gnovm/tests/files/zrealm9.gno index 4ddf67d018e..75e49da5e8f 100644 --- a/gnovm/tests/files/zrealm9.gno +++ b/gnovm/tests/files/zrealm9.gno @@ -23,19 +23,12 @@ func main() { // Realm: // switchrealm["gno.land/r/test"] -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:3]={ -// "Fields": [ -// { -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "32" -// } -// } -// ], -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3", -// "ModTime": "4", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", -// "RefCount": "1" -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:3]= +// @@ -1,7 +1,6 @@ +// { +// "Fields": [ +// { +// - "N": "AQAAAAAAAAA=", +// "T": { +// "@type": "/gno.PrimitiveType", +// "value": "32" diff --git a/gnovm/tests/files/zrealm_avl0.gno b/gnovm/tests/files/zrealm_avl0.gno index 1db1adebd3e..73cf1a4dccf 100644 --- a/gnovm/tests/files/zrealm_avl0.gno +++ b/gnovm/tests/files/zrealm_avl0.gno @@ -24,25 +24,18 @@ func main() { // Realm: // switchrealm["gno.land/r/test"] -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:4]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", -// "ModTime": "7", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Node" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "627e8e517e7ae5db0f3b753e2a32b607989198b6", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5" -// } -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:4]= +// @@ -1,8 +1,8 @@ +// { +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", +// - "ModTime": "0", +// - "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// + "ModTime": "7", +// + "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7", +// "RefCount": "1" +// }, +// "Value": { // c[a8ada09dee16d791fd406d629fe29bb0ed084a30:9]={ // "Fields": [ // { @@ -215,3 +208,24 @@ func main() { // } // } // } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:2]= +// @@ -3,7 +3,7 @@ +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// "IsEscaped": true, +// - "ModTime": "3", +// + "ModTime": "5", +// "RefCount": "2" +// }, +// "Parent": null, +// @@ -30,8 +30,8 @@ +// "@type": "/gno.PointerValue", +// "Base": { +// "@type": "/gno.RefValue", +// - "Hash": "424b49c215f471979ccd718172a016e6ec9dd934", +// - "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" +// + "Hash": "ae86874f9b47fa5e64c30b3e92e9d07f2ec967a4", +// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6" +// }, +// "Index": "0", +// "TV": null diff --git a/gnovm/tests/files/zrealm_avl1.gno b/gnovm/tests/files/zrealm_avl1.gno index 572c49333bc..932cc8053cc 100644 --- a/gnovm/tests/files/zrealm_avl1.gno +++ b/gnovm/tests/files/zrealm_avl1.gno @@ -24,44 +24,26 @@ func main() { // Realm: // switchrealm["gno.land/r/test"] -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:6]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6", -// "ModTime": "11", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Node" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "1375f6f96a1a3f298347dc8fc0065afa36cb7f0f", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7" -// } -// } -// } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:8]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8", -// "ModTime": "13", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Node" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "b28057ab7be6383785c0a5503e8a531bdbc21851", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:9" -// } -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:6]= +// @@ -1,7 +1,7 @@ +// { +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6", +// - "ModTime": "0", +// + "ModTime": "11", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", +// "RefCount": "1" +// }, +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:8]= +// @@ -1,7 +1,7 @@ +// { +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8", +// - "ModTime": "0", +// + "ModTime": "13", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", +// "RefCount": "1" +// }, // c[a8ada09dee16d791fd406d629fe29bb0ed084a30:15]={ // "Fields": [ // { @@ -326,5 +308,26 @@ func main() { // } // } // } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:2]= +// @@ -3,7 +3,7 @@ +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// "IsEscaped": true, +// - "ModTime": "3", +// + "ModTime": "9", +// "RefCount": "2" +// }, +// "Parent": null, +// @@ -30,8 +30,8 @@ +// "@type": "/gno.PointerValue", +// "Base": { +// "@type": "/gno.RefValue", +// - "Hash": "213a2c56908ed00c6d21377f37be61a76102cd5f", +// - "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" +// + "Hash": "515b45e4a6f5fa153a0251d7108781d86c52ce1c", +// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:10" +// }, +// "Index": "0", +// "TV": null // d[a8ada09dee16d791fd406d629fe29bb0ed084a30:4] // d[a8ada09dee16d791fd406d629fe29bb0ed084a30:5] diff --git a/gnovm/tests/files/zrealm_avl2.gno b/gnovm/tests/files/zrealm_avl2.gno index b861413feca..e42fd7e8fe5 100644 --- a/gnovm/tests/files/zrealm_avl2.gno +++ b/gnovm/tests/files/zrealm_avl2.gno @@ -23,25 +23,18 @@ func main() { // Realm: // switchrealm["gno.land/r/test"] -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:5]={ -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", -// "ModTime": "8", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Node" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "0b5493aa4ea42087780bdfcaebab2c3eec351c15", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:6" -// } -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:5]= +// @@ -1,8 +1,8 @@ +// { +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5", +// - "ModTime": "0", +// - "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3", +// + "ModTime": "8", +// + "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:8", +// "RefCount": "1" +// }, +// "Value": { // c[a8ada09dee16d791fd406d629fe29bb0ed084a30:10]={ // "Fields": [ // { @@ -214,32 +207,24 @@ func main() { // } // } // } -// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:3]={ -// "Fields": [ -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Node" -// } -// }, -// "V": { -// "@type": "/gno.PointerValue", -// "Base": { -// "@type": "/gno.RefValue", -// "Hash": "953a28a33bf1bae93eb1fcb4d1b348ccabcbaabd", -// "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7" -// }, -// "Index": "0", -// "TV": null -// } -// } -// ], -// "ObjectInfo": { -// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3", -// "ModTime": "6", -// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", -// "RefCount": "1" -// } -// } +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:3]= +// @@ -12,8 +12,8 @@ +// "@type": "/gno.PointerValue", +// "Base": { +// "@type": "/gno.RefValue", +// - "Hash": "89e08e63f94e2ebb6f98ee2f66057f92229e2ad7", +// - "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:5" +// + "Hash": "953a28a33bf1bae93eb1fcb4d1b348ccabcbaabd", +// + "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:7" +// }, +// "Index": "0", +// "TV": null +// @@ -22,7 +22,7 @@ +// ], +// "ObjectInfo": { +// "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3", +// - "ModTime": "4", +// + "ModTime": "6", +// "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", +// "RefCount": "1" +// } diff --git a/gnovm/tests/files/zrealm_crossrealm21.gno b/gnovm/tests/files/zrealm_crossrealm21.gno index e3b29f671a4..482023ba9ec 100644 --- a/gnovm/tests/files/zrealm_crossrealm21.gno +++ b/gnovm/tests/files/zrealm_crossrealm21.gno @@ -24,49 +24,74 @@ func main() { // Realm: // switchrealm["gno.land/r/demo/tests/crossrealm"] -// u[0edc46caf30c00efd87b6c272673239eafbd051e:3]={ -// "ObjectInfo": { -// "ID": "0edc46caf30c00efd87b6c272673239eafbd051e:3", -// "IsEscaped": true, -// "ModTime": "5", -// "OwnerID": "0edc46caf30c00efd87b6c272673239eafbd051e:2", -// "RefCount": "2" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/demo/tests/crossrealm_b.fooer" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "8222b763e9bc04b4b7805e165e9f1324a39f28b6", -// "ObjectID": "0edc46caf30c00efd87b6c272673239eafbd051e:4" -// } -// } -// } +// u[1712ac7adcfdc8e58a67e5615e20fb312394c4df:2]= +// @@ -3,7 +3,7 @@ +// "ObjectInfo": { +// "ID": "1712ac7adcfdc8e58a67e5615e20fb312394c4df:2", +// "IsEscaped": true, +// - "ModTime": "3", +// + "ModTime": "5", +// "RefCount": "2" +// }, +// "Parent": null, +// @@ -283,8 +283,21 @@ +// }, +// { +// "T": { +// - "@type": "/gno.RefType", +// - "ID": "gno.land/r/demo/tests/crossrealm.Fooer" +// + "@type": "/gno.PointerType", +// + "Elt": { +// + "@type": "/gno.RefType", +// + "ID": "gno.land/r/demo/tests/crossrealm_b.fooer" +// + } +// + }, +// + "V": { +// + "@type": "/gno.PointerValue", +// + "Base": { +// + "@type": "/gno.RefValue", +// + "Escaped": true, +// + "ObjectID": "0edc46caf30c00efd87b6c272673239eafbd051e:3" +// + }, +// + "Index": "0", +// + "TV": null +// } +// }, +// { +// u[0edc46caf30c00efd87b6c272673239eafbd051e:3]= +// @@ -1,9 +1,10 @@ +// { +// "ObjectInfo": { +// "ID": "0edc46caf30c00efd87b6c272673239eafbd051e:3", +// - "ModTime": "0", +// + "IsEscaped": true, +// + "ModTime": "5", +// "OwnerID": "0edc46caf30c00efd87b6c272673239eafbd051e:2", +// - "RefCount": "1" +// + "RefCount": "2" +// }, +// "Value": { +// "T": { // switchrealm["gno.land/r/demo/tests/crossrealm_b"] // switchrealm["gno.land/r/demo/tests/crossrealm"] // switchrealm["gno.land/r/demo/tests/crossrealm_b"] -// u[0edc46caf30c00efd87b6c272673239eafbd051e:4]={ -// "Fields": [ -// { -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "16" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "B" -// } -// } -// ], -// "ObjectInfo": { -// "ID": "0edc46caf30c00efd87b6c272673239eafbd051e:4", -// "ModTime": "5", -// "OwnerID": "0edc46caf30c00efd87b6c272673239eafbd051e:3", -// "RefCount": "1" -// } -// } +// u[0edc46caf30c00efd87b6c272673239eafbd051e:4]= +// @@ -7,13 +7,13 @@ +// }, +// "V": { +// "@type": "/gno.StringValue", +// - "value": "A" +// + "value": "B" +// } +// } +// ], +// "ObjectInfo": { +// "ID": "0edc46caf30c00efd87b6c272673239eafbd051e:4", +// - "ModTime": "0", +// + "ModTime": "5", +// "OwnerID": "0edc46caf30c00efd87b6c272673239eafbd051e:3", +// "RefCount": "1" +// } // switchrealm["gno.land/r/demo/tests/crossrealm_b"] // switchrealm["gno.land/r/demo/tests/crossrealm"] // switchrealm["gno.land/r/crossrealm_test"] diff --git a/gnovm/tests/files/zrealm_crossrealm22.gno b/gnovm/tests/files/zrealm_crossrealm22.gno index afb9dab6d59..e0391f4dfe9 100644 --- a/gnovm/tests/files/zrealm_crossrealm22.gno +++ b/gnovm/tests/files/zrealm_crossrealm22.gno @@ -38,121 +38,331 @@ func main() { // Realm: // switchrealm["gno.land/r/demo/tests/crossrealm"] -// u[0edc46caf30c00efd87b6c272673239eafbd051e:3]={ +// c[1712ac7adcfdc8e58a67e5615e20fb312394c4df:6]={ +// "Blank": {}, // "ObjectInfo": { -// "ID": "0edc46caf30c00efd87b6c272673239eafbd051e:3", -// "IsEscaped": true, -// "ModTime": "6", -// "OwnerID": "0edc46caf30c00efd87b6c272673239eafbd051e:2", -// "RefCount": "2" +// "ID": "1712ac7adcfdc8e58a67e5615e20fb312394c4df:6", +// "ModTime": "0", +// "OwnerID": "1712ac7adcfdc8e58a67e5615e20fb312394c4df:2", +// "RefCount": "1" +// }, +// "Parent": { +// "@type": "/gno.RefValue", +// "Escaped": true, +// "ObjectID": "f5a516808f8976c33939133293d598ce3bca4e8d:3" // }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/demo/tests/crossrealm_b.fooer" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "8222b763e9bc04b4b7805e165e9f1324a39f28b6", -// "ObjectID": "0edc46caf30c00efd87b6c272673239eafbd051e:4" +// "Source": { +// "@type": "/gno.RefNode", +// "BlockNode": null, +// "Location": { +// "Column": "1", +// "File": "files/zrealm_crossrealm22.gno", +// "Line": "11", +// "PkgPath": "gno.land/r/crossrealm_test" // } -// } -// } -// switchrealm["gno.land/r/crossrealm_test"] -// switchrealm["gno.land/r/demo/tests/crossrealm_b"] -// switchrealm["gno.land/r/demo/tests/crossrealm"] -// switchrealm["gno.land/r/demo/tests/crossrealm_b"] -// u[0edc46caf30c00efd87b6c272673239eafbd051e:4]={ -// "Fields": [ +// }, +// "Values": [ // { // "T": { -// "@type": "/gno.PrimitiveType", -// "value": "16" +// "@type": "/gno.PointerType", +// "Elt": { +// "@type": "/gno.RefType", +// "ID": "gno.land/r/demo/tests/crossrealm_b.fooer" +// } // }, // "V": { -// "@type": "/gno.StringValue", -// "value": "B" +// "@type": "/gno.PointerValue", +// "Base": { +// "@type": "/gno.RefValue", +// "Escaped": true, +// "ObjectID": "0edc46caf30c00efd87b6c272673239eafbd051e:3" +// }, +// "Index": "0", +// "TV": null // } // } -// ], -// "ObjectInfo": { -// "ID": "0edc46caf30c00efd87b6c272673239eafbd051e:4", -// "ModTime": "5", -// "OwnerID": "0edc46caf30c00efd87b6c272673239eafbd051e:3", -// "RefCount": "1" -// } +// ] // } +// u[1712ac7adcfdc8e58a67e5615e20fb312394c4df:2]= +// @@ -3,7 +3,7 @@ +// "ObjectInfo": { +// "ID": "1712ac7adcfdc8e58a67e5615e20fb312394c4df:2", +// "IsEscaped": true, +// - "ModTime": "3", +// + "ModTime": "5", +// "RefCount": "2" +// }, +// "Parent": null, +// @@ -495,6 +495,46 @@ +// "T": { +// "@type": "/gno.RefType", +// "ID": "gno.land/r/demo/tests/crossrealm.FooerGetter" +// + }, +// + "V": { +// + "@type": "/gno.FuncValue", +// + "Closure": { +// + "@type": "/gno.RefValue", +// + "Hash": "23de97a577d573252d00394ce9b71c24b0646546", +// + "ObjectID": "1712ac7adcfdc8e58a67e5615e20fb312394c4df:6" +// + }, +// + "FileName": "", +// + "IsMethod": false, +// + "Name": "", +// + "NativeName": "", +// + "NativePkg": "", +// + "PkgPath": "gno.land/r/crossrealm_test", +// + "Source": { +// + "@type": "/gno.RefNode", +// + "BlockNode": null, +// + "Location": { +// + "Column": "28", +// + "File": "files/zrealm_crossrealm22.gno", +// + "Line": "13", +// + "PkgPath": "gno.land/r/crossrealm_test" +// + } +// + }, +// + "Type": { +// + "@type": "/gno.FuncType", +// + "IsClosure": false, +// + "Params": null, +// + "Results": [ +// + { +// + "Embedded": false, +// + "Name": "", +// + "Tag": "", +// + "Type": { +// + "@type": "/gno.RefType", +// + "ID": "gno.land/r/demo/tests/crossrealm.Fooer" +// + } +// + } +// + ] +// + } +// } +// }, +// { +// u[0edc46caf30c00efd87b6c272673239eafbd051e:3]= +// @@ -1,9 +1,10 @@ +// { +// "ObjectInfo": { +// "ID": "0edc46caf30c00efd87b6c272673239eafbd051e:3", +// - "ModTime": "0", +// + "IsEscaped": true, +// + "ModTime": "6", +// "OwnerID": "0edc46caf30c00efd87b6c272673239eafbd051e:2", +// - "RefCount": "1" +// + "RefCount": "2" +// }, +// "Value": { +// "T": { +// u[f5a516808f8976c33939133293d598ce3bca4e8d:3]= +// @@ -3,8 +3,8 @@ +// "ObjectInfo": { +// "ID": "f5a516808f8976c33939133293d598ce3bca4e8d:3", +// "IsEscaped": true, +// - "ModTime": "0", +// - "RefCount": "2" +// + "ModTime": "6", +// + "RefCount": "3" +// }, +// "Parent": { +// "@type": "/gno.RefValue", // switchrealm["gno.land/r/crossrealm_test"] // switchrealm["gno.land/r/demo/tests/crossrealm_b"] // switchrealm["gno.land/r/demo/tests/crossrealm"] // switchrealm["gno.land/r/demo/tests/crossrealm_b"] -// u[0edc46caf30c00efd87b6c272673239eafbd051e:4]={ -// "Fields": [ -// { -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "16" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "C" -// } -// } -// ], -// "ObjectInfo": { -// "ID": "0edc46caf30c00efd87b6c272673239eafbd051e:4", -// "ModTime": "5", -// "OwnerID": "0edc46caf30c00efd87b6c272673239eafbd051e:3", -// "RefCount": "1" -// } -// } +// u[0edc46caf30c00efd87b6c272673239eafbd051e:4]= +// @@ -7,13 +7,13 @@ +// }, +// "V": { +// "@type": "/gno.StringValue", +// - "value": "A" +// + "value": "B" +// } +// } +// ], +// "ObjectInfo": { +// "ID": "0edc46caf30c00efd87b6c272673239eafbd051e:4", +// - "ModTime": "0", +// + "ModTime": "5", +// "OwnerID": "0edc46caf30c00efd87b6c272673239eafbd051e:3", +// "RefCount": "1" +// } +// switchrealm["gno.land/r/crossrealm_test"] +// switchrealm["gno.land/r/demo/tests/crossrealm_b"] // switchrealm["gno.land/r/demo/tests/crossrealm"] -// u[0edc46caf30c00efd87b6c272673239eafbd051e:3]={ -// "ObjectInfo": { -// "ID": "0edc46caf30c00efd87b6c272673239eafbd051e:3", -// "IsEscaped": true, -// "ModTime": "6", -// "OwnerID": "0edc46caf30c00efd87b6c272673239eafbd051e:2", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/demo/tests/crossrealm_b.fooer" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "759fd5b507fff8ea1b18d401550d918387a63445", -// "ObjectID": "0edc46caf30c00efd87b6c272673239eafbd051e:4" -// } -// } -// } +// switchrealm["gno.land/r/demo/tests/crossrealm_b"] +// u[0edc46caf30c00efd87b6c272673239eafbd051e:4]= +// @@ -7,7 +7,7 @@ +// }, +// "V": { +// "@type": "/gno.StringValue", +// - "value": "B" +// + "value": "C" +// } +// } +// ], +// switchrealm["gno.land/r/demo/tests/crossrealm"] +// u[1712ac7adcfdc8e58a67e5615e20fb312394c4df:2]= +// @@ -3,7 +3,7 @@ +// "ObjectInfo": { +// "ID": "1712ac7adcfdc8e58a67e5615e20fb312394c4df:2", +// "IsEscaped": true, +// - "ModTime": "5", +// + "ModTime": "6", +// "RefCount": "2" +// }, +// "Parent": null, +// @@ -500,23 +500,23 @@ +// "@type": "/gno.FuncValue", +// "Closure": { +// "@type": "/gno.RefValue", +// - "Hash": "23de97a577d573252d00394ce9b71c24b0646546", +// - "ObjectID": "1712ac7adcfdc8e58a67e5615e20fb312394c4df:6" +// + "Escaped": true, +// + "ObjectID": "0edc46caf30c00efd87b6c272673239eafbd051e:5" +// }, +// "FileName": "", +// "IsMethod": false, +// "Name": "", +// "NativeName": "", +// "NativePkg": "", +// - "PkgPath": "gno.land/r/crossrealm_test", +// - "Source": { +// - "@type": "/gno.RefNode", +// - "BlockNode": null, +// - "Location": { +// - "Column": "28", +// - "File": "files/zrealm_crossrealm22.gno", +// - "Line": "13", +// - "PkgPath": "gno.land/r/crossrealm_test" +// + "PkgPath": "gno.land/r/demo/tests/crossrealm_b", +// + "Source": { +// + "@type": "/gno.RefNode", +// + "BlockNode": null, +// + "Location": { +// + "Column": "23", +// + "File": "crossrealm.gno", +// + "Line": "23", +// + "PkgPath": "gno.land/r/demo/tests/crossrealm_b" +// } +// }, +// "Type": { +// u[0edc46caf30c00efd87b6c272673239eafbd051e:5]= +// @@ -3,8 +3,8 @@ +// "ObjectInfo": { +// "ID": "0edc46caf30c00efd87b6c272673239eafbd051e:5", +// "IsEscaped": true, +// - "ModTime": "0", +// - "RefCount": "3" +// + "ModTime": "6", +// + "RefCount": "4" +// }, +// "Parent": { +// "@type": "/gno.RefValue", +// u[0edc46caf30c00efd87b6c272673239eafbd051e:3]= +// @@ -4,7 +4,7 @@ +// "IsEscaped": true, +// "ModTime": "6", +// "OwnerID": "0edc46caf30c00efd87b6c272673239eafbd051e:2", +// - "RefCount": "2" +// + "RefCount": "1" +// }, +// "Value": { +// "T": { +// @@ -13,7 +13,7 @@ +// }, +// "V": { +// "@type": "/gno.RefValue", +// - "Hash": "8222b763e9bc04b4b7805e165e9f1324a39f28b6", +// + "Hash": "759fd5b507fff8ea1b18d401550d918387a63445", +// "ObjectID": "0edc46caf30c00efd87b6c272673239eafbd051e:4" +// } +// } +// u[f5a516808f8976c33939133293d598ce3bca4e8d:3]= +// @@ -4,7 +4,7 @@ +// "ID": "f5a516808f8976c33939133293d598ce3bca4e8d:3", +// "IsEscaped": true, +// "ModTime": "6", +// - "RefCount": "3" +// + "RefCount": "2" +// }, +// "Parent": { +// "@type": "/gno.RefValue", +// d[1712ac7adcfdc8e58a67e5615e20fb312394c4df:6] // switchrealm["gno.land/r/demo/tests/crossrealm_b"] // switchrealm["gno.land/r/demo/tests/crossrealm_b"] // switchrealm["gno.land/r/demo/tests/crossrealm"] // switchrealm["gno.land/r/demo/tests/crossrealm_b"] -// u[0edc46caf30c00efd87b6c272673239eafbd051e:4]={ -// "Fields": [ +// u[0edc46caf30c00efd87b6c272673239eafbd051e:4]= +// @@ -7,7 +7,7 @@ +// }, +// "V": { +// "@type": "/gno.StringValue", +// - "value": "C" +// + "value": "D" +// } +// } +// ], +// switchrealm["gno.land/r/demo/tests/crossrealm_b"] +// switchrealm["gno.land/r/demo/tests/crossrealm"] +// c[1712ac7adcfdc8e58a67e5615e20fb312394c4df:7]={ +// "Blank": {}, +// "ObjectInfo": { +// "ID": "1712ac7adcfdc8e58a67e5615e20fb312394c4df:7", +// "ModTime": "0", +// "OwnerID": "1712ac7adcfdc8e58a67e5615e20fb312394c4df:2", +// "RefCount": "1" +// }, +// "Parent": { +// "@type": "/gno.RefValue", +// "Escaped": true, +// "ObjectID": "0edc46caf30c00efd87b6c272673239eafbd051e:5" +// }, +// "Source": { +// "@type": "/gno.RefNode", +// "BlockNode": null, +// "Location": { +// "Column": "23", +// "File": "crossrealm.gno", +// "Line": "24", +// "PkgPath": "gno.land/r/demo/tests/crossrealm_b" +// } +// }, +// "Values": [ // { // "T": { -// "@type": "/gno.PrimitiveType", -// "value": "16" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "D" +// "@type": "/gno.RefType", +// "ID": "gno.land/r/demo/tests/crossrealm.FooerGetter" // } // } -// ], -// "ObjectInfo": { -// "ID": "0edc46caf30c00efd87b6c272673239eafbd051e:4", -// "ModTime": "5", -// "OwnerID": "0edc46caf30c00efd87b6c272673239eafbd051e:3", -// "RefCount": "1" -// } +// ] // } -// switchrealm["gno.land/r/demo/tests/crossrealm_b"] -// switchrealm["gno.land/r/demo/tests/crossrealm"] +// u[1712ac7adcfdc8e58a67e5615e20fb312394c4df:2]= +// @@ -500,8 +500,8 @@ +// "@type": "/gno.FuncValue", +// "Closure": { +// "@type": "/gno.RefValue", +// - "Escaped": true, +// - "ObjectID": "0edc46caf30c00efd87b6c272673239eafbd051e:5" +// + "Hash": "89352b352826005a86eee78e6c832b43ae0ab6a6", +// + "ObjectID": "1712ac7adcfdc8e58a67e5615e20fb312394c4df:7" +// }, +// "FileName": "", +// "IsMethod": false, +// @@ -513,9 +513,9 @@ +// "@type": "/gno.RefNode", +// "BlockNode": null, +// "Location": { +// - "Column": "23", +// - "File": "crossrealm.gno", +// - "Line": "23", +// + "Column": "62", +// + "File": "crossrealm.gno", +// + "Line": "24", +// "PkgPath": "gno.land/r/demo/tests/crossrealm_b" +// } +// }, +// u[0edc46caf30c00efd87b6c272673239eafbd051e:5]=(noop) // switchrealm["gno.land/r/demo/tests/crossrealm_b"] // switchrealm["gno.land/r/demo/tests/crossrealm_b"] // switchrealm["gno.land/r/demo/tests/crossrealm"] diff --git a/gnovm/tests/files/zrealm_example.gno b/gnovm/tests/files/zrealm_example.gno index 45aeb7c5ddb..d105f5cbe6e 100644 --- a/gnovm/tests/files/zrealm_example.gno +++ b/gnovm/tests/files/zrealm_example.gno @@ -192,70 +192,52 @@ func main() { // } // } // } -// u[1ffd45e074aa1b8df562907c95ad97526b7ca187:6]={ -// "Fields": [ -// { -// "T": { -// "@type": "/gno.PointerType", -// "Elt": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Node" -// } -// }, -// "V": { -// "@type": "/gno.PointerValue", -// "Base": { -// "@type": "/gno.RefValue", -// "Hash": "a919087d0eba652876f9a8df18b30ec5ddc8c26e", -// "ObjectID": "1ffd45e074aa1b8df562907c95ad97526b7ca187:7" -// }, -// "Index": "0", -// "TV": null -// } -// } -// ], -// "ObjectInfo": { -// "ID": "1ffd45e074aa1b8df562907c95ad97526b7ca187:6", -// "ModTime": "6", -// "OwnerID": "1ffd45e074aa1b8df562907c95ad97526b7ca187:5", -// "RefCount": "1" -// } -// } -// u[1ffd45e074aa1b8df562907c95ad97526b7ca187:5]={ -// "Fields": [ -// { -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "16" -// }, -// "V": { -// "@type": "/gno.StringValue", -// "value": "First Plot" -// } -// }, -// { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/p/demo/avl.Tree" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "dfdeb7ed80c5b030c3a5e9701d00c66203de6f57", -// "ObjectID": "1ffd45e074aa1b8df562907c95ad97526b7ca187:6" -// } -// }, -// { -// "N": "AQAAAAAAAAA=", -// "T": { -// "@type": "/gno.PrimitiveType", -// "value": "32" -// } -// } -// ], -// "ObjectInfo": { -// "ID": "1ffd45e074aa1b8df562907c95ad97526b7ca187:5", -// "ModTime": "6", -// "OwnerID": "1ffd45e074aa1b8df562907c95ad97526b7ca187:4", -// "RefCount": "1" -// } -// } +// u[1ffd45e074aa1b8df562907c95ad97526b7ca187:6]= +// @@ -7,12 +7,22 @@ +// "@type": "/gno.RefType", +// "ID": "gno.land/p/demo/avl.Node" +// } +// + }, +// + "V": { +// + "@type": "/gno.PointerValue", +// + "Base": { +// + "@type": "/gno.RefValue", +// + "Hash": "a919087d0eba652876f9a8df18b30ec5ddc8c26e", +// + "ObjectID": "1ffd45e074aa1b8df562907c95ad97526b7ca187:7" +// + }, +// + "Index": "0", +// + "TV": null +// } +// } +// ], +// "ObjectInfo": { +// "ID": "1ffd45e074aa1b8df562907c95ad97526b7ca187:6", +// - "ModTime": "0", +// + "ModTime": "6", +// "OwnerID": "1ffd45e074aa1b8df562907c95ad97526b7ca187:5", +// "RefCount": "1" +// } +// u[1ffd45e074aa1b8df562907c95ad97526b7ca187:5]= +// @@ -17,11 +17,12 @@ +// }, +// "V": { +// "@type": "/gno.RefValue", +// - "Hash": "56a1f8857b80bef7ca5a1c4c2c2d222d3338662d", +// + "Hash": "dfdeb7ed80c5b030c3a5e9701d00c66203de6f57", +// "ObjectID": "1ffd45e074aa1b8df562907c95ad97526b7ca187:6" +// } +// }, +// { +// + "N": "AQAAAAAAAAA=", +// "T": { +// "@type": "/gno.PrimitiveType", +// "value": "32" +// @@ -30,7 +31,7 @@ +// ], +// "ObjectInfo": { +// "ID": "1ffd45e074aa1b8df562907c95ad97526b7ca187:5", +// - "ModTime": "0", +// + "ModTime": "6", +// "OwnerID": "1ffd45e074aa1b8df562907c95ad97526b7ca187:4", +// "RefCount": "1" +// } diff --git a/gnovm/tests/files/zrealm_natbind0.gno b/gnovm/tests/files/zrealm_natbind0.gno index 37178cf4ea7..37182519838 100644 --- a/gnovm/tests/files/zrealm_natbind0.gno +++ b/gnovm/tests/files/zrealm_natbind0.gno @@ -28,3 +28,43 @@ func main() { // Realm: // switchrealm["gno.land/r/test"] +// u[a8ada09dee16d791fd406d629fe29bb0ed084a30:2]= +// @@ -30,7 +30,7 @@ +// "Tag": "", +// "Type": { +// "@type": "/gno.PrimitiveType", +// - "value": "1024" +// + "value": "16" +// } +// } +// ] +// @@ -44,8 +44,8 @@ +// }, +// "FileName": "native.gno", +// "IsMethod": false, +// - "Name": "ChainHeight", +// - "NativeName": "ChainHeight", +// + "Name": "ChainID", +// + "NativeName": "ChainID", +// "NativePkg": "std", +// "PkgPath": "std", +// "Source": { +// @@ -54,7 +54,7 @@ +// "Location": { +// "Column": "1", +// "File": "native.gno", +// - "Line": "11", +// + "Line": "9", +// "PkgPath": "std" +// } +// }, +// @@ -69,7 +69,7 @@ +// "Tag": "", +// "Type": { +// "@type": "/gno.PrimitiveType", +// - "value": "1024" +// + "value": "16" +// } +// } +// ] +// u[a7f5397443359ea76c50be82c77f1f893a060925:10]=(noop) diff --git a/gnovm/tests/files/zrealm_tests0.gno b/gnovm/tests/files/zrealm_tests0.gno index 872046ef795..cf1155ec025 100644 --- a/gnovm/tests/files/zrealm_tests0.gno +++ b/gnovm/tests/files/zrealm_tests0.gno @@ -133,44 +133,53 @@ func main() { // "RefCount": "1" // } // } -// u[0ffe7732b4d549b4cf9ec18bd68641cd2c75ad0a:12]={ -// "ObjectInfo": { -// "ID": "0ffe7732b4d549b4cf9ec18bd68641cd2c75ad0a:12", -// "ModTime": "17", -// "OwnerID": "0ffe7732b4d549b4cf9ec18bd68641cd2c75ad0a:11", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/demo/tests_foo.FooStringer" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "f163acee63433b44deb3168fef87beb588847322", -// "ObjectID": "0ffe7732b4d549b4cf9ec18bd68641cd2c75ad0a:13" -// } -// } -// } -// u[0ffe7732b4d549b4cf9ec18bd68641cd2c75ad0a:15]={ -// "ObjectInfo": { -// "ID": "0ffe7732b4d549b4cf9ec18bd68641cd2c75ad0a:15", -// "ModTime": "17", -// "OwnerID": "0ffe7732b4d549b4cf9ec18bd68641cd2c75ad0a:14", -// "RefCount": "1" -// }, -// "Value": { -// "T": { -// "@type": "/gno.RefType", -// "ID": "gno.land/r/demo/tests_foo.FooStringer" -// }, -// "V": { -// "@type": "/gno.RefValue", -// "Hash": "2a96c074210eb2db31b7941e31d62deb04e59937", -// "ObjectID": "0ffe7732b4d549b4cf9ec18bd68641cd2c75ad0a:16" -// } -// } -// } +// u[0ffe7732b4d549b4cf9ec18bd68641cd2c75ad0a:2]= +// @@ -3,7 +3,7 @@ +// "ObjectInfo": { +// "ID": "0ffe7732b4d549b4cf9ec18bd68641cd2c75ad0a:2", +// "IsEscaped": true, +// - "ModTime": "13", +// + "ModTime": "16", +// "RefCount": "5" +// }, +// "Parent": null, +// @@ -73,11 +73,11 @@ +// "@type": "/gno.SliceValue", +// "Base": { +// "@type": "/gno.RefValue", +// - "Hash": "694cb4385eb8d5e25fe7737cbc45695c7ac83f3c", +// - "ObjectID": "0ffe7732b4d549b4cf9ec18bd68641cd2c75ad0a:14" +// - }, +// - "Length": "2", +// - "Maxcap": "2", +// + "Hash": "c2aab89570a9faa4acf463a140a04e9b96fae73d", +// + "ObjectID": "0ffe7732b4d549b4cf9ec18bd68641cd2c75ad0a:17" +// + }, +// + "Length": "3", +// + "Maxcap": "3", +// "Offset": "0" +// } +// }, +// u[0ffe7732b4d549b4cf9ec18bd68641cd2c75ad0a:12]= +// @@ -1,7 +1,7 @@ +// { +// "ObjectInfo": { +// "ID": "0ffe7732b4d549b4cf9ec18bd68641cd2c75ad0a:12", +// - "ModTime": "14", +// + "ModTime": "17", +// "OwnerID": "0ffe7732b4d549b4cf9ec18bd68641cd2c75ad0a:11", +// "RefCount": "1" +// }, +// u[0ffe7732b4d549b4cf9ec18bd68641cd2c75ad0a:15]= +// @@ -1,7 +1,7 @@ +// { +// "ObjectInfo": { +// "ID": "0ffe7732b4d549b4cf9ec18bd68641cd2c75ad0a:15", +// - "ModTime": "0", +// + "ModTime": "17", +// "OwnerID": "0ffe7732b4d549b4cf9ec18bd68641cd2c75ad0a:14", +// "RefCount": "1" +// }, // d[0ffe7732b4d549b4cf9ec18bd68641cd2c75ad0a:14] // switchrealm["gno.land/r/demo/tests_foo"] // switchrealm["gno.land/r/demo/tests_foo"]