From affe03957deb13346e3e55559bd55cf5180988f9 Mon Sep 17 00:00:00 2001 From: Karl Gaissmaier Date: Sun, 29 Jan 2023 14:05:40 +0100 Subject: [PATCH] simplify --- helpers.go | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/helpers.go b/helpers.go index e29502d..58eb666 100644 --- a/helpers.go +++ b/helpers.go @@ -394,24 +394,20 @@ func (t Tree[T]) Visit(start, stop T, visitFn func(item T) bool) { // Clone, deep cloning of the tree structure. func (t Tree[T]) Clone() Tree[T] { - if t.root != nil { - t.root = t.clone(t.root) - } + t.root = t.clone(t.root) return t } // clone rec-descent func (t *Tree[T]) clone(n *node[T]) *node[T] { - n = n.copyNode() - - if n.left != nil { - n.left = t.clone(n.left) - } - - if n.right != nil { - n.right = t.clone(n.right) + if n == nil { + return n } + n = n.copyNode() + n.left = t.clone(n.left) + n.right = t.clone(n.right) t.recalc(n) + return n }