Tcl_GetKeyedListKeys(3tcl)

NAME
TclX_NewKeyedListObj, TclX_KeyedListGet, TclX_KeyedListSet, TclX_KeyedListDelete, TclX_KeyedListGetKeys - Keyed list management routines.

SYNOPSIS

#include <tclExtend.h>

Tcl_Obj *
TclX_NewKeyedListObj (void);

int
TclX_KeyedListGet (Tcl_Interp *interp,
                   Tcl_Obj    *keylPtr,
                   char       *key,
                   Tcl_Obj   **valuePtrPtr);

int
TclX_KeyedListSet (Tcl_Interp *interp,
                   Tcl_Obj    *keylPtr,
                   char       *key,
                   Tcl_Obj    *valuePtr);

int
TclX_KeyedListDelete (Tcl_Interp *interp,
                      Tcl_Obj    *keylPtr,
                      char       *key);

int
TclX_KeyedListGetKeys (Tcl_Interp *interp,
                       Tcl_Obj    *keylPtr,
                       char       *key,
                       Tcl_Obj   **listObjPtrPtr);

DESCRIPTION

These routines perform operations on keyed lists. See the Extended Tcl man page for a description of keyed lists.

  TclX_NewKeyedListObj

Create and initialize a new keyed list object.

Returns:
    A pointer to the object.

  TclX_KeyedListGet

  Retrieve a key value from a keyed list.

Parameters:
    o interp - Error message will be return in result if there is an error.
    o keylPtr - Keyed list object to get key from.
    o key - The name of the key to extract. Will recusively process sub-keys separated by `.'.
    o valueObjPtrPtr - If the key is found, a pointer to the key object
        is returned here. NULL is returned if the key is not present.

Returns:
    o TCL_OK - If the key value was returned.
    o TCL_BREAK - If the key was not found.
    o TCL_ERROR - If an error occurred.

  TclX_KeyedListSet

  Set a key value in keyed list object.

Parameters:
    o interp - Error message will be return in result object.
    o keylPtr - Keyed list object to update.
    o key - The name of the key to extract. Will recusively process sub-key separated by `.'.
    o valueObjPtr - The value to set for the key.

Returns:
      TCL_OK or TCL_ERROR.

  TclX_KeyedListDelete

  Delete a key value from keyed list.

Parameters:
    o interp - Error message will be return in result if there is an error.
    o keylPtr - Keyed list object to update.
    o key - The name of the key to extract. Will recusively process sub-key separated by `.'.

Returns:
    o TCL_OK - If the key was deleted.
    o TCL_BREAK - If the key was not found.
    o TCL_ERROR - If an error occurred.

  TclX_KeyedListGetKeys

  Retrieve a list of keyed list keys.

Parameters:
    o interp - Error message will be return in result if there is an error.
    o keylPtr - Keyed list object to get key from.
    o key - The name of the key to get the sub keys for. NULL or empty to retrieve all top level keys.
    o listObjPtrPtr - List object is returned here with key as values.

Returns:
    o TCL_OK - If the zero or more key where returned.
    o TCL_BREAK - If the key was not found.
    o TCL_ERROR - If an error occurred.