diff options
author | Luke Shumaker <lukeshu@lukeshu.com> | 2022-07-13 20:31:51 -0600 |
---|---|---|
committer | Luke Shumaker <lukeshu@lukeshu.com> | 2022-07-13 20:31:51 -0600 |
commit | 09cc146211148a3b2568261c41a804a802c31d4c (patch) | |
tree | e64dc42bb557664333e313e89ddaafa975126e9a /lib/rbtree/print_test.go | |
parent | a0fc940be0ea888c7b380cd95723da65bbd32bcb (diff) |
re-organize some things between files
Diffstat (limited to 'lib/rbtree/print_test.go')
-rw-r--r-- | lib/rbtree/print_test.go | 45 |
1 files changed, 0 insertions, 45 deletions
diff --git a/lib/rbtree/print_test.go b/lib/rbtree/print_test.go deleted file mode 100644 index fe2d2bd..0000000 --- a/lib/rbtree/print_test.go +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright (C) 2022 Luke Shumaker <lukeshu@lukeshu.com> -// -// SPDX-License-Identifier: GPL-2.0-or-later - -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+" ") -} |