summaryrefslogtreecommitdiffstats
path: root/generic/tclInterp.c
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2013-02-25 16:41:46 (GMT)
committerdgp <dgp@users.sourceforge.net>2013-02-25 16:41:46 (GMT)
commit96417ebbb891945d227820b007fe010cdad8d9ba (patch)
tree3f8a55faf330a9a983131443fcddde5f4c27f483 /generic/tclInterp.c
parentfc262ab6bb7c26a3babf301f89b7bf9f303c7ef4 (diff)
parentf974fd8969f77a815bc2d8fd751d002174a62e0e (diff)
downloadtcl-96417ebbb891945d227820b007fe010cdad8d9ba.zip
tcl-96417ebbb891945d227820b007fe010cdad8d9ba.tar.gz
tcl-96417ebbb891945d227820b007fe010cdad8d9ba.tar.bz2
LimitHandler struct used only locally. Remove from tclInt.h
Diffstat (limited to 'generic/tclInterp.c')
-rw-r--r--generic/tclInterp.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/generic/tclInterp.c b/generic/tclInterp.c
index d5d43ed..1a4297b 100644
--- a/generic/tclInterp.c
+++ b/generic/tclInterp.c
@@ -179,6 +179,37 @@ typedef struct ScriptLimitCallbackKey {
} ScriptLimitCallbackKey;
/*
+ * TIP#143 limit handler internal representation.
+ */
+
+struct LimitHandler {
+ int flags; /* The state of this particular handler. */
+ Tcl_LimitHandlerProc *handlerProc;
+ /* The handler callback. */
+ ClientData clientData; /* Opaque argument to the handler callback. */
+ Tcl_LimitHandlerDeleteProc *deleteProc;
+ /* How to delete the clientData. */
+ LimitHandler *prevPtr; /* Previous item in linked list of
+ * handlers. */
+ LimitHandler *nextPtr; /* Next item in linked list of handlers. */
+};
+
+/*
+ * Values for the LimitHandler flags field.
+ * LIMIT_HANDLER_ACTIVE - Whether the handler is currently being
+ * processed; handlers are never to be entered reentrantly.
+ * LIMIT_HANDLER_DELETED - Whether the handler has been deleted. This
+ * should not normally be observed because when a handler is
+ * deleted it is also spliced out of the list of handlers, but
+ * even so we will be careful.
+ */
+
+#define LIMIT_HANDLER_ACTIVE 0x01
+#define LIMIT_HANDLER_DELETED 0x02
+
+
+
+/*
* Prototypes for local static functions:
*/