github.com/gnolang/gno@v0.0.0-20240520182011-228e9d0192ce/gnovm/tests/files/zrealm1.gno (about) 1 // PKGPATH: gno.land/r/test 2 package test 3 4 var root Node 5 6 type ( 7 Node interface{} 8 Key interface{} 9 ) 10 11 type InnerNode struct { 12 Key Key 13 Left Node 14 Right Node 15 } 16 17 func main() { 18 key := "somekey" 19 root = InnerNode{ 20 Key: key, 21 Left: nil, 22 Right: nil, 23 } 24 } 25 26 // Realm: 27 // switchrealm["gno.land/r/test"] 28 // c[a8ada09dee16d791fd406d629fe29bb0ed084a30:4]={ 29 // "Fields": [ 30 // { 31 // "T": { 32 // "@type": "/gno.PrimitiveType", 33 // "value": "16" 34 // }, 35 // "V": { 36 // "@type": "/gno.StringValue", 37 // "value": "somekey" 38 // } 39 // }, 40 // {}, 41 // {} 42 // ], 43 // "ObjectInfo": { 44 // "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4", 45 // "ModTime": "0", 46 // "OwnerID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", 47 // "RefCount": "1" 48 // } 49 // } 50 // u[a8ada09dee16d791fd406d629fe29bb0ed084a30:2]={ 51 // "Blank": {}, 52 // "ObjectInfo": { 53 // "ID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:2", 54 // "IsEscaped": true, 55 // "ModTime": "3", 56 // "RefCount": "2" 57 // }, 58 // "Parent": null, 59 // "Source": { 60 // "@type": "/gno.RefNode", 61 // "BlockNode": null, 62 // "Location": { 63 // "File": "", 64 // "Line": "0", 65 // "Nonce": "0", 66 // "PkgPath": "gno.land/r/test" 67 // } 68 // }, 69 // "Values": [ 70 // { 71 // "T": { 72 // "@type": "/gno.TypeType" 73 // }, 74 // "V": { 75 // "@type": "/gno.TypeValue", 76 // "Type": { 77 // "@type": "/gno.DeclaredType", 78 // "Base": { 79 // "@type": "/gno.InterfaceType", 80 // "Generic": "", 81 // "Methods": [], 82 // "PkgPath": "gno.land/r/test" 83 // }, 84 // "Methods": [], 85 // "Name": "Node", 86 // "PkgPath": "gno.land/r/test" 87 // } 88 // } 89 // }, 90 // { 91 // "T": { 92 // "@type": "/gno.TypeType" 93 // }, 94 // "V": { 95 // "@type": "/gno.TypeValue", 96 // "Type": { 97 // "@type": "/gno.DeclaredType", 98 // "Base": { 99 // "@type": "/gno.InterfaceType", 100 // "Generic": "", 101 // "Methods": [], 102 // "PkgPath": "gno.land/r/test" 103 // }, 104 // "Methods": [], 105 // "Name": "Key", 106 // "PkgPath": "gno.land/r/test" 107 // } 108 // } 109 // }, 110 // { 111 // "T": { 112 // "@type": "/gno.TypeType" 113 // }, 114 // "V": { 115 // "@type": "/gno.TypeValue", 116 // "Type": { 117 // "@type": "/gno.DeclaredType", 118 // "Base": { 119 // "@type": "/gno.StructType", 120 // "Fields": [ 121 // { 122 // "Embedded": false, 123 // "Name": "Key", 124 // "Tag": "", 125 // "Type": { 126 // "@type": "/gno.RefType", 127 // "ID": "gno.land/r/test.Key" 128 // } 129 // }, 130 // { 131 // "Embedded": false, 132 // "Name": "Left", 133 // "Tag": "", 134 // "Type": { 135 // "@type": "/gno.RefType", 136 // "ID": "gno.land/r/test.Node" 137 // } 138 // }, 139 // { 140 // "Embedded": false, 141 // "Name": "Right", 142 // "Tag": "", 143 // "Type": { 144 // "@type": "/gno.RefType", 145 // "ID": "gno.land/r/test.Node" 146 // } 147 // } 148 // ], 149 // "PkgPath": "gno.land/r/test" 150 // }, 151 // "Methods": [], 152 // "Name": "InnerNode", 153 // "PkgPath": "gno.land/r/test" 154 // } 155 // } 156 // }, 157 // { 158 // "T": { 159 // "@type": "/gno.FuncType", 160 // "Params": [], 161 // "Results": [] 162 // }, 163 // "V": { 164 // "@type": "/gno.FuncValue", 165 // "Closure": { 166 // "@type": "/gno.RefValue", 167 // "Escaped": true, 168 // "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:3" 169 // }, 170 // "FileName": "main.gno", 171 // "IsMethod": false, 172 // "Name": "main", 173 // "NativeName": "", 174 // "NativePkg": "", 175 // "PkgPath": "gno.land/r/test", 176 // "Source": { 177 // "@type": "/gno.RefNode", 178 // "BlockNode": null, 179 // "Location": { 180 // "File": "main.gno", 181 // "Line": "17", 182 // "Nonce": "0", 183 // "PkgPath": "gno.land/r/test" 184 // } 185 // }, 186 // "Type": { 187 // "@type": "/gno.FuncType", 188 // "Params": [], 189 // "Results": [] 190 // } 191 // } 192 // }, 193 // { 194 // "T": { 195 // "@type": "/gno.RefType", 196 // "ID": "gno.land/r/test.InnerNode" 197 // }, 198 // "V": { 199 // "@type": "/gno.RefValue", 200 // "Hash": "ae4e9e2d205cc0081d4ee249e1d188ebe270b220", 201 // "ObjectID": "a8ada09dee16d791fd406d629fe29bb0ed084a30:4" 202 // } 203 // } 204 // ] 205 // }