1234567891011121314151617181920212223242526272829303132 |
- // +build debug
- package search
- import "fmt"
- func (t *Tree) Print() {
- if t.root.item == nil {
- fmt.Println("/")
- } else {
- fmt.Printf("/:%#v\n", t.root.item)
- }
- printNode(t.root, 1)
- }
- func printNode(n *node, depth int) {
- indent := make([]byte, depth)
- for i := 0; i < len(indent); i++ {
- indent[i] = '\t'
- }
- for _, children := range n.children {
- for k, v := range children {
- if v.item == nil {
- fmt.Printf("%s%s\n", string(indent), k)
- } else {
- fmt.Printf("%s%s:%#v\n", string(indent), k, v.item)
- }
- printNode(v, depth+1)
- }
- }
- }
|