github.com/gnolang/gno@v0.0.0-20240520182011-228e9d0192ce/gnovm/tests/files/struct52b.gno (about) 1 package main 2 3 type Node struct { 4 Name string 5 Child map[string]Node 6 } 7 8 func main() { 9 a := Node{Name: "hello", Child: map[string]Node{}} 10 a.Child["1"] = Node{Name: "world", Child: map[string]Node{}} 11 println(a) 12 a.Child["1"].Child["1"] = Node{Name: "sunshine", Child: map[string]Node{}} 13 println(a) 14 } 15 16 // Output: 17 // (struct{("hello" string),(map{("1" string):(struct{("world" string),(map{} map[string]main.Node)} main.Node)} map[string]main.Node)} main.Node) 18 // (struct{("hello" string),(map{("1" string):(struct{("world" string),(map{("1" string):(struct{("sunshine" string),(map{} map[string]main.Node)} main.Node)} map[string]main.Node)} main.Node)} map[string]main.Node)} main.Node)