summaryrefslogtreecommitdiffstats
path: root/generic/tclVar.c
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2013-02-25 15:45:13 (GMT)
committerdgp <dgp@users.sourceforge.net>2013-02-25 15:45:13 (GMT)
commit712b68cc80510d42389f0727653f1cb257f85406 (patch)
treeb6577f24a311af9aaddd7dc6502b11ce6450b00d /generic/tclVar.c
parentb436f143984f4fa10573ee83e1bc749a78ec4c42 (diff)
parent113655197374d84515e37514a5caefeb9b5bc341 (diff)
downloadtcl-712b68cc80510d42389f0727653f1cb257f85406.zip
tcl-712b68cc80510d42389f0727653f1cb257f85406.tar.gz
tcl-712b68cc80510d42389f0727653f1cb257f85406.tar.bz2
Array Search struct used only locally. Remove from tclInt.h.
Diffstat (limited to 'generic/tclVar.c')
-rw-r--r--generic/tclVar.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/generic/tclVar.c b/generic/tclVar.c
index befcc26..39a1d5f 100644
--- a/generic/tclVar.c
+++ b/generic/tclVar.c
@@ -144,6 +144,30 @@ static const char *isArrayElement =
#define HasLocalVars(framePtr) ((framePtr)->isProcCallFrame & FRAME_IS_PROC)
/*
+ * The following structure describes an enumerative search in progress on an
+ * array variable; this are invoked with options to the "array" command.
+ */
+
+typedef struct ArraySearch {
+ int id; /* Integer id used to distinguish among
+ * multiple concurrent searches for the same
+ * array. */
+ struct Var *varPtr; /* Pointer to array variable that's being
+ * searched. */
+ Tcl_HashSearch search; /* Info kept by the hash module about progress
+ * through the array. */
+ Tcl_HashEntry *nextEntry; /* Non-null means this is the next element to
+ * be enumerated (it's leftover from the
+ * Tcl_FirstHashEntry call or from an "array
+ * anymore" command). NULL means must call
+ * Tcl_NextHashEntry to get value to
+ * return. */
+ struct ArraySearch *nextPtr;/* Next in list of all active searches for
+ * this variable, or NULL if this is the last
+ * one. */
+} ArraySearch;
+
+/*
* Forward references to functions defined later in this file:
*/