sl@0: # parray: sl@0: # Print the contents of a global array on stdout. sl@0: # sl@0: # RCS: @(#) $Id: parray.tcl,v 1.3 1998/09/14 18:40:03 stanton Exp $ sl@0: # sl@0: # Copyright (c) 1991-1993 The Regents of the University of California. sl@0: # Copyright (c) 1994 Sun Microsystems, Inc. sl@0: # sl@0: # See the file "license.terms" for information on usage and redistribution sl@0: # of this file, and for a DISCLAIMER OF ALL WARRANTIES. sl@0: # sl@0: sl@0: proc parray {a {pattern *}} { sl@0: upvar 1 $a array sl@0: if {![array exists array]} { sl@0: error "\"$a\" isn't an array" sl@0: } sl@0: set maxl 0 sl@0: foreach name [lsort [array names array $pattern]] { sl@0: if {[string length $name] > $maxl} { sl@0: set maxl [string length $name] sl@0: } sl@0: } sl@0: set maxl [expr {$maxl + [string length $a] + 2}] sl@0: foreach name [lsort [array names array $pattern]] { sl@0: set nameString [format %s(%s) $a $name] sl@0: puts stdout [format "%-*s = %s" $maxl $nameString $array($name)] sl@0: } sl@0: }