diff options
author | Steve Bennett <steveb@workware.net.au> | 2025-08-13 08:11:10 +1000 |
---|---|---|
committer | Steve Bennett <steveb@workware.net.au> | 2025-08-13 08:13:06 +1000 |
commit | a490c6801b5ad75afe209bdfe09f1beb4d351f19 (patch) | |
tree | 1eb7dab6fba77b8559427a4ddb665245ae72c13b | |
parent | ca9fd7aa23d0e8255115d2c18bb87bdaa9226c8f (diff) | |
download | jimtcl-a490c6801b5ad75afe209bdfe09f1beb4d351f19.zip jimtcl-a490c6801b5ad75afe209bdfe09f1beb4d351f19.tar.gz jimtcl-a490c6801b5ad75afe209bdfe09f1beb4d351f19.tar.bz2 |
tclcompat: allow additional args to parray
Rather than:
parray env * [curry stderr puts]
it is now easier to write:
parray env * stderr puts
Signed-off-by: Steve Bennett <steveb@workware.net.au>
-rw-r--r-- | tclcompat.tcl | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/tclcompat.tcl b/tclcompat.tcl index 14ce688..11987c5 100644 --- a/tclcompat.tcl +++ b/tclcompat.tcl @@ -65,7 +65,9 @@ proc fileevent {args} { # Second, optional argument is a glob pattern # Third, optional argument is a "putter" function -proc parray {arrayname {pattern *} {puts puts}} { +# with args being additional arguments to the putter +# (invoked as $puts {*}$args string) +proc parray {arrayname {pattern *} {puts puts} args} { upvar $arrayname a set max 0 @@ -77,7 +79,7 @@ proc parray {arrayname {pattern *} {puts puts}} { incr max [string length $arrayname] incr max 2 foreach name [lsort [array names a $pattern]] { - $puts [format "%-${max}s = %s" $arrayname\($name\) $a($name)] + $puts {*}$args [format "%-${max}s = %s" $arrayname\($name\) $a($name)] } } |