github.com/lingyao2333/mo-zero@v1.4.1/core/search/tree_debug.go (about) 1 //go:build debug 2 // +build debug 3 4 package search 5 6 import "fmt" 7 8 func (t *Tree) Print() { 9 if t.root.item == nil { 10 fmt.Println("/") 11 } else { 12 fmt.Printf("/:%#v\n", t.root.item) 13 } 14 printNode(t.root, 1) 15 } 16 17 func printNode(n *node, depth int) { 18 indent := make([]byte, depth) 19 for i := 0; i < len(indent); i++ { 20 indent[i] = '\t' 21 } 22 23 for _, children := range n.children { 24 for k, v := range children { 25 if v.item == nil { 26 fmt.Printf("%s%s\n", string(indent), k) 27 } else { 28 fmt.Printf("%s%s:%#v\n", string(indent), k, v.item) 29 } 30 printNode(v, depth+1) 31 } 32 } 33 }