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)