trees, cleanup privates

char-rename
Jon Harper 2017-01-24 20:03:47 +01:00 committed by John Benediktsson
parent 8b136cdd6d
commit e0bd21e24a
1 changed files with 6 additions and 10 deletions

View File

@ -369,8 +369,6 @@ DEFER: delete-node
] with-side
] if ;
PRIVATE>
M: tree delete-at
[ delete-bst-node swap ] change-root
swap [ dup dec-count ] when drop ;
@ -378,8 +376,6 @@ M: tree delete-at
M: tree new-assoc
2drop <tree> ;
<PRIVATE
: clone-nodes ( node -- node' )
dup [
clone
@ -387,25 +383,25 @@ M: tree new-assoc
[ clone-nodes ] change-right
] when ;
PRIVATE>
M: tree clone (clone) [ clone-nodes ] change-root ;
PRIVATE>
: >tree ( assoc -- tree )
T{ tree f f 0 } assoc-clone-like ;
M: tree assoc-like drop dup tree? [ >tree ] unless ;
SYNTAX: TREE{
\ } [ >tree ] parse-literal ;
<PRIVATE
M: tree assoc-like drop dup tree? [ >tree ] unless ;
M: tree assoc-size count>> ;
M: tree pprint-delims drop \ TREE{ \ } ;
M: tree >pprint-sequence >alist ;
M: tree pprint-narrow? drop t ;
<PRIVATE
: node-height ( node -- n )
[
[ left>> ] [ right>> ] bi