summaryrefslogtreecommitdiffstats
path: root/generic/tclInt.h
diff options
context:
space:
mode:
authorstanton <stanton>1999-04-22 22:57:06 (GMT)
committerstanton <stanton>1999-04-22 22:57:06 (GMT)
commit804bb2b478378a4c8bdf5426fc4f01fe8310d1f9 (patch)
tree7d3cbee11446913d235f80af0181bb20588351fc /generic/tclInt.h
parenteeb2fba346c1470404ea5892db056f44d8decb22 (diff)
downloadtcl-804bb2b478378a4c8bdf5426fc4f01fe8310d1f9.zip
tcl-804bb2b478378a4c8bdf5426fc4f01fe8310d1f9.tar.gz
tcl-804bb2b478378a4c8bdf5426fc4f01fe8310d1f9.tar.bz2
* generic/tclInt.h:
* generic/tclInt.decls: * generic/tclCompile.c: Added TclSetByteCodeFromAny that takes a hook procedure to invoke after compilation but before the byte codes are emitted. This makes it possible to do postprocessing on the compiled byte codes before the ByteCode is generated. * generic/tclLiteral.c: Added TclHideLiteral and TclAddLiteralObj to make it possible to create local unshared literal objects.
Diffstat (limited to 'generic/tclInt.h')
-rw-r--r--generic/tclInt.h13
1 files changed, 10 insertions, 3 deletions
diff --git a/generic/tclInt.h b/generic/tclInt.h
index dfc28fc..39032cf 100644
--- a/generic/tclInt.h
+++ b/generic/tclInt.h
@@ -11,7 +11,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclInt.h,v 1.27 1999/04/21 21:50:26 rjohnson Exp $
+ * RCS: @(#) $Id: tclInt.h,v 1.28 1999/04/22 22:57:07 stanton Exp $
*/
#ifndef _TCLINT
@@ -810,7 +810,6 @@ typedef void (Tcl_ThreadCreateProc) _ANSI_ARGS_((ClientData clientData));
* CompileProc declared below.
*/
-struct Tcl_Parse;
struct CompileEnv;
/*
@@ -833,7 +832,15 @@ struct CompileEnv;
#define TCL_OUT_LINE_COMPILE (TCL_CONTINUE + 1)
typedef int (CompileProc) _ANSI_ARGS_((Tcl_Interp *interp,
- struct Tcl_Parse *parsePtr, struct CompileEnv *compEnvPtr));
+ Tcl_Parse *parsePtr, struct CompileEnv *compEnvPtr));
+
+/*
+ * The type of procedure called from the compilation hook point in
+ * SetByteCodeFromAny.
+ */
+
+typedef int (CompileHookProc) _ANSI_ARGS_((Tcl_Interp *interp,
+ struct CompileEnv *compEnvPtr, ClientData clientData));
/*
* The data structure defining the execution environment for ByteCode's.