diff options
Diffstat (limited to 'pkg/rbtree/print_test.go')
-rw-r--r-- | pkg/rbtree/print_test.go | 41 |
1 files changed, 0 insertions, 41 deletions
diff --git a/pkg/rbtree/print_test.go b/pkg/rbtree/print_test.go deleted file mode 100644 index 3e37cf2..0000000 --- a/pkg/rbtree/print_test.go +++ /dev/null @@ -1,41 +0,0 @@ -package rbtree - -import ( - "fmt" - "io" - "strings" -) - -func (t *Tree[K, V]) ASCIIArt() string { - var out strings.Builder - t.root.asciiArt(&out, "", "", "") - return out.String() -} - -func (node *Node[V]) String() string { - switch { - case node == nil: - return "nil" - case node.Color == Red: - return fmt.Sprintf("R(%v)", node.Value) - default: - return fmt.Sprintf("B(%v)", node.Value) - } -} - -func (node *Node[V]) asciiArt(w io.Writer, u, m, l string) { - if node == nil { - fmt.Fprintf(w, "%snil\n", m) - return - } - - node.Right.asciiArt(w, u+" ", u+" ,--", u+" | ") - - if node.Color == Red { - fmt.Fprintf(w, "%s%v\n", m, node) - } else { - fmt.Fprintf(w, "%s%v\n", m, node) - } - - node.Left.asciiArt(w, l+" | ", l+" `--", l+" ") -} |