struct::map - Manage key/value maps
Contents
Api
The main command provides construction of maps:
::struct::mapmapName
Creates a new, empty map with an associated global Tcl command whose name is mapName. It may be
used to invoke various operations on the map. It has the following general form:
mapNamemethod ?argarg...?
method and arguments determine the exact behavior of the command.
If mapName is specified as %AUTO% a unique name will be generated by the package itself. The
result of the command is the fully-qualified name of the instance command.
The following commands are possible for map objects:
mapNameget
Returns the entire map as a Tcl dictionary.
mapNamenames
Returns the list of all keys known to the map, in arbitrary order.
mapNamesetname ?value?
Sets key name to the specified value, if the value specified. Returns the value for the key.
Throws an error if the key is not known.
mapNameunset ?pattern...?
Removes all keys matching at least one of the glob patterns from the map. If no pattern is
specified all keys are removed. In other words, the default pattern is *. The result of the
command is the empty string.
Bugs, Ideas, Feedback
This document, and the package it describes, will undoubtedly contain bugs and other problems. Please
report such in the category struct::list of the TcllibTrackers [http://core.tcl.tk/tcllib/reportlist].
Please also report any ideas for enhancements you may have for either package and/or documentation.
When proposing code changes, please provide unifieddiffs, i.e the output of diff-u.
Note further that attachments are strongly preferred over inlined patches. Attachments can be made by
going to the Edit form of the ticket immediately after its creation, and then using the left-most button
in the secondary navigation bar.
tcllib 1 struct::map(3tcl)
Description
Provides a snit class whose instances manage a key/value map. In other words, an object wrapper around
Tcl arrays.
Name
struct::map - Manage key/value maps
Synopsis
package require struct::map?1?::struct::mapmapNamemapNamemethod ?argarg...?
mapNamegetmapNamenamesmapNamesetname ?value?
mapNameunset ?pattern...?
________________________________________________________________________________________________________________
