Initial data commit

This commit is contained in:
Ingy döt Net 2023-07-01 11:58:00 -04:00
parent 72d218235f
commit f23f22d71c
199087 changed files with 3378941 additions and 0 deletions

View file

@ -0,0 +1,26 @@
package require struct::tree
proc visualize_tree {tree {nameattr name}} {
set path {}
$tree walk [$tree rootname] -order both {mode node} {
if {$mode eq "enter"} {
set s ""
foreach p $path {
append s [expr {[$tree next $p] eq "" ? " " : "\u2502 "}]
}
lappend path $node
append s [expr {
[$tree next $node] eq "" ? "\u2514\u2500" : "\u251c\u2500"
}]
if {[$tree keyexists $node $nameattr]} {
set name [$tree get $node $nameattr]
} else {
# No node name attribute; use the raw name
set name $node
}
puts "$s$name"
} else {
set path [lrange $path 0 end-1]
}
}
}

View file

@ -0,0 +1,3 @@
# Sample tree to demonstrate with
struct::tree t deserialize {root {} {} a 0 {} d 3 {} e 3 {} f 9 {} b 0 {} c 0 {}}
visualize_tree t