func (w *TreeWriter) Base() io.Writer {
	return w.writer
}
Base returns the base writer of w.
package textio
import (
	"bytes"
	"fmt"
	"io"
	"unicode/utf8"
)
type TreeWriter struct {
	writer   io.Writer
	children []*TreeWriter
	content  []byte
}
func NewTreeWriter(w io.Writer) *TreeWriter {
	node := &TreeWriter{
		writer:  w,
		content: make([]byte, 0, 64),
	}
	if parent, _ := node.Parent().(*TreeWriter); parent != nil {
		if parent.children == nil {
			parent.children = make([]*TreeWriter, 0, 8)
		}
		parent.children = append(parent.children, node)
	}
	return node
}
func (w *TreeWriter) Root() io.Writer {
	if p, _ := w.Parent().(*TreeWriter); p != nil {
		return p.Root()
	}
	return w
}
func (w *TreeWriter) Parent() io.Writer {
	if p, _ := w.writer.(*TreeWriter); p != nil {
		return p
	}
	return Parent(w.writer)
}