diff options
-rw-r--r-- | doc/ByteArrObj.3 | 91 | ||||
-rw-r--r-- | generic/tcl.decls | 950 | ||||
-rw-r--r-- | generic/tclDecls.h | 2259 | ||||
-rw-r--r-- | generic/tclInt.decls | 626 | ||||
-rw-r--r-- | generic/tclIntDecls.h | 1324 | ||||
-rw-r--r-- | generic/tclIntPlatDecls.h | 159 | ||||
-rw-r--r-- | generic/tclIntPlatStubs.c | 146 | ||||
-rw-r--r-- | generic/tclIntStubs.c | 1529 | ||||
-rw-r--r-- | generic/tclPanic.c (renamed from generic/panic.c) | 78 | ||||
-rw-r--r-- | generic/tclPlatDecls.h | 56 | ||||
-rw-r--r-- | generic/tclPlatStubs.c | 62 | ||||
-rw-r--r-- | generic/tclStubInit.c | 514 | ||||
-rw-r--r-- | generic/tclStubLib.c | 104 | ||||
-rw-r--r-- | generic/tclStubs.c | 2653 | ||||
-rw-r--r-- | tools/genStubs.tcl | 891 |
15 files changed, 11415 insertions, 27 deletions
diff --git a/doc/ByteArrObj.3 b/doc/ByteArrObj.3 new file mode 100644 index 0000000..b3ed34f --- /dev/null +++ b/doc/ByteArrObj.3 @@ -0,0 +1,91 @@ +'\" +'\" Copyright (c) 1997 Sun Microsystems, Inc. +'\" +'\" See the file "license.terms" for information on usage and redistribution +'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES. +'\" +'\" RCS: @(#) $Id: ByteArrObj.3,v 1.2 1999/03/03 00:38:36 stanton Exp $ +'\" +.so man.macros +.TH Tcl_ByteArrayObj 3 8.1 Tcl "Tcl Library Procedures" +.BS +.SH NAME +Tcl_NewByteArrayObj, Tcl_SetByteArrayObj, Tcl_GetByteArrayFromObj, Tcl_SetByteArrayLength \- manipulate Tcl objects as a arrays of bytes +.SH SYNOPSIS +.nf +\fB#include <tcl.h>\fR +.sp +Tcl_Obj * +\fBTcl_NewByteArrayObj\fR(\fIbytes, length\fR) +.sp +void +\fBTcl_SetByteArrayObj\fR(\fIobjPtr, bytes, length\fR) +.sp +unsigned char * +\fBTcl_GetByteArrayFromObj\fR(\fIobjPtr, lengthPtr\fR) +.sp +unsigned char * +\fBTcl_SetByteArrayLength\fR(\fIobjPtr, length\fR) +.SH ARGUMENTS +.AS "unsigned char" *lengthPtr in/out +.AP "unsigned char" *bytes in +The array of bytes used to initialize or set a byte-array object. +.AP int length in +The length of the array of bytes. It must be >= 0. +.AP Tcl_Obj *objPtr in/out +For \fBTcl_SetByteArrayObj\fR, this points to the object to be converted to +byte-array type. For \fBTcl_GetByteArrayFromObj\fR and +\fBTcl_SetByteArrayLength\fR, this points to the object from which to get +the byte-array value; if \fIobjPtr\fR does not already point to a byte-array +object, it will be converted to one. +.AP int *lengthPtr out +If non-NULL, filled with the length of the array of bytes in the object. +.BE + +.SH DESCRIPTION +.PP +These procedures are used to create, modify, and read Tcl byte-array objects +from C code. Byte-array objects are typically used to hold the +results of binary IO operations or data structures created with the +\fBbinary\fR command. In Tcl, an array of bytes is not equivalent to a +string. Conceptually, a string is an array of Unicode characters, while a +byte-array is an array of 8-bit quantities with no implicit meaning. +Accesser functions are provided to get the string representation of a +byte-array or to convert an arbitrary object to a byte-array. Obtaining the +string representation of a byte-array object (by calling +\fBTcl_GetStringFromObj\fR) produces a properly formed UTF-8 sequence with a +one-to-one mapping between the bytes in the internal representation and the +UTF-8 characters in the string representation. +.PP +\fBTcl_NewByteArrayObj\fR and \fBTcl_SetByteArrayObj\fR will +create a new object of byte-array type or modify an existing object to have a +byte-array type. Both of these procedures set the object's type to be +byte-array and set the object's internal representation to a copy of the +array of bytes given by \fIbytes\fR. \fBTcl_NewByteArrayObj\fR returns a +pointer to a newly allocated object with a reference count of zero. +\fBTcl_SetByteArrayObj\fR invalidates any old string representation and, if +the object is not already a byte-array object, frees any old internal +representation. +.PP +\fBTcl_GetByteArrayFromObj\fR converts a Tcl object to byte-array type and +returns a pointer to the object's new internal representation as an array of +bytes. The length of this array is stored in \fIlengthPtr\fR if +\fIlengthPtr\fR is non-NULL. The storage for the array of bytes is owned by +the object and should not be freed. The contents of the array may be +modified by the caller only if the object is not shared and the caller +invalidates the string representation. +.PP +\fBTcl_SetByteArrayLength\fR converts the Tcl object to byte-array type +and changes the length of the object's internal representation as an +array of bytes. If \fIlength\fR is greater than the space currently +allocated for the array, the array is reallocated to the new length; the +newly allocated bytes at the end of the array have arbitrary values. If +\fIlength\fR is less than the space currently allocated for the array, +the length of array is reduced to the new length. The return value is a +pointer to the object's new array of bytes. + +.SH "SEE ALSO" +Tcl_GetStringFromObj, Tcl_NewObj, Tcl_IncrRefCount, Tcl_DecrRefCount + +.SH KEYWORDS +object, byte array, utf, unicode, internationalization diff --git a/generic/tcl.decls b/generic/tcl.decls new file mode 100644 index 0000000..a398448 --- /dev/null +++ b/generic/tcl.decls @@ -0,0 +1,950 @@ +# tcl.decls -- +# +# This file contains the declarations for all supported public +# functions that are exported by the Tcl library via the stubs table. +# This file is used to generate the tclDecls.h, tclPlatDecls.h, +# tclStub.c, and tclPlatStub.c files. +# +# +# Copyright (c) 1998-1999 by Scriptics Corporation. +# See the file "license.terms" for information on usage and redistribution +# of this file, and for a DISCLAIMER OF ALL WARRANTIES. +# +# RCS: @(#) $Id: tcl.decls,v 1.1 1999/03/03 00:38:38 stanton Exp $ + +library tcl + +# Define the tcl interface with 3 sub interfaces: +# tclPlat - platform specific public +# tclInt - generic private +# tclPlatInt - platform specific private + +interface tcl +hooks {tclPlat tclInt tclIntPlat} + +# Declare each of the functions in the public Tcl interface. Note that +# the an index should never be reused for a different function in order +# to preserve backwards compatibility. + +declare 0 generic { + void Tcl_AddErrorInfo (Tcl_Interp *interp, char *message) +} +declare 1 generic { + void Tcl_AddObjErrorInfo(Tcl_Interp *interp, char *message, int length) +} +declare 2 generic { + char * Tcl_Alloc(unsigned int size) +} +declare 3 generic { + void Tcl_AllowExceptions(Tcl_Interp *interp) +} +declare 4 generic { + int Tcl_AppendAllObjTypes(Tcl_Interp *interp, Tcl_Obj *objPtr) +} +declare 5 generic { + void Tcl_AppendElement(Tcl_Interp *interp, char *string) +} +declare 6 generic { + void Tcl_AppendResult(Tcl_Interp *interp, ...) +} +declare 7 generic { + void Tcl_AppendResultVA(Tcl_Interp *interp, va_list argList) +} +declare 8 generic { + void Tcl_AppendToObj(Tcl_Obj *objPtr, char *bytes, int length) +} +declare 9 generic { + void Tcl_AppendStringsToObj(Tcl_Obj *objPtr, ...) +} +declare 10 generic { + void Tcl_AppendStringsToObjVA(Tcl_Obj *objPtr, va_list argList) +} +declare 11 generic { + Tcl_AsyncHandler Tcl_AsyncCreate(Tcl_AsyncProc *proc, \ + ClientData clientData) +} +declare 12 generic { + void Tcl_AsyncDelete(Tcl_AsyncHandler async) +} +declare 13 generic { + int Tcl_AsyncInvoke(Tcl_Interp *interp, int code) +} +declare 14 generic { + void Tcl_AsyncMark(Tcl_AsyncHandler async) +} +declare 15 generic { + int Tcl_AsyncReady(void) +} +declare 16 generic { + void Tcl_BackgroundError(Tcl_Interp *interp) +} +declare 17 generic { + char Tcl_Backslash(CONST char *src, int *readPtr) +} +declare 18 generic { + int Tcl_BadChannelOption(Tcl_Interp *interp, char *optionName, \ + char *optionList) +} +declare 19 generic { + void Tcl_CallWhenDeleted(Tcl_Interp *interp, Tcl_InterpDeleteProc *proc, \ + ClientData clientData) +} +declare 20 generic { + void Tcl_CancelIdleCall(Tcl_IdleProc *idleProc, ClientData clientData) +} +declare 21 generic { + int Tcl_Close(Tcl_Interp *interp, Tcl_Channel chan) +} +declare 22 generic { + int Tcl_CommandComplete(char *cmd) +} +declare 23 generic { + char * Tcl_Concat(int argc, char **argv) +} +declare 24 generic { + Tcl_Obj * Tcl_ConcatObj(int objc, Tcl_Obj *CONST objv[]) +} +declare 25 generic { + int Tcl_ConvertCountedElement(CONST char *src, int length, char *dst, \ + int flags) +} +declare 26 generic { + int Tcl_ConvertElement(CONST char *src, char *dst, int flags) +} +declare 27 generic { + int Tcl_ConvertToType(Tcl_Interp *interp, Tcl_Obj *objPtr, \ + Tcl_ObjType *typePtr) +} +declare 28 generic { + int Tcl_CreateAlias(Tcl_Interp *slave, char *slaveCmd, \ + Tcl_Interp *target, char *targetCmd, int argc, char **argv) +} +declare 29 generic { + int Tcl_CreateAliasObj(Tcl_Interp *slave, char *slaveCmd, \ + Tcl_Interp *target, char *targetCmd, int objc, \ + Tcl_Obj *CONST objv[]) +} +declare 30 generic { + Tcl_Channel Tcl_CreateChannel(Tcl_ChannelType *typePtr, char *chanName, \ + ClientData instanceData, int mask) +} +declare 31 generic { + void Tcl_CreateChannelHandler(Tcl_Channel chan, int mask, \ + Tcl_ChannelProc *proc, ClientData clientData) +} +declare 32 generic { + void Tcl_CreateCloseHandler(Tcl_Channel chan, Tcl_CloseProc *proc, \ + ClientData clientData) +} +declare 33 generic { + Tcl_Command Tcl_CreateCommand(Tcl_Interp *interp, char *cmdName, \ + Tcl_CmdProc *proc, ClientData clientData, \ + Tcl_CmdDeleteProc *deleteProc) +} +declare 34 generic { + void Tcl_CreateEventSource(Tcl_EventSetupProc *setupProc, \ + Tcl_EventCheckProc *checkProc, ClientData clientData) +} +declare 35 generic { + void Tcl_CreateExitHandler(Tcl_ExitProc *proc, ClientData clientData) +} +declare 36 generic { + Tcl_Interp * Tcl_CreateInterp(void) +} +declare 37 generic { + void Tcl_CreateMathFunc(Tcl_Interp *interp, char *name, int numArgs, \ + Tcl_ValueType *argTypes, Tcl_MathProc *proc, ClientData clientData) +} +declare 38 generic { + Tcl_Command Tcl_CreateObjCommand(Tcl_Interp *interp, char *cmdName, \ + Tcl_ObjCmdProc *proc, ClientData clientData, \ + Tcl_CmdDeleteProc *deleteProc) +} +declare 39 generic { + Tcl_Interp * Tcl_CreateSlave(Tcl_Interp *interp, char *slaveName, \ + int isSafe) +} +declare 40 generic { + Tcl_TimerToken Tcl_CreateTimerHandler(int milliseconds, \ + Tcl_TimerProc *proc, ClientData clientData) +} +declare 41 generic { + Tcl_Trace Tcl_CreateTrace(Tcl_Interp *interp, int level, \ + Tcl_CmdTraceProc *proc, ClientData clientData) +} +declare 42 generic { + char * Tcl_DbCkalloc(unsigned int size, char *file, int line) +} +declare 43 generic { + int Tcl_DbCkfree(char *ptr, char *file, int line) +} +declare 44 generic { + char * Tcl_DbCkrealloc(char *ptr, unsigned int size, char *file, int line) +} +declare 45 generic { + void Tcl_DbDecrRefCount(Tcl_Obj *objPtr, char *file, int line) +} +declare 46 generic { + void Tcl_DbIncrRefCount(Tcl_Obj *objPtr, char *file, int line) +} +declare 47 generic { + int Tcl_DbIsShared(Tcl_Obj *objPtr, char *file, int line) +} +declare 48 generic { + Tcl_Obj * Tcl_DbNewBooleanObj(int boolValue, char *file, int line) +} +declare 49 generic { + Tcl_Obj * Tcl_DbNewByteArrayObj(unsigned char *bytes, int length, \ + char *file, int line) +} +declare 50 generic { + Tcl_Obj * Tcl_DbNewDoubleObj(double doubleValue, char *file, int line) +} +declare 51 generic { + Tcl_Obj * Tcl_DbNewListObj(int objc, Tcl_Obj *CONST objv[], char *file, \ + int line) +} +declare 52 generic { + Tcl_Obj * Tcl_DbNewLongObj(long longValue, char *file, int line) +} +declare 53 generic { + Tcl_Obj * Tcl_DbNewObj(char *file, int line) +} +declare 54 generic { + Tcl_Obj * Tcl_DbNewStringObj(char *bytes, int length, char *file, int line) +} +declare 55 generic { + void Tcl_DeleteAssocData(Tcl_Interp *interp, char *name) +} +declare 56 generic { + int Tcl_DeleteCommand(Tcl_Interp *interp, char *cmdName) +} +declare 57 generic { + int Tcl_DeleteCommandFromToken(Tcl_Interp *interp, Tcl_Command command) +} +declare 58 generic { + void Tcl_DeleteChannelHandler(Tcl_Channel chan, Tcl_ChannelProc *proc, \ + ClientData clientData) +} +declare 59 generic { + void Tcl_DeleteCloseHandler(Tcl_Channel chan, Tcl_CloseProc *proc, \ + ClientData clientData) +} +declare 60 generic { + void Tcl_DeleteEvents(Tcl_EventDeleteProc *proc, ClientData clientData) +} +declare 61 generic { + void Tcl_DeleteEventSource(Tcl_EventSetupProc *setupProc, \ + Tcl_EventCheckProc *checkProc, ClientData clientData) +} +declare 62 generic { + void Tcl_DeleteExitHandler(Tcl_ExitProc *proc, ClientData clientData) +} +declare 63 generic { + void Tcl_DeleteHashEntry(Tcl_HashEntry *entryPtr) +} +declare 64 generic { + void Tcl_DeleteHashTable(Tcl_HashTable *tablePtr) +} +declare 65 generic { + void Tcl_DeleteInterp(Tcl_Interp *interp) +} +declare 66 generic { + void Tcl_DeleteTimerHandler(Tcl_TimerToken token) +} +declare 67 generic { + void Tcl_DeleteTrace(Tcl_Interp *interp, Tcl_Trace trace) +} +declare 68 generic { + void Tcl_DetachPids(int numPids, Tcl_Pid *pidPtr) +} +declare 69 generic { + void Tcl_DontCallWhenDeleted(Tcl_Interp *interp, \ + Tcl_InterpDeleteProc *proc, ClientData clientData) +} +declare 70 generic { + int Tcl_DoOneEvent(int flags) +} +declare 71 generic { + void Tcl_DoWhenIdle(Tcl_IdleProc *proc, ClientData clientData) +} +declare 72 generic { + char * Tcl_DStringAppend(Tcl_DString *dsPtr, CONST char *string, \ + int length) +} +declare 73 generic { + char * Tcl_DStringAppendElement(Tcl_DString *dsPtr, CONST char *string) +} +declare 74 generic { + void Tcl_DStringEndSublist(Tcl_DString *dsPtr) +} +declare 75 generic { + void Tcl_DStringFree(Tcl_DString *dsPtr) +} +declare 76 generic { + void Tcl_DStringGetResult(Tcl_Interp *interp, Tcl_DString *dsPtr) +} +declare 77 generic { + void Tcl_DStringInit(Tcl_DString *dsPtr) +} +declare 78 generic { + void Tcl_DStringResult(Tcl_Interp *interp, Tcl_DString *dsPtr) +} +declare 79 generic { + void Tcl_DStringSetLength(Tcl_DString *dsPtr, int length) +} +declare 80 generic { + void Tcl_DStringStartSublist(Tcl_DString *dsPtr) +} +declare 81 generic { + int Tcl_DumpActiveMemory(char *fileName) +} +declare 82 generic { + Tcl_Obj * Tcl_DuplicateObj(Tcl_Obj *objPtr) +} +declare 83 generic { + int Tcl_Eof(Tcl_Channel chan) +} +declare 84 generic { + char * Tcl_ErrnoId(void) +} +declare 85 generic { + char * Tcl_ErrnoMsg(int err) +} +declare 86 generic { + int Tcl_Eval(Tcl_Interp *interp, char *string) +} +declare 87 generic { + int Tcl_EvalFile(Tcl_Interp *interp, char *fileName) +} +declare 88 generic { + void Tcl_EventuallyFree(ClientData clientData, Tcl_FreeProc *freeProc) +} +declare 89 generic { + int Tcl_EvalObj(Tcl_Interp *interp, Tcl_Obj *objPtr) +} +declare 90 generic { + void Tcl_Exit(int status) +} +declare 91 generic { + int Tcl_ExposeCommand(Tcl_Interp *interp, char *hiddenCmdToken, \ + char *cmdName) +} +declare 92 generic { + int Tcl_ExprBoolean(Tcl_Interp *interp, char *string, int *ptr) +} +declare 93 generic { + int Tcl_ExprBooleanObj(Tcl_Interp *interp, Tcl_Obj *objPtr, int *ptr) +} +declare 94 generic { + int Tcl_ExprDouble(Tcl_Interp *interp, char *string, double *ptr) +} +declare 95 generic { + int Tcl_ExprDoubleObj(Tcl_Interp *interp, Tcl_Obj *objPtr, double *ptr) +} +declare 96 generic { + int Tcl_ExprLong(Tcl_Interp *interp, char *string, long *ptr) +} +declare 97 generic { + int Tcl_ExprLongObj(Tcl_Interp *interp, Tcl_Obj *objPtr, long *ptr) +} +declare 98 generic { + int Tcl_ExprObj(Tcl_Interp *interp, Tcl_Obj *objPtr, \ + Tcl_Obj **resultPtrPtr) +} +declare 99 generic { + int Tcl_ExprString(Tcl_Interp *interp, char *string) +} +declare 100 generic { + void Tcl_Finalize(void) +} +declare 101 generic { + void Tcl_FindExecutable(char *argv0) +} +declare 102 generic { + Tcl_HashEntry * Tcl_FirstHashEntry(Tcl_HashTable *tablePtr, \ + Tcl_HashSearch *searchPtr) +} +declare 103 generic { + int Tcl_Flush(Tcl_Channel chan) +} +declare 104 generic { + void Tcl_Free(char *ptr) +} +declare 105 generic { + void TclFreeObj(Tcl_Obj *objPtr) +} +declare 106 generic { + void Tcl_FreeResult(Tcl_Interp *interp) +} +declare 107 generic { + int Tcl_GetAlias(Tcl_Interp *interp, char *slaveCmd, \ + Tcl_Interp **targetInterpPtr, char **targetCmdPtr, int *argcPtr, char ***argvPtr) +} +declare 108 generic { + int Tcl_GetAliasObj(Tcl_Interp *interp, char *slaveCmd, \ + Tcl_Interp **targetInterpPtr, char **targetCmdPtr, int *objcPtr, Tcl_Obj ***objv) +} +declare 109 generic { + ClientData Tcl_GetAssocData(Tcl_Interp *interp, char *name, \ + Tcl_InterpDeleteProc **procPtr) +} +declare 110 generic { + int Tcl_GetBoolean(Tcl_Interp *interp, char *string, int *boolPtr) +} +declare 111 generic { + int Tcl_GetBooleanFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr, \ + int *boolPtr) +} +declare 112 generic { + unsigned char * Tcl_GetByteArrayFromObj(Tcl_Obj *objPtr, int *lengthPtr) +} +declare 113 generic { + Tcl_Channel Tcl_GetChannel(Tcl_Interp *interp, char *chanName, \ + int *modePtr) +} +declare 114 generic { + int Tcl_GetChannelBufferSize(Tcl_Channel chan) +} +declare 115 generic { + int Tcl_GetChannelHandle(Tcl_Channel chan, int direction, \ + ClientData *handlePtr) +} +declare 116 generic { + ClientData Tcl_GetChannelInstanceData(Tcl_Channel chan) +} +declare 117 generic { + int Tcl_GetChannelMode(Tcl_Channel chan) +} +declare 118 generic { + char * Tcl_GetChannelName(Tcl_Channel chan) +} +declare 119 generic { + int Tcl_GetChannelOption(Tcl_Interp *interp, Tcl_Channel chan, \ + char *optionName, Tcl_DString *dsPtr) +} +declare 120 generic { + Tcl_ChannelType * Tcl_GetChannelType(Tcl_Channel chan) +} +declare 121 generic { + int Tcl_GetCommandInfo(Tcl_Interp *interp, char *cmdName, \ + Tcl_CmdInfo *infoPtr) +} +declare 122 generic { + char * Tcl_GetCommandName(Tcl_Interp *interp, Tcl_Command command) +} +declare 123 generic { + int Tcl_GetDouble(Tcl_Interp *interp, char *string, double *doublePtr) +} +declare 124 generic { + int Tcl_GetDoubleFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr, \ + double *doublePtr) +} +declare 125 generic { + int Tcl_GetErrno(void) +} +declare 126 generic { + char * Tcl_GetHostName(void) +} +declare 127 generic { + int Tcl_GetIndexFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr, \ + char **tablePtr, char *msg, int flags, int *indexPtr) +} +declare 128 generic { + int Tcl_GetInt(Tcl_Interp *interp, char *string, int *intPtr) +} +declare 129 generic { + int Tcl_GetInterpPath(Tcl_Interp *askInterp, Tcl_Interp *slaveInterp) +} +declare 130 generic { + int Tcl_GetIntFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr, int *intPtr) +} +declare 131 generic { + int Tcl_GetLongFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr, long *longPtr) +} +declare 132 generic { + Tcl_Interp * Tcl_GetMaster(Tcl_Interp *interp) +} +declare 133 generic { + CONST char * Tcl_GetNameOfExecutable(void) +} +declare 134 generic { + Tcl_Obj * Tcl_GetObjResult(Tcl_Interp *interp) +} +declare 135 generic { + Tcl_ObjType * Tcl_GetObjType(char *typeName) +} +declare 136 generic { + Tcl_PathType Tcl_GetPathType(char *path) +} +declare 137 generic { + int Tcl_Gets(Tcl_Channel chan, Tcl_DString *dsPtr) +} +declare 138 generic { + int Tcl_GetsObj(Tcl_Channel chan, Tcl_Obj *objPtr) +} +declare 139 generic { + int Tcl_GetServiceMode(void) +} +declare 140 generic { + Tcl_Interp * Tcl_GetSlave(Tcl_Interp *interp, char *slaveName) +} +declare 141 generic { + Tcl_Channel Tcl_GetStdChannel(int type) +} +declare 142 generic { + char * Tcl_GetStringFromObj(Tcl_Obj *objPtr, int *lengthPtr) +} +declare 143 generic { + char * Tcl_GetStringResult(Tcl_Interp *interp) +} +declare 144 generic { + char * Tcl_GetVar(Tcl_Interp *interp, char *varName, int flags) +} +declare 145 generic { + char * Tcl_GetVar2(Tcl_Interp *interp, char *part1, char *part2, int flags) +} +declare 146 generic { + int Tcl_GlobalEval(Tcl_Interp *interp, char *command) +} +declare 147 generic { + int Tcl_GlobalEvalObj(Tcl_Interp *interp, Tcl_Obj *objPtr) +} +declare 148 generic { + char * Tcl_HashStats(Tcl_HashTable *tablePtr) +} +declare 149 generic { + int Tcl_HideCommand(Tcl_Interp *interp, char *cmdName, \ + char *hiddenCmdToken) +} +declare 150 generic { + int Tcl_Init(Tcl_Interp *interp) +} +declare 151 generic { + void Tcl_InitHashTable(Tcl_HashTable *tablePtr, int keyType) +} +declare 152 generic { + int Tcl_InputBlocked(Tcl_Channel chan) +} +declare 153 generic { + int Tcl_InputBuffered(Tcl_Channel chan) +} +declare 154 generic { + int Tcl_InterpDeleted(Tcl_Interp *interp) +} +declare 155 generic { + int Tcl_IsSafe(Tcl_Interp *interp) +} +declare 156 generic { + void Tcl_InvalidateStringRep(Tcl_Obj *objPtr) +} +declare 157 generic { + char * Tcl_JoinPath(int argc, char **argv, Tcl_DString *resultPtr) +} +declare 158 generic { + int Tcl_LinkVar(Tcl_Interp *interp, char *varName, char *addr, int type) +} +declare 159 generic { + int Tcl_ListObjAppendList(Tcl_Interp *interp, Tcl_Obj *listPtr, \ + Tcl_Obj *elemListPtr) +} +declare 160 generic { + int Tcl_ListObjAppendElement(Tcl_Interp *interp, Tcl_Obj *listPtr, \ + Tcl_Obj *objPtr) +} +declare 161 generic { + int Tcl_ListObjGetElements(Tcl_Interp *interp, Tcl_Obj *listPtr, \ + int *objcPtr, Tcl_Obj ***objvPtr) +} +declare 162 generic { + int Tcl_ListObjIndex(Tcl_Interp *interp, Tcl_Obj *listPtr, int index, \ + Tcl_Obj **objPtrPtr) +} +declare 163 generic { + int Tcl_ListObjLength(Tcl_Interp *interp, Tcl_Obj *listPtr, int *intPtr) +} +declare 164 generic { + int Tcl_ListObjReplace(Tcl_Interp *interp, Tcl_Obj *listPtr, int first, \ + int count, int objc, Tcl_Obj *CONST objv[]) +} +declare 165 generic { + Tcl_Channel Tcl_MakeFileChannel(ClientData handle, int mode) +} +declare 166 generic { + int Tcl_MakeSafe(Tcl_Interp *interp) +} +declare 167 generic { + Tcl_Channel Tcl_MakeTcpClientChannel(ClientData tcpSocket) +} +declare 168 generic { + char * Tcl_Merge(int argc, char **argv) +} +declare 169 generic { + Tcl_Obj * Tcl_NewBooleanObj(int boolValue) +} +declare 170 generic { + Tcl_Obj * Tcl_NewByteArrayObj(unsigned char *bytes, int length) +} +declare 171 generic { + Tcl_Obj * Tcl_NewDoubleObj(double doubleValue) +} +declare 172 generic { + Tcl_Obj * Tcl_NewIntObj(int intValue) +} +declare 173 generic { + Tcl_Obj * Tcl_NewListObj(int objc, Tcl_Obj *CONST objv[]) +} +declare 174 generic { + Tcl_Obj * Tcl_NewLongObj(long longValue) +} +declare 175 generic { + Tcl_Obj * Tcl_NewObj(void) +} +declare 176 generic { + Tcl_Obj *Tcl_NewStringObj(char *bytes, int length) +} +declare 177 generic { + Tcl_HashEntry * Tcl_NextHashEntry(Tcl_HashSearch *searchPtr) +} +declare 178 generic { + void Tcl_NotifyChannel(Tcl_Channel channel, int mask) +} +declare 179 generic { + Tcl_Obj * Tcl_ObjGetVar2(Tcl_Interp *interp, Tcl_Obj *part1Ptr, \ + Tcl_Obj *part2Ptr, int flags) +} +declare 180 generic { + Tcl_Obj * Tcl_ObjSetVar2(Tcl_Interp *interp, Tcl_Obj *part1Ptr, \ + Tcl_Obj *part2Ptr, Tcl_Obj *newValuePtr, int flags) +} +declare 181 generic { + Tcl_Channel Tcl_OpenCommandChannel(Tcl_Interp *interp, int argc, \ + char **argv, int flags) +} +declare 182 generic { + Tcl_Channel Tcl_OpenFileChannel(Tcl_Interp *interp, char *fileName, \ + char *modeString, int permissions) +} +declare 183 generic { + Tcl_Channel Tcl_OpenTcpClient(Tcl_Interp *interp, int port, \ + char *address, char *myaddr, int myport, int async) +} +declare 184 generic { + Tcl_Channel Tcl_OpenTcpServer(Tcl_Interp *interp, int port, char *host, \ + Tcl_TcpAcceptProc *acceptProc, ClientData callbackData) +} +declare 185 generic { + void Tcl_Panic(char *format, ...) +} +declare 186 generic { + void Tcl_PanicVA(char *format, va_list argList) +} +declare 187 generic { + char * Tcl_ParseVar(Tcl_Interp *interp, char *string, char **termPtr) +} +declare 188 generic { + char * Tcl_PkgPresent(Tcl_Interp *interp, char *name, char *version, \ + int exact) +} +declare 189 generic { + char * Tcl_PkgPresentEx(Tcl_Interp *interp, char *name, char *version, \ + int exact, ClientData *clientDataPtr) +} +declare 190 generic { + int Tcl_PkgProvide(Tcl_Interp *interp, char *name, char *version) +} +declare 191 generic { + int Tcl_PkgProvideEx(Tcl_Interp *interp, char *name, char *version, \ + ClientData clientData) +} +declare 192 generic { + char * Tcl_PkgRequire(Tcl_Interp *interp, char *name, char *version, \ + int exact) +} +declare 193 generic { + char * Tcl_PkgRequireEx(Tcl_Interp *interp, char *name, char *version, \ + int exact, ClientData *clientDataPtr) +} +declare 194 generic { + char * Tcl_PosixError(Tcl_Interp *interp) +} +declare 195 generic { + void Tcl_Preserve(ClientData data) +} +declare 196 generic { + void Tcl_PrintDouble(Tcl_Interp *interp, double value, char *dst) +} +declare 197 generic { + int Tcl_PutEnv(CONST char *string) +} +declare 198 generic { + void Tcl_QueueEvent(Tcl_Event *evPtr, Tcl_QueuePosition position) +} +declare 199 generic { + int Tcl_Read(Tcl_Channel chan, char *bufPtr, int toRead) +} +declare 200 generic { + char * Tcl_Realloc(char *ptr, unsigned int size) +} +declare 201 generic { + void Tcl_ReapDetachedProcs(void) +} +declare 202 generic { + int Tcl_RecordAndEval(Tcl_Interp *interp, char *cmd, int flags) +} +declare 203 generic { + int Tcl_RecordAndEvalObj(Tcl_Interp *interp, Tcl_Obj *cmdPtr, int flags) +} +declare 204 generic { + Tcl_RegExp Tcl_RegExpCompile(Tcl_Interp *interp, char *string) +} +declare 205 generic { + int Tcl_RegExpExec(Tcl_Interp *interp, Tcl_RegExp regexp, char *string, \ + char *start) +} +declare 206 generic { + int Tcl_RegExpMatch(Tcl_Interp *interp, char *string, char *pattern) +} +declare 207 generic { + void Tcl_RegExpRange(Tcl_RegExp regexp, int index, char **startPtr, \ + char **endPtr) +} +declare 208 generic { + void Tcl_RegisterChannel(Tcl_Interp *interp, Tcl_Channel chan) +} +declare 209 generic { + void Tcl_RegisterObjType(Tcl_ObjType *typePtr) +} +declare 210 generic { + void Tcl_Release(ClientData clientData) +} +declare 211 generic { + void Tcl_ResetResult(Tcl_Interp *interp) +} +declare 212 generic { + int Tcl_ScanCountedElement(CONST char *string, int length, int *flagPtr) +} +declare 213 generic { + int Tcl_ScanElement(CONST char *string, int *flagPtr) +} +declare 214 generic { + int Tcl_Seek(Tcl_Channel chan, int offset, int mode) +} +declare 215 generic { + int Tcl_ServiceAll(void) +} +declare 216 generic { + int Tcl_ServiceEvent(int flags) +} +declare 217 generic { + void Tcl_SetAssocData(Tcl_Interp *interp, char *name, \ + Tcl_InterpDeleteProc *proc, ClientData clientData) +} +declare 218 generic { + void Tcl_SetBooleanObj(Tcl_Obj *objPtr, int boolValue) +} +declare 219 generic { + unsigned char * Tcl_SetByteArrayLength(Tcl_Obj *objPtr, int length) +} +declare 220 generic { + void Tcl_SetByteArrayObj(Tcl_Obj *objPtr, unsigned char *bytes, int length) +} +declare 221 generic { + void Tcl_SetChannelBufferSize(Tcl_Channel chan, int sz) +} +declare 222 generic { + int Tcl_SetChannelOption(Tcl_Interp *interp, Tcl_Channel chan, \ + char *optionName, char *newValue) +} +declare 223 generic { + int Tcl_SetCommandInfo(Tcl_Interp *interp, char *cmdName, \ + Tcl_CmdInfo *infoPtr) +} +declare 224 generic { + void Tcl_SetDoubleObj(Tcl_Obj *objPtr, double doubleValue) +} +declare 225 generic { + void Tcl_SetErrno(int err) +} +declare 226 generic { + void Tcl_SetErrorCode(Tcl_Interp *interp, ...) +} +declare 227 generic { + void Tcl_SetErrorCodeVA(Tcl_Interp *interp, va_list argList) +} +declare 228 generic { + void Tcl_SetIntObj(Tcl_Obj *objPtr, int intValue) +} +declare 229 generic { + void Tcl_SetListObj(Tcl_Obj *objPtr, int objc, Tcl_Obj *CONST objv[]) +} +declare 230 generic { + void Tcl_SetLongObj(Tcl_Obj *objPtr, long longValue) +} +declare 231 generic { + void Tcl_SetMaxBlockTime(Tcl_Time *timePtr) +} +declare 232 generic { + void Tcl_SetObjErrorCode(Tcl_Interp *interp, Tcl_Obj *errorObjPtr) +} +declare 233 generic { + void Tcl_SetObjLength(Tcl_Obj *objPtr, int length) +} +declare 234 generic { + void Tcl_SetObjResult(Tcl_Interp *interp, Tcl_Obj *resultObjPtr) +} +declare 235 generic { + void Tcl_SetPanicProc(Tcl_PanicProc *panicProc) +} +declare 236 generic { + int Tcl_SetRecursionLimit(Tcl_Interp *interp, int depth) +} +declare 237 generic { + void Tcl_SetResult(Tcl_Interp *interp, char *string, \ + Tcl_FreeProc *freeProc) +} +declare 238 generic { + int Tcl_SetServiceMode(int mode) +} +declare 239 generic { + void Tcl_SetStdChannel(Tcl_Channel channel, int type) +} +declare 240 generic { + void Tcl_SetStringObj(Tcl_Obj *objPtr, char *bytes, int length) +} +declare 241 generic { + void Tcl_SetTimer(Tcl_Time *timePtr) +} +declare 242 generic { + char * Tcl_SetVar(Tcl_Interp *interp, char *varName, char *newValue, \ + int flags) +} +declare 243 generic { + char * Tcl_SetVar2(Tcl_Interp *interp, char *part1, char *part2, \ + char *newValue, int flags) +} +declare 244 generic { + char * Tcl_SignalId(int sig) +} +declare 245 generic { + char * Tcl_SignalMsg(int sig) +} +declare 246 generic { + void Tcl_Sleep(int ms) +} +declare 247 generic { + void Tcl_SourceRCFile(Tcl_Interp *interp) +} +declare 248 generic { + int Tcl_SplitList(Tcl_Interp *interp, char *list, int *argcPtr, \ + char ***argvPtr) +} +declare 249 generic { + void Tcl_SplitPath(char *path, int *argcPtr, char ***argvPtr) +} +declare 250 generic { + void Tcl_StaticPackage(Tcl_Interp *interp, char *pkgName, \ + Tcl_PackageInitProc *initProc, Tcl_PackageInitProc *safeInitProc) +} +declare 251 generic { + int Tcl_StringMatch(char *string, char *pattern) +} +declare 252 generic { + int Tcl_Tell(Tcl_Channel chan) +} +declare 253 generic { + int Tcl_TraceVar(Tcl_Interp *interp, char *varName, int flags, \ + Tcl_VarTraceProc *proc, ClientData clientData) +} +declare 254 generic { + int Tcl_TraceVar2(Tcl_Interp *interp, char *part1, char *part2, \ + int flags, Tcl_VarTraceProc *proc, ClientData clientData) +} +declare 255 generic { + char * Tcl_TranslateFileName(Tcl_Interp *interp, char *name, \ + Tcl_DString *bufferPtr) +} +declare 256 generic { + int Tcl_Ungets(Tcl_Channel chan, char *str, int len, int atHead) +} +declare 257 generic { + void Tcl_UnlinkVar(Tcl_Interp *interp, char *varName) +} +declare 258 generic { + int Tcl_UnregisterChannel(Tcl_Interp *interp, Tcl_Channel chan) +} +declare 259 generic { + int Tcl_UnsetVar(Tcl_Interp *interp, char *varName, int flags) +} +declare 260 generic { + int Tcl_UnsetVar2(Tcl_Interp *interp, char *part1, char *part2, int flags) +} +declare 261 generic { + void Tcl_UntraceVar(Tcl_Interp *interp, char *varName, int flags, \ + Tcl_VarTraceProc *proc, ClientData clientData) +} +declare 262 generic { + void Tcl_UntraceVar2(Tcl_Interp *interp, char *part1, char *part2, \ + int flags, Tcl_VarTraceProc *proc, ClientData clientData) +} +declare 263 generic { + void Tcl_UpdateLinkedVar(Tcl_Interp *interp, char *varName) +} +declare 264 generic { + int Tcl_UpVar(Tcl_Interp *interp, char *frameName, char *varName, \ + char *localName, int flags) +} +declare 265 generic { + int Tcl_UpVar2(Tcl_Interp *interp, char *frameName, char *part1, \ + char *part2, char *localName, int flags) +} +declare 266 generic { + void Tcl_ValidateAllMemory(char *file, int line) +} +declare 267 generic { + int Tcl_VarEval(Tcl_Interp *interp, ...) +} +declare 268 generic { + int Tcl_VarEvalVA(Tcl_Interp *interp, va_list argList) +} +declare 269 generic { + ClientData Tcl_VarTraceInfo(Tcl_Interp *interp, char *varName, \ + int flags, Tcl_VarTraceProc *procPtr, ClientData prevClientData) +} +declare 270 generic { + ClientData Tcl_VarTraceInfo2(Tcl_Interp *interp, char *part1, \ + char *part2, int flags, Tcl_VarTraceProc *procPtr, \ + ClientData prevClientData) +} +declare 271 generic { + int Tcl_WaitForEvent(Tcl_Time *timePtr) +} +declare 272 generic { + Tcl_Pid Tcl_WaitPid(Tcl_Pid pid, int *statPtr, int options) +} +declare 273 generic { + int Tcl_Write(Tcl_Channel chan, char *s, int slen) +} +declare 274 generic { + void Tcl_WrongNumArgs(Tcl_Interp *interp, int objc, \ + Tcl_Obj *CONST objv[], char *message) +} + + + +# Define the platform specific public Tcl interface. These functions are +# only available on the designated platform. + +interface tclPlat + +declare 0 unix { + void Tcl_CreateFileHandler(int fd, int mask, Tcl_FileProc *proc, \ + ClientData clientData) +} +declare 1 unix { + void Tcl_DeleteFileHandler(int fd) +} +declare 2 unix { + int Tcl_GetOpenFile(Tcl_Interp *interp, char *string, int write, \ + int checkUsage, ClientData *filePtr) +} diff --git a/generic/tclDecls.h b/generic/tclDecls.h new file mode 100644 index 0000000..420618f --- /dev/null +++ b/generic/tclDecls.h @@ -0,0 +1,2259 @@ +/* + * tclDecls.h -- + * + * Declarations of functions in the platform independent public Tcl API. + * + * Copyright (c) 1998-1999 by Scriptics Corporation. + * + * See the file "license.terms" for information on usage and redistribution + * of this file, and for a DISCLAIMER OF ALL WARRANTIES. + * + * RCS: @(#) $Id: tclDecls.h,v 1.1 1999/03/03 00:38:39 stanton Exp $ + */ + +#ifndef _TCLDECLS +#define _TCLDECLS + +/* + * WARNING: This file is automatically generated by the tools/genStubs.tcl + * script. Any modifications to the function declarations below should be made + * in the generic/tcl.decls script. + */ + +/* !BEGIN!: Do not edit below this line. */ + +/* + * Exported function declarations: + */ + +/* 0 */ +EXTERN void Tcl_AddErrorInfo _ANSI_ARGS_((Tcl_Interp * interp, + char * message)); +/* 1 */ +EXTERN void Tcl_AddObjErrorInfo _ANSI_ARGS_((Tcl_Interp * interp, + char * message, int length)); +/* 2 */ +EXTERN char * Tcl_Alloc _ANSI_ARGS_((unsigned int size)); +/* 3 */ +EXTERN void Tcl_AllowExceptions _ANSI_ARGS_((Tcl_Interp * interp)); +/* 4 */ +EXTERN int Tcl_AppendAllObjTypes _ANSI_ARGS_(( + Tcl_Interp * interp, Tcl_Obj * objPtr)); +/* 5 */ +EXTERN void Tcl_AppendElement _ANSI_ARGS_((Tcl_Interp * interp, + char * string)); +/* 6 */ +EXTERN void Tcl_AppendResult _ANSI_ARGS_(TCL_VARARGS(Tcl_Interp *,interp)); +/* 7 */ +EXTERN void Tcl_AppendResultVA _ANSI_ARGS_((Tcl_Interp * interp, + va_list argList)); +/* 8 */ +EXTERN void Tcl_AppendToObj _ANSI_ARGS_((Tcl_Obj * objPtr, + char * bytes, int length)); +/* 9 */ +EXTERN void Tcl_AppendStringsToObj _ANSI_ARGS_(TCL_VARARGS(Tcl_Obj *,objPtr)); +/* 10 */ +EXTERN void Tcl_AppendStringsToObjVA _ANSI_ARGS_(( + Tcl_Obj * objPtr, va_list argList)); +/* 11 */ +EXTERN Tcl_AsyncHandler Tcl_AsyncCreate _ANSI_ARGS_((Tcl_AsyncProc * proc, + ClientData clientData)); +/* 12 */ +EXTERN void Tcl_AsyncDelete _ANSI_ARGS_((Tcl_AsyncHandler async)); +/* 13 */ +EXTERN int Tcl_AsyncInvoke _ANSI_ARGS_((Tcl_Interp * interp, + int code)); +/* 14 */ +EXTERN void Tcl_AsyncMark _ANSI_ARGS_((Tcl_AsyncHandler async)); +/* 15 */ +EXTERN int Tcl_AsyncReady _ANSI_ARGS_((void)); +/* 16 */ +EXTERN void Tcl_BackgroundError _ANSI_ARGS_((Tcl_Interp * interp)); +/* 17 */ +EXTERN char Tcl_Backslash _ANSI_ARGS_((CONST char * src, + int * readPtr)); +/* 18 */ +EXTERN int Tcl_BadChannelOption _ANSI_ARGS_(( + Tcl_Interp * interp, char * optionName, + char * optionList)); +/* 19 */ +EXTERN void Tcl_CallWhenDeleted _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_InterpDeleteProc * proc, + ClientData clientData)); +/* 20 */ +EXTERN void Tcl_CancelIdleCall _ANSI_ARGS_(( + Tcl_IdleProc * idleProc, + ClientData clientData)); +/* 21 */ +EXTERN int Tcl_Close _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Channel chan)); +/* 22 */ +EXTERN int Tcl_CommandComplete _ANSI_ARGS_((char * cmd)); +/* 23 */ +EXTERN char * Tcl_Concat _ANSI_ARGS_((int argc, char ** argv)); +/* 24 */ +EXTERN Tcl_Obj * Tcl_ConcatObj _ANSI_ARGS_((int objc, + Tcl_Obj *CONST objv[])); +/* 25 */ +EXTERN int Tcl_ConvertCountedElement _ANSI_ARGS_(( + CONST char * src, int length, char * dst, + int flags)); +/* 26 */ +EXTERN int Tcl_ConvertElement _ANSI_ARGS_((CONST char * src, + char * dst, int flags)); +/* 27 */ +EXTERN int Tcl_ConvertToType _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Obj * objPtr, Tcl_ObjType * typePtr)); +/* 28 */ +EXTERN int Tcl_CreateAlias _ANSI_ARGS_((Tcl_Interp * slave, + char * slaveCmd, Tcl_Interp * target, + char * targetCmd, int argc, char ** argv)); +/* 29 */ +EXTERN int Tcl_CreateAliasObj _ANSI_ARGS_((Tcl_Interp * slave, + char * slaveCmd, Tcl_Interp * target, + char * targetCmd, int objc, + Tcl_Obj *CONST objv[])); +/* 30 */ +EXTERN Tcl_Channel Tcl_CreateChannel _ANSI_ARGS_(( + Tcl_ChannelType * typePtr, char * chanName, + ClientData instanceData, int mask)); +/* 31 */ +EXTERN void Tcl_CreateChannelHandler _ANSI_ARGS_(( + Tcl_Channel chan, int mask, + Tcl_ChannelProc * proc, + ClientData clientData)); +/* 32 */ +EXTERN void Tcl_CreateCloseHandler _ANSI_ARGS_((Tcl_Channel chan, + Tcl_CloseProc * proc, ClientData clientData)); +/* 33 */ +EXTERN Tcl_Command Tcl_CreateCommand _ANSI_ARGS_((Tcl_Interp * interp, + char * cmdName, Tcl_CmdProc * proc, + ClientData clientData, + Tcl_CmdDeleteProc * deleteProc)); +/* 34 */ +EXTERN void Tcl_CreateEventSource _ANSI_ARGS_(( + Tcl_EventSetupProc * setupProc, + Tcl_EventCheckProc * checkProc, + ClientData clientData)); +/* 35 */ +EXTERN void Tcl_CreateExitHandler _ANSI_ARGS_(( + Tcl_ExitProc * proc, ClientData clientData)); +/* 36 */ +EXTERN Tcl_Interp * Tcl_CreateInterp _ANSI_ARGS_((void)); +/* 37 */ +EXTERN void Tcl_CreateMathFunc _ANSI_ARGS_((Tcl_Interp * interp, + char * name, int numArgs, + Tcl_ValueType * argTypes, + Tcl_MathProc * proc, ClientData clientData)); +/* 38 */ +EXTERN Tcl_Command Tcl_CreateObjCommand _ANSI_ARGS_(( + Tcl_Interp * interp, char * cmdName, + Tcl_ObjCmdProc * proc, ClientData clientData, + Tcl_CmdDeleteProc * deleteProc)); +/* 39 */ +EXTERN Tcl_Interp * Tcl_CreateSlave _ANSI_ARGS_((Tcl_Interp * interp, + char * slaveName, int isSafe)); +/* 40 */ +EXTERN Tcl_TimerToken Tcl_CreateTimerHandler _ANSI_ARGS_((int milliseconds, + Tcl_TimerProc * proc, ClientData clientData)); +/* 41 */ +EXTERN Tcl_Trace Tcl_CreateTrace _ANSI_ARGS_((Tcl_Interp * interp, + int level, Tcl_CmdTraceProc * proc, + ClientData clientData)); +/* 42 */ +EXTERN char * Tcl_DbCkalloc _ANSI_ARGS_((unsigned int size, + char * file, int line)); +/* 43 */ +EXTERN int Tcl_DbCkfree _ANSI_ARGS_((char * ptr, char * file, + int line)); +/* 44 */ +EXTERN char * Tcl_DbCkrealloc _ANSI_ARGS_((char * ptr, + unsigned int size, char * file, int line)); +/* 45 */ +EXTERN void Tcl_DbDecrRefCount _ANSI_ARGS_((Tcl_Obj * objPtr, + char * file, int line)); +/* 46 */ +EXTERN void Tcl_DbIncrRefCount _ANSI_ARGS_((Tcl_Obj * objPtr, + char * file, int line)); +/* 47 */ +EXTERN int Tcl_DbIsShared _ANSI_ARGS_((Tcl_Obj * objPtr, + char * file, int line)); +/* 48 */ +EXTERN Tcl_Obj * Tcl_DbNewBooleanObj _ANSI_ARGS_((int boolValue, + char * file, int line)); +/* 49 */ +EXTERN Tcl_Obj * Tcl_DbNewByteArrayObj _ANSI_ARGS_(( + unsigned char * bytes, int length, + char * file, int line)); +/* 50 */ +EXTERN Tcl_Obj * Tcl_DbNewDoubleObj _ANSI_ARGS_((double doubleValue, + char * file, int line)); +/* 51 */ +EXTERN Tcl_Obj * Tcl_DbNewListObj _ANSI_ARGS_((int objc, + Tcl_Obj *CONST objv[], char * file, int line)); +/* 52 */ +EXTERN Tcl_Obj * Tcl_DbNewLongObj _ANSI_ARGS_((long longValue, + char * file, int line)); +/* 53 */ +EXTERN Tcl_Obj * Tcl_DbNewObj _ANSI_ARGS_((char * file, int line)); +/* 54 */ +EXTERN Tcl_Obj * Tcl_DbNewStringObj _ANSI_ARGS_((char * bytes, + int length, char * file, int line)); +/* 55 */ +EXTERN void Tcl_DeleteAssocData _ANSI_ARGS_((Tcl_Interp * interp, + char * name)); +/* 56 */ +EXTERN int Tcl_DeleteCommand _ANSI_ARGS_((Tcl_Interp * interp, + char * cmdName)); +/* 57 */ +EXTERN int Tcl_DeleteCommandFromToken _ANSI_ARGS_(( + Tcl_Interp * interp, Tcl_Command command)); +/* 58 */ +EXTERN void Tcl_DeleteChannelHandler _ANSI_ARGS_(( + Tcl_Channel chan, Tcl_ChannelProc * proc, + ClientData clientData)); +/* 59 */ +EXTERN void Tcl_DeleteCloseHandler _ANSI_ARGS_((Tcl_Channel chan, + Tcl_CloseProc * proc, ClientData clientData)); +/* 60 */ +EXTERN void Tcl_DeleteEvents _ANSI_ARGS_(( + Tcl_EventDeleteProc * proc, + ClientData clientData)); +/* 61 */ +EXTERN void Tcl_DeleteEventSource _ANSI_ARGS_(( + Tcl_EventSetupProc * setupProc, + Tcl_EventCheckProc * checkProc, + ClientData clientData)); +/* 62 */ +EXTERN void Tcl_DeleteExitHandler _ANSI_ARGS_(( + Tcl_ExitProc * proc, ClientData clientData)); +/* 63 */ +EXTERN void Tcl_DeleteHashEntry _ANSI_ARGS_(( + Tcl_HashEntry * entryPtr)); +/* 64 */ +EXTERN void Tcl_DeleteHashTable _ANSI_ARGS_(( + Tcl_HashTable * tablePtr)); +/* 65 */ +EXTERN void Tcl_DeleteInterp _ANSI_ARGS_((Tcl_Interp * interp)); +/* 66 */ +EXTERN void Tcl_DeleteTimerHandler _ANSI_ARGS_(( + Tcl_TimerToken token)); +/* 67 */ +EXTERN void Tcl_DeleteTrace _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Trace trace)); +/* 68 */ +EXTERN void Tcl_DetachPids _ANSI_ARGS_((int numPids, + Tcl_Pid * pidPtr)); +/* 69 */ +EXTERN void Tcl_DontCallWhenDeleted _ANSI_ARGS_(( + Tcl_Interp * interp, + Tcl_InterpDeleteProc * proc, + ClientData clientData)); +/* 70 */ +EXTERN int Tcl_DoOneEvent _ANSI_ARGS_((int flags)); +/* 71 */ +EXTERN void Tcl_DoWhenIdle _ANSI_ARGS_((Tcl_IdleProc * proc, + ClientData clientData)); +/* 72 */ +EXTERN char * Tcl_DStringAppend _ANSI_ARGS_((Tcl_DString * dsPtr, + CONST char * string, int length)); +/* 73 */ +EXTERN char * Tcl_DStringAppendElement _ANSI_ARGS_(( + Tcl_DString * dsPtr, CONST char * string)); +/* 74 */ +EXTERN void Tcl_DStringEndSublist _ANSI_ARGS_(( + Tcl_DString * dsPtr)); +/* 75 */ +EXTERN void Tcl_DStringFree _ANSI_ARGS_((Tcl_DString * dsPtr)); +/* 76 */ +EXTERN void Tcl_DStringGetResult _ANSI_ARGS_(( + Tcl_Interp * interp, Tcl_DString * dsPtr)); +/* 77 */ +EXTERN void Tcl_DStringInit _ANSI_ARGS_((Tcl_DString * dsPtr)); +/* 78 */ +EXTERN void Tcl_DStringResult _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_DString * dsPtr)); +/* 79 */ +EXTERN void Tcl_DStringSetLength _ANSI_ARGS_(( + Tcl_DString * dsPtr, int length)); +/* 80 */ +EXTERN void Tcl_DStringStartSublist _ANSI_ARGS_(( + Tcl_DString * dsPtr)); +/* 81 */ +EXTERN int Tcl_DumpActiveMemory _ANSI_ARGS_((char * fileName)); +/* 82 */ +EXTERN Tcl_Obj * Tcl_DuplicateObj _ANSI_ARGS_((Tcl_Obj * objPtr)); +/* 83 */ +EXTERN int Tcl_Eof _ANSI_ARGS_((Tcl_Channel chan)); +/* 84 */ +EXTERN char * Tcl_ErrnoId _ANSI_ARGS_((void)); +/* 85 */ +EXTERN char * Tcl_ErrnoMsg _ANSI_ARGS_((int err)); +/* 86 */ +EXTERN int Tcl_Eval _ANSI_ARGS_((Tcl_Interp * interp, + char * string)); +/* 87 */ +EXTERN int Tcl_EvalFile _ANSI_ARGS_((Tcl_Interp * interp, + char * fileName)); +/* 88 */ +EXTERN void Tcl_EventuallyFree _ANSI_ARGS_(( + ClientData clientData, + Tcl_FreeProc * freeProc)); +/* 89 */ +EXTERN int Tcl_EvalObj _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Obj * objPtr)); +/* 90 */ +EXTERN void Tcl_Exit _ANSI_ARGS_((int status)); +/* 91 */ +EXTERN int Tcl_ExposeCommand _ANSI_ARGS_((Tcl_Interp * interp, + char * hiddenCmdToken, char * cmdName)); +/* 92 */ +EXTERN int Tcl_ExprBoolean _ANSI_ARGS_((Tcl_Interp * interp, + char * string, int * ptr)); +/* 93 */ +EXTERN int Tcl_ExprBooleanObj _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Obj * objPtr, int * ptr)); +/* 94 */ +EXTERN int Tcl_ExprDouble _ANSI_ARGS_((Tcl_Interp * interp, + char * string, double * ptr)); +/* 95 */ +EXTERN int Tcl_ExprDoubleObj _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Obj * objPtr, double * ptr)); +/* 96 */ +EXTERN int Tcl_ExprLong _ANSI_ARGS_((Tcl_Interp * interp, + char * string, long * ptr)); +/* 97 */ +EXTERN int Tcl_ExprLongObj _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Obj * objPtr, long * ptr)); +/* 98 */ +EXTERN int Tcl_ExprObj _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Obj * objPtr, Tcl_Obj ** resultPtrPtr)); +/* 99 */ +EXTERN int Tcl_ExprString _ANSI_ARGS_((Tcl_Interp * interp, + char * string)); +/* 100 */ +EXTERN void Tcl_Finalize _ANSI_ARGS_((void)); +/* 101 */ +EXTERN void Tcl_FindExecutable _ANSI_ARGS_((char * argv0)); +/* 102 */ +EXTERN Tcl_HashEntry * Tcl_FirstHashEntry _ANSI_ARGS_(( + Tcl_HashTable * tablePtr, + Tcl_HashSearch * searchPtr)); +/* 103 */ +EXTERN int Tcl_Flush _ANSI_ARGS_((Tcl_Channel chan)); +/* 104 */ +EXTERN void Tcl_Free _ANSI_ARGS_((char * ptr)); +/* 105 */ +EXTERN void TclFreeObj _ANSI_ARGS_((Tcl_Obj * objPtr)); +/* 106 */ +EXTERN void Tcl_FreeResult _ANSI_ARGS_((Tcl_Interp * interp)); +/* 107 */ +EXTERN int Tcl_GetAlias _ANSI_ARGS_((Tcl_Interp * interp, + char * slaveCmd, + Tcl_Interp ** targetInterpPtr, + char ** targetCmdPtr, int * argcPtr, + char *** argvPtr)); +/* 108 */ +EXTERN int Tcl_GetAliasObj _ANSI_ARGS_((Tcl_Interp * interp, + char * slaveCmd, + Tcl_Interp ** targetInterpPtr, + char ** targetCmdPtr, int * objcPtr, + Tcl_Obj *** objv)); +/* 109 */ +EXTERN ClientData Tcl_GetAssocData _ANSI_ARGS_((Tcl_Interp * interp, + char * name, Tcl_InterpDeleteProc ** procPtr)); +/* 110 */ +EXTERN int Tcl_GetBoolean _ANSI_ARGS_((Tcl_Interp * interp, + char * string, int * boolPtr)); +/* 111 */ +EXTERN int Tcl_GetBooleanFromObj _ANSI_ARGS_(( + Tcl_Interp * interp, Tcl_Obj * objPtr, + int * boolPtr)); +/* 112 */ +EXTERN unsigned char * Tcl_GetByteArrayFromObj _ANSI_ARGS_(( + Tcl_Obj * objPtr, int * lengthPtr)); +/* 113 */ +EXTERN Tcl_Channel Tcl_GetChannel _ANSI_ARGS_((Tcl_Interp * interp, + char * chanName, int * modePtr)); +/* 114 */ +EXTERN int Tcl_GetChannelBufferSize _ANSI_ARGS_(( + Tcl_Channel chan)); +/* 115 */ +EXTERN int Tcl_GetChannelHandle _ANSI_ARGS_((Tcl_Channel chan, + int direction, ClientData * handlePtr)); +/* 116 */ +EXTERN ClientData Tcl_GetChannelInstanceData _ANSI_ARGS_(( + Tcl_Channel chan)); +/* 117 */ +EXTERN int Tcl_GetChannelMode _ANSI_ARGS_((Tcl_Channel chan)); +/* 118 */ +EXTERN char * Tcl_GetChannelName _ANSI_ARGS_((Tcl_Channel chan)); +/* 119 */ +EXTERN int Tcl_GetChannelOption _ANSI_ARGS_(( + Tcl_Interp * interp, Tcl_Channel chan, + char * optionName, Tcl_DString * dsPtr)); +/* 120 */ +EXTERN Tcl_ChannelType * Tcl_GetChannelType _ANSI_ARGS_((Tcl_Channel chan)); +/* 121 */ +EXTERN int Tcl_GetCommandInfo _ANSI_ARGS_((Tcl_Interp * interp, + char * cmdName, Tcl_CmdInfo * infoPtr)); +/* 122 */ +EXTERN char * Tcl_GetCommandName _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Command command)); +/* 123 */ +EXTERN int Tcl_GetDouble _ANSI_ARGS_((Tcl_Interp * interp, + char * string, double * doublePtr)); +/* 124 */ +EXTERN int Tcl_GetDoubleFromObj _ANSI_ARGS_(( + Tcl_Interp * interp, Tcl_Obj * objPtr, + double * doublePtr)); +/* 125 */ +EXTERN int Tcl_GetErrno _ANSI_ARGS_((void)); +/* 126 */ +EXTERN char * Tcl_GetHostName _ANSI_ARGS_((void)); +/* 127 */ +EXTERN int Tcl_GetIndexFromObj _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Obj * objPtr, char ** tablePtr, + char * msg, int flags, int * indexPtr)); +/* 128 */ +EXTERN int Tcl_GetInt _ANSI_ARGS_((Tcl_Interp * interp, + char * string, int * intPtr)); +/* 129 */ +EXTERN int Tcl_GetInterpPath _ANSI_ARGS_(( + Tcl_Interp * askInterp, + Tcl_Interp * slaveInterp)); +/* 130 */ +EXTERN int Tcl_GetIntFromObj _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Obj * objPtr, int * intPtr)); +/* 131 */ +EXTERN int Tcl_GetLongFromObj _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Obj * objPtr, long * longPtr)); +/* 132 */ +EXTERN Tcl_Interp * Tcl_GetMaster _ANSI_ARGS_((Tcl_Interp * interp)); +/* 133 */ +EXTERN CONST char * Tcl_GetNameOfExecutable _ANSI_ARGS_((void)); +/* 134 */ +EXTERN Tcl_Obj * Tcl_GetObjResult _ANSI_ARGS_((Tcl_Interp * interp)); +/* 135 */ +EXTERN Tcl_ObjType * Tcl_GetObjType _ANSI_ARGS_((char * typeName)); +/* 136 */ +EXTERN Tcl_PathType Tcl_GetPathType _ANSI_ARGS_((char * path)); +/* 137 */ +EXTERN int Tcl_Gets _ANSI_ARGS_((Tcl_Channel chan, + Tcl_DString * dsPtr)); +/* 138 */ +EXTERN int Tcl_GetsObj _ANSI_ARGS_((Tcl_Channel chan, + Tcl_Obj * objPtr)); +/* 139 */ +EXTERN int Tcl_GetServiceMode _ANSI_ARGS_((void)); +/* 140 */ +EXTERN Tcl_Interp * Tcl_GetSlave _ANSI_ARGS_((Tcl_Interp * interp, + char * slaveName)); +/* 141 */ +EXTERN Tcl_Channel Tcl_GetStdChannel _ANSI_ARGS_((int type)); +/* 142 */ +EXTERN char * Tcl_GetStringFromObj _ANSI_ARGS_((Tcl_Obj * objPtr, + int * lengthPtr)); +/* 143 */ +EXTERN char * Tcl_GetStringResult _ANSI_ARGS_((Tcl_Interp * interp)); +/* 144 */ +EXTERN char * Tcl_GetVar _ANSI_ARGS_((Tcl_Interp * interp, + char * varName, int flags)); +/* 145 */ +EXTERN char * Tcl_GetVar2 _ANSI_ARGS_((Tcl_Interp * interp, + char * part1, char * part2, int flags)); +/* 146 */ +EXTERN int Tcl_GlobalEval _ANSI_ARGS_((Tcl_Interp * interp, + char * command)); +/* 147 */ +EXTERN int Tcl_GlobalEvalObj _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Obj * objPtr)); +/* 148 */ +EXTERN char * Tcl_HashStats _ANSI_ARGS_((Tcl_HashTable * tablePtr)); +/* 149 */ +EXTERN int Tcl_HideCommand _ANSI_ARGS_((Tcl_Interp * interp, + char * cmdName, char * hiddenCmdToken)); +/* 150 */ +EXTERN int Tcl_Init _ANSI_ARGS_((Tcl_Interp * interp)); +/* 151 */ +EXTERN void Tcl_InitHashTable _ANSI_ARGS_(( + Tcl_HashTable * tablePtr, int keyType)); +/* 152 */ +EXTERN int Tcl_InputBlocked _ANSI_ARGS_((Tcl_Channel chan)); +/* 153 */ +EXTERN int Tcl_InputBuffered _ANSI_ARGS_((Tcl_Channel chan)); +/* 154 */ +EXTERN int Tcl_InterpDeleted _ANSI_ARGS_((Tcl_Interp * interp)); +/* 155 */ +EXTERN int Tcl_IsSafe _ANSI_ARGS_((Tcl_Interp * interp)); +/* 156 */ +EXTERN void Tcl_InvalidateStringRep _ANSI_ARGS_(( + Tcl_Obj * objPtr)); +/* 157 */ +EXTERN char * Tcl_JoinPath _ANSI_ARGS_((int argc, char ** argv, + Tcl_DString * resultPtr)); +/* 158 */ +EXTERN int Tcl_LinkVar _ANSI_ARGS_((Tcl_Interp * interp, + char * varName, char * addr, int type)); +/* 159 */ +EXTERN int Tcl_ListObjAppendList _ANSI_ARGS_(( + Tcl_Interp * interp, Tcl_Obj * listPtr, + Tcl_Obj * elemListPtr)); +/* 160 */ +EXTERN int Tcl_ListObjAppendElement _ANSI_ARGS_(( + Tcl_Interp * interp, Tcl_Obj * listPtr, + Tcl_Obj * objPtr)); +/* 161 */ +EXTERN int Tcl_ListObjGetElements _ANSI_ARGS_(( + Tcl_Interp * interp, Tcl_Obj * listPtr, + int * objcPtr, Tcl_Obj *** objvPtr)); +/* 162 */ +EXTERN int Tcl_ListObjIndex _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Obj * listPtr, int index, + Tcl_Obj ** objPtrPtr)); +/* 163 */ +EXTERN int Tcl_ListObjLength _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Obj * listPtr, int * intPtr)); +/* 164 */ +EXTERN int Tcl_ListObjReplace _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Obj * listPtr, int first, int count, + int objc, Tcl_Obj *CONST objv[])); +/* 165 */ +EXTERN Tcl_Channel Tcl_MakeFileChannel _ANSI_ARGS_((ClientData handle, + int mode)); +/* 166 */ +EXTERN int Tcl_MakeSafe _ANSI_ARGS_((Tcl_Interp * interp)); +/* 167 */ +EXTERN Tcl_Channel Tcl_MakeTcpClientChannel _ANSI_ARGS_(( + ClientData tcpSocket)); +/* 168 */ +EXTERN char * Tcl_Merge _ANSI_ARGS_((int argc, char ** argv)); +/* 169 */ +EXTERN Tcl_Obj * Tcl_NewBooleanObj _ANSI_ARGS_((int boolValue)); +/* 170 */ +EXTERN Tcl_Obj * Tcl_NewByteArrayObj _ANSI_ARGS_(( + unsigned char * bytes, int length)); +/* 171 */ +EXTERN Tcl_Obj * Tcl_NewDoubleObj _ANSI_ARGS_((double doubleValue)); +/* 172 */ +EXTERN Tcl_Obj * Tcl_NewIntObj _ANSI_ARGS_((int intValue)); +/* 173 */ +EXTERN Tcl_Obj * Tcl_NewListObj _ANSI_ARGS_((int objc, + Tcl_Obj *CONST objv[])); +/* 174 */ +EXTERN Tcl_Obj * Tcl_NewLongObj _ANSI_ARGS_((long longValue)); +/* 175 */ +EXTERN Tcl_Obj * Tcl_NewObj _ANSI_ARGS_((void)); +/* 176 */ +EXTERN Tcl_Obj * Tcl_NewStringObj _ANSI_ARGS_((char * bytes, + int length)); +/* 177 */ +EXTERN Tcl_HashEntry * Tcl_NextHashEntry _ANSI_ARGS_(( + Tcl_HashSearch * searchPtr)); +/* 178 */ +EXTERN void Tcl_NotifyChannel _ANSI_ARGS_((Tcl_Channel channel, + int mask)); +/* 179 */ +EXTERN Tcl_Obj * Tcl_ObjGetVar2 _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Obj * part1Ptr, Tcl_Obj * part2Ptr, + int flags)); +/* 180 */ +EXTERN Tcl_Obj * Tcl_ObjSetVar2 _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Obj * part1Ptr, Tcl_Obj * part2Ptr, + Tcl_Obj * newValuePtr, int flags)); +/* 181 */ +EXTERN Tcl_Channel Tcl_OpenCommandChannel _ANSI_ARGS_(( + Tcl_Interp * interp, int argc, char ** argv, + int flags)); +/* 182 */ +EXTERN Tcl_Channel Tcl_OpenFileChannel _ANSI_ARGS_((Tcl_Interp * interp, + char * fileName, char * modeString, + int permissions)); +/* 183 */ +EXTERN Tcl_Channel Tcl_OpenTcpClient _ANSI_ARGS_((Tcl_Interp * interp, + int port, char * address, char * myaddr, + int myport, int async)); +/* 184 */ +EXTERN Tcl_Channel Tcl_OpenTcpServer _ANSI_ARGS_((Tcl_Interp * interp, + int port, char * host, + Tcl_TcpAcceptProc * acceptProc, + ClientData callbackData)); +/* 185 */ +EXTERN void Tcl_Panic _ANSI_ARGS_(TCL_VARARGS(char *,format)); +/* 186 */ +EXTERN void Tcl_PanicVA _ANSI_ARGS_((char * format, + va_list argList)); +/* 187 */ +EXTERN char * Tcl_ParseVar _ANSI_ARGS_((Tcl_Interp * interp, + char * string, char ** termPtr)); +/* 188 */ +EXTERN char * Tcl_PkgPresent _ANSI_ARGS_((Tcl_Interp * interp, + char * name, char * version, int exact)); +/* 189 */ +EXTERN char * Tcl_PkgPresentEx _ANSI_ARGS_((Tcl_Interp * interp, + char * name, char * version, int exact, + ClientData * clientDataPtr)); +/* 190 */ +EXTERN int Tcl_PkgProvide _ANSI_ARGS_((Tcl_Interp * interp, + char * name, char * version)); +/* 191 */ +EXTERN int Tcl_PkgProvideEx _ANSI_ARGS_((Tcl_Interp * interp, + char * name, char * version, + ClientData clientData)); +/* 192 */ +EXTERN char * Tcl_PkgRequire _ANSI_ARGS_((Tcl_Interp * interp, + char * name, char * version, int exact)); +/* 193 */ +EXTERN char * Tcl_PkgRequireEx _ANSI_ARGS_((Tcl_Interp * interp, + char * name, char * version, int exact, + ClientData * clientDataPtr)); +/* 194 */ +EXTERN char * Tcl_PosixError _ANSI_ARGS_((Tcl_Interp * interp)); +/* 195 */ +EXTERN void Tcl_Preserve _ANSI_ARGS_((ClientData data)); +/* 196 */ +EXTERN void Tcl_PrintDouble _ANSI_ARGS_((Tcl_Interp * interp, + double value, char * dst)); +/* 197 */ +EXTERN int Tcl_PutEnv _ANSI_ARGS_((CONST char * string)); +/* 198 */ +EXTERN void Tcl_QueueEvent _ANSI_ARGS_((Tcl_Event * evPtr, + Tcl_QueuePosition position)); +/* 199 */ +EXTERN int Tcl_Read _ANSI_ARGS_((Tcl_Channel chan, + char * bufPtr, int toRead)); +/* 200 */ +EXTERN char * Tcl_Realloc _ANSI_ARGS_((char * ptr, + unsigned int size)); +/* 201 */ +EXTERN void Tcl_ReapDetachedProcs _ANSI_ARGS_((void)); +/* 202 */ +EXTERN int Tcl_RecordAndEval _ANSI_ARGS_((Tcl_Interp * interp, + char * cmd, int flags)); +/* 203 */ +EXTERN int Tcl_RecordAndEvalObj _ANSI_ARGS_(( + Tcl_Interp * interp, Tcl_Obj * cmdPtr, + int flags)); +/* 204 */ +EXTERN Tcl_RegExp Tcl_RegExpCompile _ANSI_ARGS_((Tcl_Interp * interp, + char * string)); +/* 205 */ +EXTERN int Tcl_RegExpExec _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_RegExp regexp, char * string, + char * start)); +/* 206 */ +EXTERN int Tcl_RegExpMatch _ANSI_ARGS_((Tcl_Interp * interp, + char * string, char * pattern)); +/* 207 */ +EXTERN void Tcl_RegExpRange _ANSI_ARGS_((Tcl_RegExp regexp, + int index, char ** startPtr, char ** endPtr)); +/* 208 */ +EXTERN void Tcl_RegisterChannel _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Channel chan)); +/* 209 */ +EXTERN void Tcl_RegisterObjType _ANSI_ARGS_(( + Tcl_ObjType * typePtr)); +/* 210 */ +EXTERN void Tcl_Release _ANSI_ARGS_((ClientData clientData)); +/* 211 */ +EXTERN void Tcl_ResetResult _ANSI_ARGS_((Tcl_Interp * interp)); +/* 212 */ +EXTERN int Tcl_ScanCountedElement _ANSI_ARGS_(( + CONST char * string, int length, + int * flagPtr)); +/* 213 */ +EXTERN int Tcl_ScanElement _ANSI_ARGS_((CONST char * string, + int * flagPtr)); +/* 214 */ +EXTERN int Tcl_Seek _ANSI_ARGS_((Tcl_Channel chan, int offset, + int mode)); +/* 215 */ +EXTERN int Tcl_ServiceAll _ANSI_ARGS_((void)); +/* 216 */ +EXTERN int Tcl_ServiceEvent _ANSI_ARGS_((int flags)); +/* 217 */ +EXTERN void Tcl_SetAssocData _ANSI_ARGS_((Tcl_Interp * interp, + char * name, Tcl_InterpDeleteProc * proc, + ClientData clientData)); +/* 218 */ +EXTERN void Tcl_SetBooleanObj _ANSI_ARGS_((Tcl_Obj * objPtr, + int boolValue)); +/* 219 */ +EXTERN unsigned char * Tcl_SetByteArrayLength _ANSI_ARGS_((Tcl_Obj * objPtr, + int length)); +/* 220 */ +EXTERN void Tcl_SetByteArrayObj _ANSI_ARGS_((Tcl_Obj * objPtr, + unsigned char * bytes, int length)); +/* 221 */ +EXTERN void Tcl_SetChannelBufferSize _ANSI_ARGS_(( + Tcl_Channel chan, int sz)); +/* 222 */ +EXTERN int Tcl_SetChannelOption _ANSI_ARGS_(( + Tcl_Interp * interp, Tcl_Channel chan, + char * optionName, char * newValue)); +/* 223 */ +EXTERN int Tcl_SetCommandInfo _ANSI_ARGS_((Tcl_Interp * interp, + char * cmdName, Tcl_CmdInfo * infoPtr)); +/* 224 */ +EXTERN void Tcl_SetDoubleObj _ANSI_ARGS_((Tcl_Obj * objPtr, + double doubleValue)); +/* 225 */ +EXTERN void Tcl_SetErrno _ANSI_ARGS_((int err)); +/* 226 */ +EXTERN void Tcl_SetErrorCode _ANSI_ARGS_(TCL_VARARGS(Tcl_Interp *,interp)); +/* 227 */ +EXTERN void Tcl_SetErrorCodeVA _ANSI_ARGS_((Tcl_Interp * interp, + va_list argList)); +/* 228 */ +EXTERN void Tcl_SetIntObj _ANSI_ARGS_((Tcl_Obj * objPtr, + int intValue)); +/* 229 */ +EXTERN void Tcl_SetListObj _ANSI_ARGS_((Tcl_Obj * objPtr, + int objc, Tcl_Obj *CONST objv[])); +/* 230 */ +EXTERN void Tcl_SetLongObj _ANSI_ARGS_((Tcl_Obj * objPtr, + long longValue)); +/* 231 */ +EXTERN void Tcl_SetMaxBlockTime _ANSI_ARGS_((Tcl_Time * timePtr)); +/* 232 */ +EXTERN void Tcl_SetObjErrorCode _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Obj * errorObjPtr)); +/* 233 */ +EXTERN void Tcl_SetObjLength _ANSI_ARGS_((Tcl_Obj * objPtr, + int length)); +/* 234 */ +EXTERN void Tcl_SetObjResult _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Obj * resultObjPtr)); +/* 235 */ +EXTERN void Tcl_SetPanicProc _ANSI_ARGS_(( + Tcl_PanicProc * panicProc)); +/* 236 */ +EXTERN int Tcl_SetRecursionLimit _ANSI_ARGS_(( + Tcl_Interp * interp, int depth)); +/* 237 */ +EXTERN void Tcl_SetResult _ANSI_ARGS_((Tcl_Interp * interp, + char * string, Tcl_FreeProc * freeProc)); +/* 238 */ +EXTERN int Tcl_SetServiceMode _ANSI_ARGS_((int mode)); +/* 239 */ +EXTERN void Tcl_SetStdChannel _ANSI_ARGS_((Tcl_Channel channel, + int type)); +/* 240 */ +EXTERN void Tcl_SetStringObj _ANSI_ARGS_((Tcl_Obj * objPtr, + char * bytes, int length)); +/* 241 */ +EXTERN void Tcl_SetTimer _ANSI_ARGS_((Tcl_Time * timePtr)); +/* 242 */ +EXTERN char * Tcl_SetVar _ANSI_ARGS_((Tcl_Interp * interp, + char * varName, char * newValue, int flags)); +/* 243 */ +EXTERN char * Tcl_SetVar2 _ANSI_ARGS_((Tcl_Interp * interp, + char * part1, char * part2, char * newValue, + int flags)); +/* 244 */ +EXTERN char * Tcl_SignalId _ANSI_ARGS_((int sig)); +/* 245 */ +EXTERN char * Tcl_SignalMsg _ANSI_ARGS_((int sig)); +/* 246 */ +EXTERN void Tcl_Sleep _ANSI_ARGS_((int ms)); +/* 247 */ +EXTERN void Tcl_SourceRCFile _ANSI_ARGS_((Tcl_Interp * interp)); +/* 248 */ +EXTERN int Tcl_SplitList _ANSI_ARGS_((Tcl_Interp * interp, + char * list, int * argcPtr, char *** argvPtr)); +/* 249 */ +EXTERN void Tcl_SplitPath _ANSI_ARGS_((char * path, + int * argcPtr, char *** argvPtr)); +/* 250 */ +EXTERN void Tcl_StaticPackage _ANSI_ARGS_((Tcl_Interp * interp, + char * pkgName, + Tcl_PackageInitProc * initProc, + Tcl_PackageInitProc * safeInitProc)); +/* 251 */ +EXTERN int Tcl_StringMatch _ANSI_ARGS_((char * string, + char * pattern)); +/* 252 */ +EXTERN int Tcl_Tell _ANSI_ARGS_((Tcl_Channel chan)); +/* 253 */ +EXTERN int Tcl_TraceVar _ANSI_ARGS_((Tcl_Interp * interp, + char * varName, int flags, + Tcl_VarTraceProc * proc, + ClientData clientData)); +/* 254 */ +EXTERN int Tcl_TraceVar2 _ANSI_ARGS_((Tcl_Interp * interp, + char * part1, char * part2, int flags, + Tcl_VarTraceProc * proc, + ClientData clientData)); +/* 255 */ +EXTERN char * Tcl_TranslateFileName _ANSI_ARGS_(( + Tcl_Interp * interp, char * name, + Tcl_DString * bufferPtr)); +/* 256 */ +EXTERN int Tcl_Ungets _ANSI_ARGS_((Tcl_Channel chan, char * str, + int len, int atHead)); +/* 257 */ +EXTERN void Tcl_UnlinkVar _ANSI_ARGS_((Tcl_Interp * interp, + char * varName)); +/* 258 */ +EXTERN int Tcl_UnregisterChannel _ANSI_ARGS_(( + Tcl_Interp * interp, Tcl_Channel chan)); +/* 259 */ +EXTERN int Tcl_UnsetVar _ANSI_ARGS_((Tcl_Interp * interp, + char * varName, int flags)); +/* 260 */ +EXTERN int Tcl_UnsetVar2 _ANSI_ARGS_((Tcl_Interp * interp, + char * part1, char * part2, int flags)); +/* 261 */ +EXTERN void Tcl_UntraceVar _ANSI_ARGS_((Tcl_Interp * interp, + char * varName, int flags, + Tcl_VarTraceProc * proc, + ClientData clientData)); +/* 262 */ +EXTERN void Tcl_UntraceVar2 _ANSI_ARGS_((Tcl_Interp * interp, + char * part1, char * part2, int flags, + Tcl_VarTraceProc * proc, + ClientData clientData)); +/* 263 */ +EXTERN void Tcl_UpdateLinkedVar _ANSI_ARGS_((Tcl_Interp * interp, + char * varName)); +/* 264 */ +EXTERN int Tcl_UpVar _ANSI_ARGS_((Tcl_Interp * interp, + char * frameName, char * varName, + char * localName, int flags)); +/* 265 */ +EXTERN int Tcl_UpVar2 _ANSI_ARGS_((Tcl_Interp * interp, + char * frameName, char * part1, char * part2, + char * localName, int flags)); +/* 266 */ +EXTERN void Tcl_ValidateAllMemory _ANSI_ARGS_((char * file, + int line)); +/* 267 */ +EXTERN int Tcl_VarEval _ANSI_ARGS_(TCL_VARARGS(Tcl_Interp *,interp)); +/* 268 */ +EXTERN int Tcl_VarEvalVA _ANSI_ARGS_((Tcl_Interp * interp, + va_list argList)); +/* 269 */ +EXTERN ClientData Tcl_VarTraceInfo _ANSI_ARGS_((Tcl_Interp * interp, + char * varName, int flags, + Tcl_VarTraceProc * procPtr, + ClientData prevClientData)); +/* 270 */ +EXTERN ClientData Tcl_VarTraceInfo2 _ANSI_ARGS_((Tcl_Interp * interp, + char * part1, char * part2, int flags, + Tcl_VarTraceProc * procPtr, + ClientData prevClientData)); +/* 271 */ +EXTERN int Tcl_WaitForEvent _ANSI_ARGS_((Tcl_Time * timePtr)); +/* 272 */ +EXTERN Tcl_Pid Tcl_WaitPid _ANSI_ARGS_((Tcl_Pid pid, int * statPtr, + int options)); +/* 273 */ +EXTERN int Tcl_Write _ANSI_ARGS_((Tcl_Channel chan, char * s, + int slen)); +/* 274 */ +EXTERN void Tcl_WrongNumArgs _ANSI_ARGS_((Tcl_Interp * interp, + int objc, Tcl_Obj *CONST objv[], + char * message)); + +typedef struct TclStubHooks { + struct TclPlatStubs *tclPlatStubs; + struct TclIntStubs *tclIntStubs; + struct TclIntPlatStubs *tclIntPlatStubs; +} TclStubHooks; + +typedef struct TclStubs { + int magic; + struct TclStubHooks *hooks; + + void (*tcl_AddErrorInfo) _ANSI_ARGS_((Tcl_Interp * interp, char * message)); /* 0 */ + void (*tcl_AddObjErrorInfo) _ANSI_ARGS_((Tcl_Interp * interp, char * message, int length)); /* 1 */ + char * (*tcl_Alloc) _ANSI_ARGS_((unsigned int size)); /* 2 */ + void (*tcl_AllowExceptions) _ANSI_ARGS_((Tcl_Interp * interp)); /* 3 */ + int (*tcl_AppendAllObjTypes) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr)); /* 4 */ + void (*tcl_AppendElement) _ANSI_ARGS_((Tcl_Interp * interp, char * string)); /* 5 */ + void (*tcl_AppendResult) _ANSI_ARGS_(TCL_VARARGS(Tcl_Interp *,interp)); /* 6 */ + void (*tcl_AppendResultVA) _ANSI_ARGS_((Tcl_Interp * interp, va_list argList)); /* 7 */ + void (*tcl_AppendToObj) _ANSI_ARGS_((Tcl_Obj * objPtr, char * bytes, int length)); /* 8 */ + void (*tcl_AppendStringsToObj) _ANSI_ARGS_(TCL_VARARGS(Tcl_Obj *,objPtr)); /* 9 */ + void (*tcl_AppendStringsToObjVA) _ANSI_ARGS_((Tcl_Obj * objPtr, va_list argList)); /* 10 */ + Tcl_AsyncHandler (*tcl_AsyncCreate) _ANSI_ARGS_((Tcl_AsyncProc * proc, ClientData clientData)); /* 11 */ + void (*tcl_AsyncDelete) _ANSI_ARGS_((Tcl_AsyncHandler async)); /* 12 */ + int (*tcl_AsyncInvoke) _ANSI_ARGS_((Tcl_Interp * interp, int code)); /* 13 */ + void (*tcl_AsyncMark) _ANSI_ARGS_((Tcl_AsyncHandler async)); /* 14 */ + int (*tcl_AsyncReady) _ANSI_ARGS_((void)); /* 15 */ + void (*tcl_BackgroundError) _ANSI_ARGS_((Tcl_Interp * interp)); /* 16 */ + char (*tcl_Backslash) _ANSI_ARGS_((CONST char * src, int * readPtr)); /* 17 */ + int (*tcl_BadChannelOption) _ANSI_ARGS_((Tcl_Interp * interp, char * optionName, char * optionList)); /* 18 */ + void (*tcl_CallWhenDeleted) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_InterpDeleteProc * proc, ClientData clientData)); /* 19 */ + void (*tcl_CancelIdleCall) _ANSI_ARGS_((Tcl_IdleProc * idleProc, ClientData clientData)); /* 20 */ + int (*tcl_Close) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Channel chan)); /* 21 */ + int (*tcl_CommandComplete) _ANSI_ARGS_((char * cmd)); /* 22 */ + char * (*tcl_Concat) _ANSI_ARGS_((int argc, char ** argv)); /* 23 */ + Tcl_Obj * (*tcl_ConcatObj) _ANSI_ARGS_((int objc, Tcl_Obj *CONST objv[])); /* 24 */ + int (*tcl_ConvertCountedElement) _ANSI_ARGS_((CONST char * src, int length, char * dst, int flags)); /* 25 */ + int (*tcl_ConvertElement) _ANSI_ARGS_((CONST char * src, char * dst, int flags)); /* 26 */ + int (*tcl_ConvertToType) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, Tcl_ObjType * typePtr)); /* 27 */ + int (*tcl_CreateAlias) _ANSI_ARGS_((Tcl_Interp * slave, char * slaveCmd, Tcl_Interp * target, char * targetCmd, int argc, char ** argv)); /* 28 */ + int (*tcl_CreateAliasObj) _ANSI_ARGS_((Tcl_Interp * slave, char * slaveCmd, Tcl_Interp * target, char * targetCmd, int objc, Tcl_Obj *CONST objv[])); /* 29 */ + Tcl_Channel (*tcl_CreateChannel) _ANSI_ARGS_((Tcl_ChannelType * typePtr, char * chanName, ClientData instanceData, int mask)); /* 30 */ + void (*tcl_CreateChannelHandler) _ANSI_ARGS_((Tcl_Channel chan, int mask, Tcl_ChannelProc * proc, ClientData clientData)); /* 31 */ + void (*tcl_CreateCloseHandler) _ANSI_ARGS_((Tcl_Channel chan, Tcl_CloseProc * proc, ClientData clientData)); /* 32 */ + Tcl_Command (*tcl_CreateCommand) _ANSI_ARGS_((Tcl_Interp * interp, char * cmdName, Tcl_CmdProc * proc, ClientData clientData, Tcl_CmdDeleteProc * deleteProc)); /* 33 */ + void (*tcl_CreateEventSource) _ANSI_ARGS_((Tcl_EventSetupProc * setupProc, Tcl_EventCheckProc * checkProc, ClientData clientData)); /* 34 */ + void (*tcl_CreateExitHandler) _ANSI_ARGS_((Tcl_ExitProc * proc, ClientData clientData)); /* 35 */ + Tcl_Interp * (*tcl_CreateInterp) _ANSI_ARGS_((void)); /* 36 */ + void (*tcl_CreateMathFunc) _ANSI_ARGS_((Tcl_Interp * interp, char * name, int numArgs, Tcl_ValueType * argTypes, Tcl_MathProc * proc, ClientData clientData)); /* 37 */ + Tcl_Command (*tcl_CreateObjCommand) _ANSI_ARGS_((Tcl_Interp * interp, char * cmdName, Tcl_ObjCmdProc * proc, ClientData clientData, Tcl_CmdDeleteProc * deleteProc)); /* 38 */ + Tcl_Interp * (*tcl_CreateSlave) _ANSI_ARGS_((Tcl_Interp * interp, char * slaveName, int isSafe)); /* 39 */ + Tcl_TimerToken (*tcl_CreateTimerHandler) _ANSI_ARGS_((int milliseconds, Tcl_TimerProc * proc, ClientData clientData)); /* 40 */ + Tcl_Trace (*tcl_CreateTrace) _ANSI_ARGS_((Tcl_Interp * interp, int level, Tcl_CmdTraceProc * proc, ClientData clientData)); /* 41 */ + char * (*tcl_DbCkalloc) _ANSI_ARGS_((unsigned int size, char * file, int line)); /* 42 */ + int (*tcl_DbCkfree) _ANSI_ARGS_((char * ptr, char * file, int line)); /* 43 */ + char * (*tcl_DbCkrealloc) _ANSI_ARGS_((char * ptr, unsigned int size, char * file, int line)); /* 44 */ + void (*tcl_DbDecrRefCount) _ANSI_ARGS_((Tcl_Obj * objPtr, char * file, int line)); /* 45 */ + void (*tcl_DbIncrRefCount) _ANSI_ARGS_((Tcl_Obj * objPtr, char * file, int line)); /* 46 */ + int (*tcl_DbIsShared) _ANSI_ARGS_((Tcl_Obj * objPtr, char * file, int line)); /* 47 */ + Tcl_Obj * (*tcl_DbNewBooleanObj) _ANSI_ARGS_((int boolValue, char * file, int line)); /* 48 */ + Tcl_Obj * (*tcl_DbNewByteArrayObj) _ANSI_ARGS_((unsigned char * bytes, int length, char * file, int line)); /* 49 */ + Tcl_Obj * (*tcl_DbNewDoubleObj) _ANSI_ARGS_((double doubleValue, char * file, int line)); /* 50 */ + Tcl_Obj * (*tcl_DbNewListObj) _ANSI_ARGS_((int objc, Tcl_Obj *CONST objv[], char * file, int line)); /* 51 */ + Tcl_Obj * (*tcl_DbNewLongObj) _ANSI_ARGS_((long longValue, char * file, int line)); /* 52 */ + Tcl_Obj * (*tcl_DbNewObj) _ANSI_ARGS_((char * file, int line)); /* 53 */ + Tcl_Obj * (*tcl_DbNewStringObj) _ANSI_ARGS_((char * bytes, int length, char * file, int line)); /* 54 */ + void (*tcl_DeleteAssocData) _ANSI_ARGS_((Tcl_Interp * interp, char * name)); /* 55 */ + int (*tcl_DeleteCommand) _ANSI_ARGS_((Tcl_Interp * interp, char * cmdName)); /* 56 */ + int (*tcl_DeleteCommandFromToken) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Command command)); /* 57 */ + void (*tcl_DeleteChannelHandler) _ANSI_ARGS_((Tcl_Channel chan, Tcl_ChannelProc * proc, ClientData clientData)); /* 58 */ + void (*tcl_DeleteCloseHandler) _ANSI_ARGS_((Tcl_Channel chan, Tcl_CloseProc * proc, ClientData clientData)); /* 59 */ + void (*tcl_DeleteEvents) _ANSI_ARGS_((Tcl_EventDeleteProc * proc, ClientData clientData)); /* 60 */ + void (*tcl_DeleteEventSource) _ANSI_ARGS_((Tcl_EventSetupProc * setupProc, Tcl_EventCheckProc * checkProc, ClientData clientData)); /* 61 */ + void (*tcl_DeleteExitHandler) _ANSI_ARGS_((Tcl_ExitProc * proc, ClientData clientData)); /* 62 */ + void (*tcl_DeleteHashEntry) _ANSI_ARGS_((Tcl_HashEntry * entryPtr)); /* 63 */ + void (*tcl_DeleteHashTable) _ANSI_ARGS_((Tcl_HashTable * tablePtr)); /* 64 */ + void (*tcl_DeleteInterp) _ANSI_ARGS_((Tcl_Interp * interp)); /* 65 */ + void (*tcl_DeleteTimerHandler) _ANSI_ARGS_((Tcl_TimerToken token)); /* 66 */ + void (*tcl_DeleteTrace) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Trace trace)); /* 67 */ + void (*tcl_DetachPids) _ANSI_ARGS_((int numPids, Tcl_Pid * pidPtr)); /* 68 */ + void (*tcl_DontCallWhenDeleted) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_InterpDeleteProc * proc, ClientData clientData)); /* 69 */ + int (*tcl_DoOneEvent) _ANSI_ARGS_((int flags)); /* 70 */ + void (*tcl_DoWhenIdle) _ANSI_ARGS_((Tcl_IdleProc * proc, ClientData clientData)); /* 71 */ + char * (*tcl_DStringAppend) _ANSI_ARGS_((Tcl_DString * dsPtr, CONST char * string, int length)); /* 72 */ + char * (*tcl_DStringAppendElement) _ANSI_ARGS_((Tcl_DString * dsPtr, CONST char * string)); /* 73 */ + void (*tcl_DStringEndSublist) _ANSI_ARGS_((Tcl_DString * dsPtr)); /* 74 */ + void (*tcl_DStringFree) _ANSI_ARGS_((Tcl_DString * dsPtr)); /* 75 */ + void (*tcl_DStringGetResult) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_DString * dsPtr)); /* 76 */ + void (*tcl_DStringInit) _ANSI_ARGS_((Tcl_DString * dsPtr)); /* 77 */ + void (*tcl_DStringResult) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_DString * dsPtr)); /* 78 */ + void (*tcl_DStringSetLength) _ANSI_ARGS_((Tcl_DString * dsPtr, int length)); /* 79 */ + void (*tcl_DStringStartSublist) _ANSI_ARGS_((Tcl_DString * dsPtr)); /* 80 */ + int (*tcl_DumpActiveMemory) _ANSI_ARGS_((char * fileName)); /* 81 */ + Tcl_Obj * (*tcl_DuplicateObj) _ANSI_ARGS_((Tcl_Obj * objPtr)); /* 82 */ + int (*tcl_Eof) _ANSI_ARGS_((Tcl_Channel chan)); /* 83 */ + char * (*tcl_ErrnoId) _ANSI_ARGS_((void)); /* 84 */ + char * (*tcl_ErrnoMsg) _ANSI_ARGS_((int err)); /* 85 */ + int (*tcl_Eval) _ANSI_ARGS_((Tcl_Interp * interp, char * string)); /* 86 */ + int (*tcl_EvalFile) _ANSI_ARGS_((Tcl_Interp * interp, char * fileName)); /* 87 */ + void (*tcl_EventuallyFree) _ANSI_ARGS_((ClientData clientData, Tcl_FreeProc * freeProc)); /* 88 */ + int (*tcl_EvalObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr)); /* 89 */ + void (*tcl_Exit) _ANSI_ARGS_((int status)); /* 90 */ + int (*tcl_ExposeCommand) _ANSI_ARGS_((Tcl_Interp * interp, char * hiddenCmdToken, char * cmdName)); /* 91 */ + int (*tcl_ExprBoolean) _ANSI_ARGS_((Tcl_Interp * interp, char * string, int * ptr)); /* 92 */ + int (*tcl_ExprBooleanObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, int * ptr)); /* 93 */ + int (*tcl_ExprDouble) _ANSI_ARGS_((Tcl_Interp * interp, char * string, double * ptr)); /* 94 */ + int (*tcl_ExprDoubleObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, double * ptr)); /* 95 */ + int (*tcl_ExprLong) _ANSI_ARGS_((Tcl_Interp * interp, char * string, long * ptr)); /* 96 */ + int (*tcl_ExprLongObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, long * ptr)); /* 97 */ + int (*tcl_ExprObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, Tcl_Obj ** resultPtrPtr)); /* 98 */ + int (*tcl_ExprString) _ANSI_ARGS_((Tcl_Interp * interp, char * string)); /* 99 */ + void (*tcl_Finalize) _ANSI_ARGS_((void)); /* 100 */ + void (*tcl_FindExecutable) _ANSI_ARGS_((char * argv0)); /* 101 */ + Tcl_HashEntry * (*tcl_FirstHashEntry) _ANSI_ARGS_((Tcl_HashTable * tablePtr, Tcl_HashSearch * searchPtr)); /* 102 */ + int (*tcl_Flush) _ANSI_ARGS_((Tcl_Channel chan)); /* 103 */ + void (*tcl_Free) _ANSI_ARGS_((char * ptr)); /* 104 */ + void (*tclFreeObj) _ANSI_ARGS_((Tcl_Obj * objPtr)); /* 105 */ + void (*tcl_FreeResult) _ANSI_ARGS_((Tcl_Interp * interp)); /* 106 */ + int (*tcl_GetAlias) _ANSI_ARGS_((Tcl_Interp * interp, char * slaveCmd, Tcl_Interp ** targetInterpPtr, char ** targetCmdPtr, int * argcPtr, char *** argvPtr)); /* 107 */ + int (*tcl_GetAliasObj) _ANSI_ARGS_((Tcl_Interp * interp, char * slaveCmd, Tcl_Interp ** targetInterpPtr, char ** targetCmdPtr, int * objcPtr, Tcl_Obj *** objv)); /* 108 */ + ClientData (*tcl_GetAssocData) _ANSI_ARGS_((Tcl_Interp * interp, char * name, Tcl_InterpDeleteProc ** procPtr)); /* 109 */ + int (*tcl_GetBoolean) _ANSI_ARGS_((Tcl_Interp * interp, char * string, int * boolPtr)); /* 110 */ + int (*tcl_GetBooleanFromObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, int * boolPtr)); /* 111 */ + unsigned char * (*tcl_GetByteArrayFromObj) _ANSI_ARGS_((Tcl_Obj * objPtr, int * lengthPtr)); /* 112 */ + Tcl_Channel (*tcl_GetChannel) _ANSI_ARGS_((Tcl_Interp * interp, char * chanName, int * modePtr)); /* 113 */ + int (*tcl_GetChannelBufferSize) _ANSI_ARGS_((Tcl_Channel chan)); /* 114 */ + int (*tcl_GetChannelHandle) _ANSI_ARGS_((Tcl_Channel chan, int direction, ClientData * handlePtr)); /* 115 */ + ClientData (*tcl_GetChannelInstanceData) _ANSI_ARGS_((Tcl_Channel chan)); /* 116 */ + int (*tcl_GetChannelMode) _ANSI_ARGS_((Tcl_Channel chan)); /* 117 */ + char * (*tcl_GetChannelName) _ANSI_ARGS_((Tcl_Channel chan)); /* 118 */ + int (*tcl_GetChannelOption) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Channel chan, char * optionName, Tcl_DString * dsPtr)); /* 119 */ + Tcl_ChannelType * (*tcl_GetChannelType) _ANSI_ARGS_((Tcl_Channel chan)); /* 120 */ + int (*tcl_GetCommandInfo) _ANSI_ARGS_((Tcl_Interp * interp, char * cmdName, Tcl_CmdInfo * infoPtr)); /* 121 */ + char * (*tcl_GetCommandName) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Command command)); /* 122 */ + int (*tcl_GetDouble) _ANSI_ARGS_((Tcl_Interp * interp, char * string, double * doublePtr)); /* 123 */ + int (*tcl_GetDoubleFromObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, double * doublePtr)); /* 124 */ + int (*tcl_GetErrno) _ANSI_ARGS_((void)); /* 125 */ + char * (*tcl_GetHostName) _ANSI_ARGS_((void)); /* 126 */ + int (*tcl_GetIndexFromObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, char ** tablePtr, char * msg, int flags, int * indexPtr)); /* 127 */ + int (*tcl_GetInt) _ANSI_ARGS_((Tcl_Interp * interp, char * string, int * intPtr)); /* 128 */ + int (*tcl_GetInterpPath) _ANSI_ARGS_((Tcl_Interp * askInterp, Tcl_Interp * slaveInterp)); /* 129 */ + int (*tcl_GetIntFromObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, int * intPtr)); /* 130 */ + int (*tcl_GetLongFromObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, long * longPtr)); /* 131 */ + Tcl_Interp * (*tcl_GetMaster) _ANSI_ARGS_((Tcl_Interp * interp)); /* 132 */ + CONST char * (*tcl_GetNameOfExecutable) _ANSI_ARGS_((void)); /* 133 */ + Tcl_Obj * (*tcl_GetObjResult) _ANSI_ARGS_((Tcl_Interp * interp)); /* 134 */ + Tcl_ObjType * (*tcl_GetObjType) _ANSI_ARGS_((char * typeName)); /* 135 */ + Tcl_PathType (*tcl_GetPathType) _ANSI_ARGS_((char * path)); /* 136 */ + int (*tcl_Gets) _ANSI_ARGS_((Tcl_Channel chan, Tcl_DString * dsPtr)); /* 137 */ + int (*tcl_GetsObj) _ANSI_ARGS_((Tcl_Channel chan, Tcl_Obj * objPtr)); /* 138 */ + int (*tcl_GetServiceMode) _ANSI_ARGS_((void)); /* 139 */ + Tcl_Interp * (*tcl_GetSlave) _ANSI_ARGS_((Tcl_Interp * interp, char * slaveName)); /* 140 */ + Tcl_Channel (*tcl_GetStdChannel) _ANSI_ARGS_((int type)); /* 141 */ + char * (*tcl_GetStringFromObj) _ANSI_ARGS_((Tcl_Obj * objPtr, int * lengthPtr)); /* 142 */ + char * (*tcl_GetStringResult) _ANSI_ARGS_((Tcl_Interp * interp)); /* 143 */ + char * (*tcl_GetVar) _ANSI_ARGS_((Tcl_Interp * interp, char * varName, int flags)); /* 144 */ + char * (*tcl_GetVar2) _ANSI_ARGS_((Tcl_Interp * interp, char * part1, char * part2, int flags)); /* 145 */ + int (*tcl_GlobalEval) _ANSI_ARGS_((Tcl_Interp * interp, char * command)); /* 146 */ + int (*tcl_GlobalEvalObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr)); /* 147 */ + char * (*tcl_HashStats) _ANSI_ARGS_((Tcl_HashTable * tablePtr)); /* 148 */ + int (*tcl_HideCommand) _ANSI_ARGS_((Tcl_Interp * interp, char * cmdName, char * hiddenCmdToken)); /* 149 */ + int (*tcl_Init) _ANSI_ARGS_((Tcl_Interp * interp)); /* 150 */ + void (*tcl_InitHashTable) _ANSI_ARGS_((Tcl_HashTable * tablePtr, int keyType)); /* 151 */ + int (*tcl_InputBlocked) _ANSI_ARGS_((Tcl_Channel chan)); /* 152 */ + int (*tcl_InputBuffered) _ANSI_ARGS_((Tcl_Channel chan)); /* 153 */ + int (*tcl_InterpDeleted) _ANSI_ARGS_((Tcl_Interp * interp)); /* 154 */ + int (*tcl_IsSafe) _ANSI_ARGS_((Tcl_Interp * interp)); /* 155 */ + void (*tcl_InvalidateStringRep) _ANSI_ARGS_((Tcl_Obj * objPtr)); /* 156 */ + char * (*tcl_JoinPath) _ANSI_ARGS_((int argc, char ** argv, Tcl_DString * resultPtr)); /* 157 */ + int (*tcl_LinkVar) _ANSI_ARGS_((Tcl_Interp * interp, char * varName, char * addr, int type)); /* 158 */ + int (*tcl_ListObjAppendList) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * listPtr, Tcl_Obj * elemListPtr)); /* 159 */ + int (*tcl_ListObjAppendElement) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * listPtr, Tcl_Obj * objPtr)); /* 160 */ + int (*tcl_ListObjGetElements) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * listPtr, int * objcPtr, Tcl_Obj *** objvPtr)); /* 161 */ + int (*tcl_ListObjIndex) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * listPtr, int index, Tcl_Obj ** objPtrPtr)); /* 162 */ + int (*tcl_ListObjLength) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * listPtr, int * intPtr)); /* 163 */ + int (*tcl_ListObjReplace) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * listPtr, int first, int count, int objc, Tcl_Obj *CONST objv[])); /* 164 */ + Tcl_Channel (*tcl_MakeFileChannel) _ANSI_ARGS_((ClientData handle, int mode)); /* 165 */ + int (*tcl_MakeSafe) _ANSI_ARGS_((Tcl_Interp * interp)); /* 166 */ + Tcl_Channel (*tcl_MakeTcpClientChannel) _ANSI_ARGS_((ClientData tcpSocket)); /* 167 */ + char * (*tcl_Merge) _ANSI_ARGS_((int argc, char ** argv)); /* 168 */ + Tcl_Obj * (*tcl_NewBooleanObj) _ANSI_ARGS_((int boolValue)); /* 169 */ + Tcl_Obj * (*tcl_NewByteArrayObj) _ANSI_ARGS_((unsigned char * bytes, int length)); /* 170 */ + Tcl_Obj * (*tcl_NewDoubleObj) _ANSI_ARGS_((double doubleValue)); /* 171 */ + Tcl_Obj * (*tcl_NewIntObj) _ANSI_ARGS_((int intValue)); /* 172 */ + Tcl_Obj * (*tcl_NewListObj) _ANSI_ARGS_((int objc, Tcl_Obj *CONST objv[])); /* 173 */ + Tcl_Obj * (*tcl_NewLongObj) _ANSI_ARGS_((long longValue)); /* 174 */ + Tcl_Obj * (*tcl_NewObj) _ANSI_ARGS_((void)); /* 175 */ + Tcl_Obj * (*tcl_NewStringObj) _ANSI_ARGS_((char * bytes, int length)); /* 176 */ + Tcl_HashEntry * (*tcl_NextHashEntry) _ANSI_ARGS_((Tcl_HashSearch * searchPtr)); /* 177 */ + void (*tcl_NotifyChannel) _ANSI_ARGS_((Tcl_Channel channel, int mask)); /* 178 */ + Tcl_Obj * (*tcl_ObjGetVar2) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * part1Ptr, Tcl_Obj * part2Ptr, int flags)); /* 179 */ + Tcl_Obj * (*tcl_ObjSetVar2) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * part1Ptr, Tcl_Obj * part2Ptr, Tcl_Obj * newValuePtr, int flags)); /* 180 */ + Tcl_Channel (*tcl_OpenCommandChannel) _ANSI_ARGS_((Tcl_Interp * interp, int argc, char ** argv, int flags)); /* 181 */ + Tcl_Channel (*tcl_OpenFileChannel) _ANSI_ARGS_((Tcl_Interp * interp, char * fileName, char * modeString, int permissions)); /* 182 */ + Tcl_Channel (*tcl_OpenTcpClient) _ANSI_ARGS_((Tcl_Interp * interp, int port, char * address, char * myaddr, int myport, int async)); /* 183 */ + Tcl_Channel (*tcl_OpenTcpServer) _ANSI_ARGS_((Tcl_Interp * interp, int port, char * host, Tcl_TcpAcceptProc * acceptProc, ClientData callbackData)); /* 184 */ + void (*tcl_Panic) _ANSI_ARGS_(TCL_VARARGS(char *,format)); /* 185 */ + void (*tcl_PanicVA) _ANSI_ARGS_((char * format, va_list argList)); /* 186 */ + char * (*tcl_ParseVar) _ANSI_ARGS_((Tcl_Interp * interp, char * string, char ** termPtr)); /* 187 */ + char * (*tcl_PkgPresent) _ANSI_ARGS_((Tcl_Interp * interp, char * name, char * version, int exact)); /* 188 */ + char * (*tcl_PkgPresentEx) _ANSI_ARGS_((Tcl_Interp * interp, char * name, char * version, int exact, ClientData * clientDataPtr)); /* 189 */ + int (*tcl_PkgProvide) _ANSI_ARGS_((Tcl_Interp * interp, char * name, char * version)); /* 190 */ + int (*tcl_PkgProvideEx) _ANSI_ARGS_((Tcl_Interp * interp, char * name, char * version, ClientData clientData)); /* 191 */ + char * (*tcl_PkgRequire) _ANSI_ARGS_((Tcl_Interp * interp, char * name, char * version, int exact)); /* 192 */ + char * (*tcl_PkgRequireEx) _ANSI_ARGS_((Tcl_Interp * interp, char * name, char * version, int exact, ClientData * clientDataPtr)); /* 193 */ + char * (*tcl_PosixError) _ANSI_ARGS_((Tcl_Interp * interp)); /* 194 */ + void (*tcl_Preserve) _ANSI_ARGS_((ClientData data)); /* 195 */ + void (*tcl_PrintDouble) _ANSI_ARGS_((Tcl_Interp * interp, double value, char * dst)); /* 196 */ + int (*tcl_PutEnv) _ANSI_ARGS_((CONST char * string)); /* 197 */ + void (*tcl_QueueEvent) _ANSI_ARGS_((Tcl_Event * evPtr, Tcl_QueuePosition position)); /* 198 */ + int (*tcl_Read) _ANSI_ARGS_((Tcl_Channel chan, char * bufPtr, int toRead)); /* 199 */ + char * (*tcl_Realloc) _ANSI_ARGS_((char * ptr, unsigned int size)); /* 200 */ + void (*tcl_ReapDetachedProcs) _ANSI_ARGS_((void)); /* 201 */ + int (*tcl_RecordAndEval) _ANSI_ARGS_((Tcl_Interp * interp, char * cmd, int flags)); /* 202 */ + int (*tcl_RecordAndEvalObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * cmdPtr, int flags)); /* 203 */ + Tcl_RegExp (*tcl_RegExpCompile) _ANSI_ARGS_((Tcl_Interp * interp, char * string)); /* 204 */ + int (*tcl_RegExpExec) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_RegExp regexp, char * string, char * start)); /* 205 */ + int (*tcl_RegExpMatch) _ANSI_ARGS_((Tcl_Interp * interp, char * string, char * pattern)); /* 206 */ + void (*tcl_RegExpRange) _ANSI_ARGS_((Tcl_RegExp regexp, int index, char ** startPtr, char ** endPtr)); /* 207 */ + void (*tcl_RegisterChannel) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Channel chan)); /* 208 */ + void (*tcl_RegisterObjType) _ANSI_ARGS_((Tcl_ObjType * typePtr)); /* 209 */ + void (*tcl_Release) _ANSI_ARGS_((ClientData clientData)); /* 210 */ + void (*tcl_ResetResult) _ANSI_ARGS_((Tcl_Interp * interp)); /* 211 */ + int (*tcl_ScanCountedElement) _ANSI_ARGS_((CONST char * string, int length, int * flagPtr)); /* 212 */ + int (*tcl_ScanElement) _ANSI_ARGS_((CONST char * string, int * flagPtr)); /* 213 */ + int (*tcl_Seek) _ANSI_ARGS_((Tcl_Channel chan, int offset, int mode)); /* 214 */ + int (*tcl_ServiceAll) _ANSI_ARGS_((void)); /* 215 */ + int (*tcl_ServiceEvent) _ANSI_ARGS_((int flags)); /* 216 */ + void (*tcl_SetAssocData) _ANSI_ARGS_((Tcl_Interp * interp, char * name, Tcl_InterpDeleteProc * proc, ClientData clientData)); /* 217 */ + void (*tcl_SetBooleanObj) _ANSI_ARGS_((Tcl_Obj * objPtr, int boolValue)); /* 218 */ + unsigned char * (*tcl_SetByteArrayLength) _ANSI_ARGS_((Tcl_Obj * objPtr, int length)); /* 219 */ + void (*tcl_SetByteArrayObj) _ANSI_ARGS_((Tcl_Obj * objPtr, unsigned char * bytes, int length)); /* 220 */ + void (*tcl_SetChannelBufferSize) _ANSI_ARGS_((Tcl_Channel chan, int sz)); /* 221 */ + int (*tcl_SetChannelOption) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Channel chan, char * optionName, char * newValue)); /* 222 */ + int (*tcl_SetCommandInfo) _ANSI_ARGS_((Tcl_Interp * interp, char * cmdName, Tcl_CmdInfo * infoPtr)); /* 223 */ + void (*tcl_SetDoubleObj) _ANSI_ARGS_((Tcl_Obj * objPtr, double doubleValue)); /* 224 */ + void (*tcl_SetErrno) _ANSI_ARGS_((int err)); /* 225 */ + void (*tcl_SetErrorCode) _ANSI_ARGS_(TCL_VARARGS(Tcl_Interp *,interp)); /* 226 */ + void (*tcl_SetErrorCodeVA) _ANSI_ARGS_((Tcl_Interp * interp, va_list argList)); /* 227 */ + void (*tcl_SetIntObj) _ANSI_ARGS_((Tcl_Obj * objPtr, int intValue)); /* 228 */ + void (*tcl_SetListObj) _ANSI_ARGS_((Tcl_Obj * objPtr, int objc, Tcl_Obj *CONST objv[])); /* 229 */ + void (*tcl_SetLongObj) _ANSI_ARGS_((Tcl_Obj * objPtr, long longValue)); /* 230 */ + void (*tcl_SetMaxBlockTime) _ANSI_ARGS_((Tcl_Time * timePtr)); /* 231 */ + void (*tcl_SetObjErrorCode) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * errorObjPtr)); /* 232 */ + void (*tcl_SetObjLength) _ANSI_ARGS_((Tcl_Obj * objPtr, int length)); /* 233 */ + void (*tcl_SetObjResult) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * resultObjPtr)); /* 234 */ + void (*tcl_SetPanicProc) _ANSI_ARGS_((Tcl_PanicProc * panicProc)); /* 235 */ + int (*tcl_SetRecursionLimit) _ANSI_ARGS_((Tcl_Interp * interp, int depth)); /* 236 */ + void (*tcl_SetResult) _ANSI_ARGS_((Tcl_Interp * interp, char * string, Tcl_FreeProc * freeProc)); /* 237 */ + int (*tcl_SetServiceMode) _ANSI_ARGS_((int mode)); /* 238 */ + void (*tcl_SetStdChannel) _ANSI_ARGS_((Tcl_Channel channel, int type)); /* 239 */ + void (*tcl_SetStringObj) _ANSI_ARGS_((Tcl_Obj * objPtr, char * bytes, int length)); /* 240 */ + void (*tcl_SetTimer) _ANSI_ARGS_((Tcl_Time * timePtr)); /* 241 */ + char * (*tcl_SetVar) _ANSI_ARGS_((Tcl_Interp * interp, char * varName, char * newValue, int flags)); /* 242 */ + char * (*tcl_SetVar2) _ANSI_ARGS_((Tcl_Interp * interp, char * part1, char * part2, char * newValue, int flags)); /* 243 */ + char * (*tcl_SignalId) _ANSI_ARGS_((int sig)); /* 244 */ + char * (*tcl_SignalMsg) _ANSI_ARGS_((int sig)); /* 245 */ + void (*tcl_Sleep) _ANSI_ARGS_((int ms)); /* 246 */ + void (*tcl_SourceRCFile) _ANSI_ARGS_((Tcl_Interp * interp)); /* 247 */ + int (*tcl_SplitList) _ANSI_ARGS_((Tcl_Interp * interp, char * list, int * argcPtr, char *** argvPtr)); /* 248 */ + void (*tcl_SplitPath) _ANSI_ARGS_((char * path, int * argcPtr, char *** argvPtr)); /* 249 */ + void (*tcl_StaticPackage) _ANSI_ARGS_((Tcl_Interp * interp, char * pkgName, Tcl_PackageInitProc * initProc, Tcl_PackageInitProc * safeInitProc)); /* 250 */ + int (*tcl_StringMatch) _ANSI_ARGS_((char * string, char * pattern)); /* 251 */ + int (*tcl_Tell) _ANSI_ARGS_((Tcl_Channel chan)); /* 252 */ + int (*tcl_TraceVar) _ANSI_ARGS_((Tcl_Interp * interp, char * varName, int flags, Tcl_VarTraceProc * proc, ClientData clientData)); /* 253 */ + int (*tcl_TraceVar2) _ANSI_ARGS_((Tcl_Interp * interp, char * part1, char * part2, int flags, Tcl_VarTraceProc * proc, ClientData clientData)); /* 254 */ + char * (*tcl_TranslateFileName) _ANSI_ARGS_((Tcl_Interp * interp, char * name, Tcl_DString * bufferPtr)); /* 255 */ + int (*tcl_Ungets) _ANSI_ARGS_((Tcl_Channel chan, char * str, int len, int atHead)); /* 256 */ + void (*tcl_UnlinkVar) _ANSI_ARGS_((Tcl_Interp * interp, char * varName)); /* 257 */ + int (*tcl_UnregisterChannel) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Channel chan)); /* 258 */ + int (*tcl_UnsetVar) _ANSI_ARGS_((Tcl_Interp * interp, char * varName, int flags)); /* 259 */ + int (*tcl_UnsetVar2) _ANSI_ARGS_((Tcl_Interp * interp, char * part1, char * part2, int flags)); /* 260 */ + void (*tcl_UntraceVar) _ANSI_ARGS_((Tcl_Interp * interp, char * varName, int flags, Tcl_VarTraceProc * proc, ClientData clientData)); /* 261 */ + void (*tcl_UntraceVar2) _ANSI_ARGS_((Tcl_Interp * interp, char * part1, char * part2, int flags, Tcl_VarTraceProc * proc, ClientData clientData)); /* 262 */ + void (*tcl_UpdateLinkedVar) _ANSI_ARGS_((Tcl_Interp * interp, char * varName)); /* 263 */ + int (*tcl_UpVar) _ANSI_ARGS_((Tcl_Interp * interp, char * frameName, char * varName, char * localName, int flags)); /* 264 */ + int (*tcl_UpVar2) _ANSI_ARGS_((Tcl_Interp * interp, char * frameName, char * part1, char * part2, char * localName, int flags)); /* 265 */ + void (*tcl_ValidateAllMemory) _ANSI_ARGS_((char * file, int line)); /* 266 */ + int (*tcl_VarEval) _ANSI_ARGS_(TCL_VARARGS(Tcl_Interp *,interp)); /* 267 */ + int (*tcl_VarEvalVA) _ANSI_ARGS_((Tcl_Interp * interp, va_list argList)); /* 268 */ + ClientData (*tcl_VarTraceInfo) _ANSI_ARGS_((Tcl_Interp * interp, char * varName, int flags, Tcl_VarTraceProc * procPtr, ClientData prevClientData)); /* 269 */ + ClientData (*tcl_VarTraceInfo2) _ANSI_ARGS_((Tcl_Interp * interp, char * part1, char * part2, int flags, Tcl_VarTraceProc * procPtr, ClientData prevClientData)); /* 270 */ + int (*tcl_WaitForEvent) _ANSI_ARGS_((Tcl_Time * timePtr)); /* 271 */ + Tcl_Pid (*tcl_WaitPid) _ANSI_ARGS_((Tcl_Pid pid, int * statPtr, int options)); /* 272 */ + int (*tcl_Write) _ANSI_ARGS_((Tcl_Channel chan, char * s, int slen)); /* 273 */ + void (*tcl_WrongNumArgs) _ANSI_ARGS_((Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[], char * message)); /* 274 */ +} TclStubs; + +extern TclStubs *tclStubsPtr; + +#if defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS) + +/* + * Inline function declarations: + */ + +#ifndef Tcl_AddErrorInfo +#define Tcl_AddErrorInfo(interp, message) \ + (tclStubsPtr->tcl_AddErrorInfo)(interp, message) /* 0 */ +#endif +#ifndef Tcl_AddObjErrorInfo +#define Tcl_AddObjErrorInfo(interp, message, length) \ + (tclStubsPtr->tcl_AddObjErrorInfo)(interp, message, length) /* 1 */ +#endif +#ifndef Tcl_Alloc +#define Tcl_Alloc(size) \ + (tclStubsPtr->tcl_Alloc)(size) /* 2 */ +#endif +#ifndef Tcl_AllowExceptions +#define Tcl_AllowExceptions(interp) \ + (tclStubsPtr->tcl_AllowExceptions)(interp) /* 3 */ +#endif +#ifndef Tcl_AppendAllObjTypes +#define Tcl_AppendAllObjTypes(interp, objPtr) \ + (tclStubsPtr->tcl_AppendAllObjTypes)(interp, objPtr) /* 4 */ +#endif +#ifndef Tcl_AppendElement +#define Tcl_AppendElement(interp, string) \ + (tclStubsPtr->tcl_AppendElement)(interp, string) /* 5 */ +#endif +#ifndef Tcl_AppendResult +#define Tcl_AppendResult \ + (tclStubsPtr->tcl_AppendResult) /* 6 */ +#endif +#ifndef Tcl_AppendResultVA +#define Tcl_AppendResultVA(interp, argList) \ + (tclStubsPtr->tcl_AppendResultVA)(interp, argList) /* 7 */ +#endif +#ifndef Tcl_AppendToObj +#define Tcl_AppendToObj(objPtr, bytes, length) \ + (tclStubsPtr->tcl_AppendToObj)(objPtr, bytes, length) /* 8 */ +#endif +#ifndef Tcl_AppendStringsToObj +#define Tcl_AppendStringsToObj \ + (tclStubsPtr->tcl_AppendStringsToObj) /* 9 */ +#endif +#ifndef Tcl_AppendStringsToObjVA +#define Tcl_AppendStringsToObjVA(objPtr, argList) \ + (tclStubsPtr->tcl_AppendStringsToObjVA)(objPtr, argList) /* 10 */ +#endif +#ifndef Tcl_AsyncCreate +#define Tcl_AsyncCreate(proc, clientData) \ + (tclStubsPtr->tcl_AsyncCreate)(proc, clientData) /* 11 */ +#endif +#ifndef Tcl_AsyncDelete +#define Tcl_AsyncDelete(async) \ + (tclStubsPtr->tcl_AsyncDelete)(async) /* 12 */ +#endif +#ifndef Tcl_AsyncInvoke +#define Tcl_AsyncInvoke(interp, code) \ + (tclStubsPtr->tcl_AsyncInvoke)(interp, code) /* 13 */ +#endif +#ifndef Tcl_AsyncMark +#define Tcl_AsyncMark(async) \ + (tclStubsPtr->tcl_AsyncMark)(async) /* 14 */ +#endif +#ifndef Tcl_AsyncReady +#define Tcl_AsyncReady() \ + (tclStubsPtr->tcl_AsyncReady)() /* 15 */ +#endif +#ifndef Tcl_BackgroundError +#define Tcl_BackgroundError(interp) \ + (tclStubsPtr->tcl_BackgroundError)(interp) /* 16 */ +#endif +#ifndef Tcl_Backslash +#define Tcl_Backslash(src, readPtr) \ + (tclStubsPtr->tcl_Backslash)(src, readPtr) /* 17 */ +#endif +#ifndef Tcl_BadChannelOption +#define Tcl_BadChannelOption(interp, optionName, optionList) \ + (tclStubsPtr->tcl_BadChannelOption)(interp, optionName, optionList) /* 18 */ +#endif +#ifndef Tcl_CallWhenDeleted +#define Tcl_CallWhenDeleted(interp, proc, clientData) \ + (tclStubsPtr->tcl_CallWhenDeleted)(interp, proc, clientData) /* 19 */ +#endif +#ifndef Tcl_CancelIdleCall +#define Tcl_CancelIdleCall(idleProc, clientData) \ + (tclStubsPtr->tcl_CancelIdleCall)(idleProc, clientData) /* 20 */ +#endif +#ifndef Tcl_Close +#define Tcl_Close(interp, chan) \ + (tclStubsPtr->tcl_Close)(interp, chan) /* 21 */ +#endif +#ifndef Tcl_CommandComplete +#define Tcl_CommandComplete(cmd) \ + (tclStubsPtr->tcl_CommandComplete)(cmd) /* 22 */ +#endif +#ifndef Tcl_Concat +#define Tcl_Concat(argc, argv) \ + (tclStubsPtr->tcl_Concat)(argc, argv) /* 23 */ +#endif +#ifndef Tcl_ConcatObj +#define Tcl_ConcatObj(objc, objv) \ + (tclStubsPtr->tcl_ConcatObj)(objc, objv) /* 24 */ +#endif +#ifndef Tcl_ConvertCountedElement +#define Tcl_ConvertCountedElement(src, length, dst, flags) \ + (tclStubsPtr->tcl_ConvertCountedElement)(src, length, dst, flags) /* 25 */ +#endif +#ifndef Tcl_ConvertElement +#define Tcl_ConvertElement(src, dst, flags) \ + (tclStubsPtr->tcl_ConvertElement)(src, dst, flags) /* 26 */ +#endif +#ifndef Tcl_ConvertToType +#define Tcl_ConvertToType(interp, objPtr, typePtr) \ + (tclStubsPtr->tcl_ConvertToType)(interp, objPtr, typePtr) /* 27 */ +#endif +#ifndef Tcl_CreateAlias +#define Tcl_CreateAlias(slave, slaveCmd, target, targetCmd, argc, argv) \ + (tclStubsPtr->tcl_CreateAlias)(slave, slaveCmd, target, targetCmd, argc, argv) /* 28 */ +#endif +#ifndef Tcl_CreateAliasObj +#define Tcl_CreateAliasObj(slave, slaveCmd, target, targetCmd, objc, objv) \ + (tclStubsPtr->tcl_CreateAliasObj)(slave, slaveCmd, target, targetCmd, objc, objv) /* 29 */ +#endif +#ifndef Tcl_CreateChannel +#define Tcl_CreateChannel(typePtr, chanName, instanceData, mask) \ + (tclStubsPtr->tcl_CreateChannel)(typePtr, chanName, instanceData, mask) /* 30 */ +#endif +#ifndef Tcl_CreateChannelHandler +#define Tcl_CreateChannelHandler(chan, mask, proc, clientData) \ + (tclStubsPtr->tcl_CreateChannelHandler)(chan, mask, proc, clientData) /* 31 */ +#endif +#ifndef Tcl_CreateCloseHandler +#define Tcl_CreateCloseHandler(chan, proc, clientData) \ + (tclStubsPtr->tcl_CreateCloseHandler)(chan, proc, clientData) /* 32 */ +#endif +#ifndef Tcl_CreateCommand +#define Tcl_CreateCommand(interp, cmdName, proc, clientData, deleteProc) \ + (tclStubsPtr->tcl_CreateCommand)(interp, cmdName, proc, clientData, deleteProc) /* 33 */ +#endif +#ifndef Tcl_CreateEventSource +#define Tcl_CreateEventSource(setupProc, checkProc, clientData) \ + (tclStubsPtr->tcl_CreateEventSource)(setupProc, checkProc, clientData) /* 34 */ +#endif +#ifndef Tcl_CreateExitHandler +#define Tcl_CreateExitHandler(proc, clientData) \ + (tclStubsPtr->tcl_CreateExitHandler)(proc, clientData) /* 35 */ +#endif +#ifndef Tcl_CreateInterp +#define Tcl_CreateInterp() \ + (tclStubsPtr->tcl_CreateInterp)() /* 36 */ +#endif +#ifndef Tcl_CreateMathFunc +#define Tcl_CreateMathFunc(interp, name, numArgs, argTypes, proc, clientData) \ + (tclStubsPtr->tcl_CreateMathFunc)(interp, name, numArgs, argTypes, proc, clientData) /* 37 */ +#endif +#ifndef Tcl_CreateObjCommand +#define Tcl_CreateObjCommand(interp, cmdName, proc, clientData, deleteProc) \ + (tclStubsPtr->tcl_CreateObjCommand)(interp, cmdName, proc, clientData, deleteProc) /* 38 */ +#endif +#ifndef Tcl_CreateSlave +#define Tcl_CreateSlave(interp, slaveName, isSafe) \ + (tclStubsPtr->tcl_CreateSlave)(interp, slaveName, isSafe) /* 39 */ +#endif +#ifndef Tcl_CreateTimerHandler +#define Tcl_CreateTimerHandler(milliseconds, proc, clientData) \ + (tclStubsPtr->tcl_CreateTimerHandler)(milliseconds, proc, clientData) /* 40 */ +#endif +#ifndef Tcl_CreateTrace +#define Tcl_CreateTrace(interp, level, proc, clientData) \ + (tclStubsPtr->tcl_CreateTrace)(interp, level, proc, clientData) /* 41 */ +#endif +#ifndef Tcl_DbCkalloc +#define Tcl_DbCkalloc(size, file, line) \ + (tclStubsPtr->tcl_DbCkalloc)(size, file, line) /* 42 */ +#endif +#ifndef Tcl_DbCkfree +#define Tcl_DbCkfree(ptr, file, line) \ + (tclStubsPtr->tcl_DbCkfree)(ptr, file, line) /* 43 */ +#endif +#ifndef Tcl_DbCkrealloc +#define Tcl_DbCkrealloc(ptr, size, file, line) \ + (tclStubsPtr->tcl_DbCkrealloc)(ptr, size, file, line) /* 44 */ +#endif +#ifndef Tcl_DbDecrRefCount +#define Tcl_DbDecrRefCount(objPtr, file, line) \ + (tclStubsPtr->tcl_DbDecrRefCount)(objPtr, file, line) /* 45 */ +#endif +#ifndef Tcl_DbIncrRefCount +#define Tcl_DbIncrRefCount(objPtr, file, line) \ + (tclStubsPtr->tcl_DbIncrRefCount)(objPtr, file, line) /* 46 */ +#endif +#ifndef Tcl_DbIsShared +#define Tcl_DbIsShared(objPtr, file, line) \ + (tclStubsPtr->tcl_DbIsShared)(objPtr, file, line) /* 47 */ +#endif +#ifndef Tcl_DbNewBooleanObj +#define Tcl_DbNewBooleanObj(boolValue, file, line) \ + (tclStubsPtr->tcl_DbNewBooleanObj)(boolValue, file, line) /* 48 */ +#endif +#ifndef Tcl_DbNewByteArrayObj +#define Tcl_DbNewByteArrayObj(bytes, length, file, line) \ + (tclStubsPtr->tcl_DbNewByteArrayObj)(bytes, length, file, line) /* 49 */ +#endif +#ifndef Tcl_DbNewDoubleObj +#define Tcl_DbNewDoubleObj(doubleValue, file, line) \ + (tclStubsPtr->tcl_DbNewDoubleObj)(doubleValue, file, line) /* 50 */ +#endif +#ifndef Tcl_DbNewListObj +#define Tcl_DbNewListObj(objc, objv, file, line) \ + (tclStubsPtr->tcl_DbNewListObj)(objc, objv, file, line) /* 51 */ +#endif +#ifndef Tcl_DbNewLongObj +#define Tcl_DbNewLongObj(longValue, file, line) \ + (tclStubsPtr->tcl_DbNewLongObj)(longValue, file, line) /* 52 */ +#endif +#ifndef Tcl_DbNewObj +#define Tcl_DbNewObj(file, line) \ + (tclStubsPtr->tcl_DbNewObj)(file, line) /* 53 */ +#endif +#ifndef Tcl_DbNewStringObj +#define Tcl_DbNewStringObj(bytes, length, file, line) \ + (tclStubsPtr->tcl_DbNewStringObj)(bytes, length, file, line) /* 54 */ +#endif +#ifndef Tcl_DeleteAssocData +#define Tcl_DeleteAssocData(interp, name) \ + (tclStubsPtr->tcl_DeleteAssocData)(interp, name) /* 55 */ +#endif +#ifndef Tcl_DeleteCommand +#define Tcl_DeleteCommand(interp, cmdName) \ + (tclStubsPtr->tcl_DeleteCommand)(interp, cmdName) /* 56 */ +#endif +#ifndef Tcl_DeleteCommandFromToken +#define Tcl_DeleteCommandFromToken(interp, command) \ + (tclStubsPtr->tcl_DeleteCommandFromToken)(interp, command) /* 57 */ +#endif +#ifndef Tcl_DeleteChannelHandler +#define Tcl_DeleteChannelHandler(chan, proc, clientData) \ + (tclStubsPtr->tcl_DeleteChannelHandler)(chan, proc, clientData) /* 58 */ +#endif +#ifndef Tcl_DeleteCloseHandler +#define Tcl_DeleteCloseHandler(chan, proc, clientData) \ + (tclStubsPtr->tcl_DeleteCloseHandler)(chan, proc, clientData) /* 59 */ +#endif +#ifndef Tcl_DeleteEvents +#define Tcl_DeleteEvents(proc, clientData) \ + (tclStubsPtr->tcl_DeleteEvents)(proc, clientData) /* 60 */ +#endif +#ifndef Tcl_DeleteEventSource +#define Tcl_DeleteEventSource(setupProc, checkProc, clientData) \ + (tclStubsPtr->tcl_DeleteEventSource)(setupProc, checkProc, clientData) /* 61 */ +#endif +#ifndef Tcl_DeleteExitHandler +#define Tcl_DeleteExitHandler(proc, clientData) \ + (tclStubsPtr->tcl_DeleteExitHandler)(proc, clientData) /* 62 */ +#endif +#ifndef Tcl_DeleteHashEntry +#define Tcl_DeleteHashEntry(entryPtr) \ + (tclStubsPtr->tcl_DeleteHashEntry)(entryPtr) /* 63 */ +#endif +#ifndef Tcl_DeleteHashTable +#define Tcl_DeleteHashTable(tablePtr) \ + (tclStubsPtr->tcl_DeleteHashTable)(tablePtr) /* 64 */ +#endif +#ifndef Tcl_DeleteInterp +#define Tcl_DeleteInterp(interp) \ + (tclStubsPtr->tcl_DeleteInterp)(interp) /* 65 */ +#endif +#ifndef Tcl_DeleteTimerHandler +#define Tcl_DeleteTimerHandler(token) \ + (tclStubsPtr->tcl_DeleteTimerHandler)(token) /* 66 */ +#endif +#ifndef Tcl_DeleteTrace +#define Tcl_DeleteTrace(interp, trace) \ + (tclStubsPtr->tcl_DeleteTrace)(interp, trace) /* 67 */ +#endif +#ifndef Tcl_DetachPids +#define Tcl_DetachPids(numPids, pidPtr) \ + (tclStubsPtr->tcl_DetachPids)(numPids, pidPtr) /* 68 */ +#endif +#ifndef Tcl_DontCallWhenDeleted +#define Tcl_DontCallWhenDeleted(interp, proc, clientData) \ + (tclStubsPtr->tcl_DontCallWhenDeleted)(interp, proc, clientData) /* 69 */ +#endif +#ifndef Tcl_DoOneEvent +#define Tcl_DoOneEvent(flags) \ + (tclStubsPtr->tcl_DoOneEvent)(flags) /* 70 */ +#endif +#ifndef Tcl_DoWhenIdle +#define Tcl_DoWhenIdle(proc, clientData) \ + (tclStubsPtr->tcl_DoWhenIdle)(proc, clientData) /* 71 */ +#endif +#ifndef Tcl_DStringAppend +#define Tcl_DStringAppend(dsPtr, string, length) \ + (tclStubsPtr->tcl_DStringAppend)(dsPtr, string, length) /* 72 */ +#endif +#ifndef Tcl_DStringAppendElement +#define Tcl_DStringAppendElement(dsPtr, string) \ + (tclStubsPtr->tcl_DStringAppendElement)(dsPtr, string) /* 73 */ +#endif +#ifndef Tcl_DStringEndSublist +#define Tcl_DStringEndSublist(dsPtr) \ + (tclStubsPtr->tcl_DStringEndSublist)(dsPtr) /* 74 */ +#endif +#ifndef Tcl_DStringFree +#define Tcl_DStringFree(dsPtr) \ + (tclStubsPtr->tcl_DStringFree)(dsPtr) /* 75 */ +#endif +#ifndef Tcl_DStringGetResult +#define Tcl_DStringGetResult(interp, dsPtr) \ + (tclStubsPtr->tcl_DStringGetResult)(interp, dsPtr) /* 76 */ +#endif +#ifndef Tcl_DStringInit +#define Tcl_DStringInit(dsPtr) \ + (tclStubsPtr->tcl_DStringInit)(dsPtr) /* 77 */ +#endif +#ifndef Tcl_DStringResult +#define Tcl_DStringResult(interp, dsPtr) \ + (tclStubsPtr->tcl_DStringResult)(interp, dsPtr) /* 78 */ +#endif +#ifndef Tcl_DStringSetLength +#define Tcl_DStringSetLength(dsPtr, length) \ + (tclStubsPtr->tcl_DStringSetLength)(dsPtr, length) /* 79 */ +#endif +#ifndef Tcl_DStringStartSublist +#define Tcl_DStringStartSublist(dsPtr) \ + (tclStubsPtr->tcl_DStringStartSublist)(dsPtr) /* 80 */ +#endif +#ifndef Tcl_DumpActiveMemory +#define Tcl_DumpActiveMemory(fileName) \ + (tclStubsPtr->tcl_DumpActiveMemory)(fileName) /* 81 */ +#endif +#ifndef Tcl_DuplicateObj +#define Tcl_DuplicateObj(objPtr) \ + (tclStubsPtr->tcl_DuplicateObj)(objPtr) /* 82 */ +#endif +#ifndef Tcl_Eof +#define Tcl_Eof(chan) \ + (tclStubsPtr->tcl_Eof)(chan) /* 83 */ +#endif +#ifndef Tcl_ErrnoId +#define Tcl_ErrnoId() \ + (tclStubsPtr->tcl_ErrnoId)() /* 84 */ +#endif +#ifndef Tcl_ErrnoMsg +#define Tcl_ErrnoMsg(err) \ + (tclStubsPtr->tcl_ErrnoMsg)(err) /* 85 */ +#endif +#ifndef Tcl_Eval +#define Tcl_Eval(interp, string) \ + (tclStubsPtr->tcl_Eval)(interp, string) /* 86 */ +#endif +#ifndef Tcl_EvalFile +#define Tcl_EvalFile(interp, fileName) \ + (tclStubsPtr->tcl_EvalFile)(interp, fileName) /* 87 */ +#endif +#ifndef Tcl_EventuallyFree +#define Tcl_EventuallyFree(clientData, freeProc) \ + (tclStubsPtr->tcl_EventuallyFree)(clientData, freeProc) /* 88 */ +#endif +#ifndef Tcl_EvalObj +#define Tcl_EvalObj(interp, objPtr) \ + (tclStubsPtr->tcl_EvalObj)(interp, objPtr) /* 89 */ +#endif +#ifndef Tcl_Exit +#define Tcl_Exit(status) \ + (tclStubsPtr->tcl_Exit)(status) /* 90 */ +#endif +#ifndef Tcl_ExposeCommand +#define Tcl_ExposeCommand(interp, hiddenCmdToken, cmdName) \ + (tclStubsPtr->tcl_ExposeCommand)(interp, hiddenCmdToken, cmdName) /* 91 */ +#endif +#ifndef Tcl_ExprBoolean +#define Tcl_ExprBoolean(interp, string, ptr) \ + (tclStubsPtr->tcl_ExprBoolean)(interp, string, ptr) /* 92 */ +#endif +#ifndef Tcl_ExprBooleanObj +#define Tcl_ExprBooleanObj(interp, objPtr, ptr) \ + (tclStubsPtr->tcl_ExprBooleanObj)(interp, objPtr, ptr) /* 93 */ +#endif +#ifndef Tcl_ExprDouble +#define Tcl_ExprDouble(interp, string, ptr) \ + (tclStubsPtr->tcl_ExprDouble)(interp, string, ptr) /* 94 */ +#endif +#ifndef Tcl_ExprDoubleObj +#define Tcl_ExprDoubleObj(interp, objPtr, ptr) \ + (tclStubsPtr->tcl_ExprDoubleObj)(interp, objPtr, ptr) /* 95 */ +#endif +#ifndef Tcl_ExprLong +#define Tcl_ExprLong(interp, string, ptr) \ + (tclStubsPtr->tcl_ExprLong)(interp, string, ptr) /* 96 */ +#endif +#ifndef Tcl_ExprLongObj +#define Tcl_ExprLongObj(interp, objPtr, ptr) \ + (tclStubsPtr->tcl_ExprLongObj)(interp, objPtr, ptr) /* 97 */ +#endif +#ifndef Tcl_ExprObj +#define Tcl_ExprObj(interp, objPtr, resultPtrPtr) \ + (tclStubsPtr->tcl_ExprObj)(interp, objPtr, resultPtrPtr) /* 98 */ +#endif +#ifndef Tcl_ExprString +#define Tcl_ExprString(interp, string) \ + (tclStubsPtr->tcl_ExprString)(interp, string) /* 99 */ +#endif +#ifndef Tcl_Finalize +#define Tcl_Finalize() \ + (tclStubsPtr->tcl_Finalize)() /* 100 */ +#endif +#ifndef Tcl_FindExecutable +#define Tcl_FindExecutable(argv0) \ + (tclStubsPtr->tcl_FindExecutable)(argv0) /* 101 */ +#endif +#ifndef Tcl_FirstHashEntry +#define Tcl_FirstHashEntry(tablePtr, searchPtr) \ + (tclStubsPtr->tcl_FirstHashEntry)(tablePtr, searchPtr) /* 102 */ +#endif +#ifndef Tcl_Flush +#define Tcl_Flush(chan) \ + (tclStubsPtr->tcl_Flush)(chan) /* 103 */ +#endif +#ifndef Tcl_Free +#define Tcl_Free(ptr) \ + (tclStubsPtr->tcl_Free)(ptr) /* 104 */ +#endif +#ifndef TclFreeObj +#define TclFreeObj(objPtr) \ + (tclStubsPtr->tclFreeObj)(objPtr) /* 105 */ +#endif +#ifndef Tcl_FreeResult +#define Tcl_FreeResult(interp) \ + (tclStubsPtr->tcl_FreeResult)(interp) /* 106 */ +#endif +#ifndef Tcl_GetAlias +#define Tcl_GetAlias(interp, slaveCmd, targetInterpPtr, targetCmdPtr, argcPtr, argvPtr) \ + (tclStubsPtr->tcl_GetAlias)(interp, slaveCmd, targetInterpPtr, targetCmdPtr, argcPtr, argvPtr) /* 107 */ +#endif +#ifndef Tcl_GetAliasObj +#define Tcl_GetAliasObj(interp, slaveCmd, targetInterpPtr, targetCmdPtr, objcPtr, objv) \ + (tclStubsPtr->tcl_GetAliasObj)(interp, slaveCmd, targetInterpPtr, targetCmdPtr, objcPtr, objv) /* 108 */ +#endif +#ifndef Tcl_GetAssocData +#define Tcl_GetAssocData(interp, name, procPtr) \ + (tclStubsPtr->tcl_GetAssocData)(interp, name, procPtr) /* 109 */ +#endif +#ifndef Tcl_GetBoolean +#define Tcl_GetBoolean(interp, string, boolPtr) \ + (tclStubsPtr->tcl_GetBoolean)(interp, string, boolPtr) /* 110 */ +#endif +#ifndef Tcl_GetBooleanFromObj +#define Tcl_GetBooleanFromObj(interp, objPtr, boolPtr) \ + (tclStubsPtr->tcl_GetBooleanFromObj)(interp, objPtr, boolPtr) /* 111 */ +#endif +#ifndef Tcl_GetByteArrayFromObj +#define Tcl_GetByteArrayFromObj(objPtr, lengthPtr) \ + (tclStubsPtr->tcl_GetByteArrayFromObj)(objPtr, lengthPtr) /* 112 */ +#endif +#ifndef Tcl_GetChannel +#define Tcl_GetChannel(interp, chanName, modePtr) \ + (tclStubsPtr->tcl_GetChannel)(interp, chanName, modePtr) /* 113 */ +#endif +#ifndef Tcl_GetChannelBufferSize +#define Tcl_GetChannelBufferSize(chan) \ + (tclStubsPtr->tcl_GetChannelBufferSize)(chan) /* 114 */ +#endif +#ifndef Tcl_GetChannelHandle +#define Tcl_GetChannelHandle(chan, direction, handlePtr) \ + (tclStubsPtr->tcl_GetChannelHandle)(chan, direction, handlePtr) /* 115 */ +#endif +#ifndef Tcl_GetChannelInstanceData +#define Tcl_GetChannelInstanceData(chan) \ + (tclStubsPtr->tcl_GetChannelInstanceData)(chan) /* 116 */ +#endif +#ifndef Tcl_GetChannelMode +#define Tcl_GetChannelMode(chan) \ + (tclStubsPtr->tcl_GetChannelMode)(chan) /* 117 */ +#endif +#ifndef Tcl_GetChannelName +#define Tcl_GetChannelName(chan) \ + (tclStubsPtr->tcl_GetChannelName)(chan) /* 118 */ +#endif +#ifndef Tcl_GetChannelOption +#define Tcl_GetChannelOption(interp, chan, optionName, dsPtr) \ + (tclStubsPtr->tcl_GetChannelOption)(interp, chan, optionName, dsPtr) /* 119 */ +#endif +#ifndef Tcl_GetChannelType +#define Tcl_GetChannelType(chan) \ + (tclStubsPtr->tcl_GetChannelType)(chan) /* 120 */ +#endif +#ifndef Tcl_GetCommandInfo +#define Tcl_GetCommandInfo(interp, cmdName, infoPtr) \ + (tclStubsPtr->tcl_GetCommandInfo)(interp, cmdName, infoPtr) /* 121 */ +#endif +#ifndef Tcl_GetCommandName +#define Tcl_GetCommandName(interp, command) \ + (tclStubsPtr->tcl_GetCommandName)(interp, command) /* 122 */ +#endif +#ifndef Tcl_GetDouble +#define Tcl_GetDouble(interp, string, doublePtr) \ + (tclStubsPtr->tcl_GetDouble)(interp, string, doublePtr) /* 123 */ +#endif +#ifndef Tcl_GetDoubleFromObj +#define Tcl_GetDoubleFromObj(interp, objPtr, doublePtr) \ + (tclStubsPtr->tcl_GetDoubleFromObj)(interp, objPtr, doublePtr) /* 124 */ +#endif +#ifndef Tcl_GetErrno +#define Tcl_GetErrno() \ + (tclStubsPtr->tcl_GetErrno)() /* 125 */ +#endif +#ifndef Tcl_GetHostName +#define Tcl_GetHostName() \ + (tclStubsPtr->tcl_GetHostName)() /* 126 */ +#endif +#ifndef Tcl_GetIndexFromObj +#define Tcl_GetIndexFromObj(interp, objPtr, tablePtr, msg, flags, indexPtr) \ + (tclStubsPtr->tcl_GetIndexFromObj)(interp, objPtr, tablePtr, msg, flags, indexPtr) /* 127 */ +#endif +#ifndef Tcl_GetInt +#define Tcl_GetInt(interp, string, intPtr) \ + (tclStubsPtr->tcl_GetInt)(interp, string, intPtr) /* 128 */ +#endif +#ifndef Tcl_GetInterpPath +#define Tcl_GetInterpPath(askInterp, slaveInterp) \ + (tclStubsPtr->tcl_GetInterpPath)(askInterp, slaveInterp) /* 129 */ +#endif +#ifndef Tcl_GetIntFromObj +#define Tcl_GetIntFromObj(interp, objPtr, intPtr) \ + (tclStubsPtr->tcl_GetIntFromObj)(interp, objPtr, intPtr) /* 130 */ +#endif +#ifndef Tcl_GetLongFromObj +#define Tcl_GetLongFromObj(interp, objPtr, longPtr) \ + (tclStubsPtr->tcl_GetLongFromObj)(interp, objPtr, longPtr) /* 131 */ +#endif +#ifndef Tcl_GetMaster +#define Tcl_GetMaster(interp) \ + (tclStubsPtr->tcl_GetMaster)(interp) /* 132 */ +#endif +#ifndef Tcl_GetNameOfExecutable +#define Tcl_GetNameOfExecutable() \ + (tclStubsPtr->tcl_GetNameOfExecutable)() /* 133 */ +#endif +#ifndef Tcl_GetObjResult +#define Tcl_GetObjResult(interp) \ + (tclStubsPtr->tcl_GetObjResult)(interp) /* 134 */ +#endif +#ifndef Tcl_GetObjType +#define Tcl_GetObjType(typeName) \ + (tclStubsPtr->tcl_GetObjType)(typeName) /* 135 */ +#endif +#ifndef Tcl_GetPathType +#define Tcl_GetPathType(path) \ + (tclStubsPtr->tcl_GetPathType)(path) /* 136 */ +#endif +#ifndef Tcl_Gets +#define Tcl_Gets(chan, dsPtr) \ + (tclStubsPtr->tcl_Gets)(chan, dsPtr) /* 137 */ +#endif +#ifndef Tcl_GetsObj +#define Tcl_GetsObj(chan, objPtr) \ + (tclStubsPtr->tcl_GetsObj)(chan, objPtr) /* 138 */ +#endif +#ifndef Tcl_GetServiceMode +#define Tcl_GetServiceMode() \ + (tclStubsPtr->tcl_GetServiceMode)() /* 139 */ +#endif +#ifndef Tcl_GetSlave +#define Tcl_GetSlave(interp, slaveName) \ + (tclStubsPtr->tcl_GetSlave)(interp, slaveName) /* 140 */ +#endif +#ifndef Tcl_GetStdChannel +#define Tcl_GetStdChannel(type) \ + (tclStubsPtr->tcl_GetStdChannel)(type) /* 141 */ +#endif +#ifndef Tcl_GetStringFromObj +#define Tcl_GetStringFromObj(objPtr, lengthPtr) \ + (tclStubsPtr->tcl_GetStringFromObj)(objPtr, lengthPtr) /* 142 */ +#endif +#ifndef Tcl_GetStringResult +#define Tcl_GetStringResult(interp) \ + (tclStubsPtr->tcl_GetStringResult)(interp) /* 143 */ +#endif +#ifndef Tcl_GetVar +#define Tcl_GetVar(interp, varName, flags) \ + (tclStubsPtr->tcl_GetVar)(interp, varName, flags) /* 144 */ +#endif +#ifndef Tcl_GetVar2 +#define Tcl_GetVar2(interp, part1, part2, flags) \ + (tclStubsPtr->tcl_GetVar2)(interp, part1, part2, flags) /* 145 */ +#endif +#ifndef Tcl_GlobalEval +#define Tcl_GlobalEval(interp, command) \ + (tclStubsPtr->tcl_GlobalEval)(interp, command) /* 146 */ +#endif +#ifndef Tcl_GlobalEvalObj +#define Tcl_GlobalEvalObj(interp, objPtr) \ + (tclStubsPtr->tcl_GlobalEvalObj)(interp, objPtr) /* 147 */ +#endif +#ifndef Tcl_HashStats +#define Tcl_HashStats(tablePtr) \ + (tclStubsPtr->tcl_HashStats)(tablePtr) /* 148 */ +#endif +#ifndef Tcl_HideCommand +#define Tcl_HideCommand(interp, cmdName, hiddenCmdToken) \ + (tclStubsPtr->tcl_HideCommand)(interp, cmdName, hiddenCmdToken) /* 149 */ +#endif +#ifndef Tcl_Init +#define Tcl_Init(interp) \ + (tclStubsPtr->tcl_Init)(interp) /* 150 */ +#endif +#ifndef Tcl_InitHashTable +#define Tcl_InitHashTable(tablePtr, keyType) \ + (tclStubsPtr->tcl_InitHashTable)(tablePtr, keyType) /* 151 */ +#endif +#ifndef Tcl_InputBlocked +#define Tcl_InputBlocked(chan) \ + (tclStubsPtr->tcl_InputBlocked)(chan) /* 152 */ +#endif +#ifndef Tcl_InputBuffered +#define Tcl_InputBuffered(chan) \ + (tclStubsPtr->tcl_InputBuffered)(chan) /* 153 */ +#endif +#ifndef Tcl_InterpDeleted +#define Tcl_InterpDeleted(interp) \ + (tclStubsPtr->tcl_InterpDeleted)(interp) /* 154 */ +#endif +#ifndef Tcl_IsSafe +#define Tcl_IsSafe(interp) \ + (tclStubsPtr->tcl_IsSafe)(interp) /* 155 */ +#endif +#ifndef Tcl_InvalidateStringRep +#define Tcl_InvalidateStringRep(objPtr) \ + (tclStubsPtr->tcl_InvalidateStringRep)(objPtr) /* 156 */ +#endif +#ifndef Tcl_JoinPath +#define Tcl_JoinPath(argc, argv, resultPtr) \ + (tclStubsPtr->tcl_JoinPath)(argc, argv, resultPtr) /* 157 */ +#endif +#ifndef Tcl_LinkVar +#define Tcl_LinkVar(interp, varName, addr, type) \ + (tclStubsPtr->tcl_LinkVar)(interp, varName, addr, type) /* 158 */ +#endif +#ifndef Tcl_ListObjAppendList +#define Tcl_ListObjAppendList(interp, listPtr, elemListPtr) \ + (tclStubsPtr->tcl_ListObjAppendList)(interp, listPtr, elemListPtr) /* 159 */ +#endif +#ifndef Tcl_ListObjAppendElement +#define Tcl_ListObjAppendElement(interp, listPtr, objPtr) \ + (tclStubsPtr->tcl_ListObjAppendElement)(interp, listPtr, objPtr) /* 160 */ +#endif +#ifndef Tcl_ListObjGetElements +#define Tcl_ListObjGetElements(interp, listPtr, objcPtr, objvPtr) \ + (tclStubsPtr->tcl_ListObjGetElements)(interp, listPtr, objcPtr, objvPtr) /* 161 */ +#endif +#ifndef Tcl_ListObjIndex +#define Tcl_ListObjIndex(interp, listPtr, index, objPtrPtr) \ + (tclStubsPtr->tcl_ListObjIndex)(interp, listPtr, index, objPtrPtr) /* 162 */ +#endif +#ifndef Tcl_ListObjLength +#define Tcl_ListObjLength(interp, listPtr, intPtr) \ + (tclStubsPtr->tcl_ListObjLength)(interp, listPtr, intPtr) /* 163 */ +#endif +#ifndef Tcl_ListObjReplace +#define Tcl_ListObjReplace(interp, listPtr, first, count, objc, objv) \ + (tclStubsPtr->tcl_ListObjReplace)(interp, listPtr, first, count, objc, objv) /* 164 */ +#endif +#ifndef Tcl_MakeFileChannel +#define Tcl_MakeFileChannel(handle, mode) \ + (tclStubsPtr->tcl_MakeFileChannel)(handle, mode) /* 165 */ +#endif +#ifndef Tcl_MakeSafe +#define Tcl_MakeSafe(interp) \ + (tclStubsPtr->tcl_MakeSafe)(interp) /* 166 */ +#endif +#ifndef Tcl_MakeTcpClientChannel +#define Tcl_MakeTcpClientChannel(tcpSocket) \ + (tclStubsPtr->tcl_MakeTcpClientChannel)(tcpSocket) /* 167 */ +#endif +#ifndef Tcl_Merge +#define Tcl_Merge(argc, argv) \ + (tclStubsPtr->tcl_Merge)(argc, argv) /* 168 */ +#endif +#ifndef Tcl_NewBooleanObj +#define Tcl_NewBooleanObj(boolValue) \ + (tclStubsPtr->tcl_NewBooleanObj)(boolValue) /* 169 */ +#endif +#ifndef Tcl_NewByteArrayObj +#define Tcl_NewByteArrayObj(bytes, length) \ + (tclStubsPtr->tcl_NewByteArrayObj)(bytes, length) /* 170 */ +#endif +#ifndef Tcl_NewDoubleObj +#define Tcl_NewDoubleObj(doubleValue) \ + (tclStubsPtr->tcl_NewDoubleObj)(doubleValue) /* 171 */ +#endif +#ifndef Tcl_NewIntObj +#define Tcl_NewIntObj(intValue) \ + (tclStubsPtr->tcl_NewIntObj)(intValue) /* 172 */ +#endif +#ifndef Tcl_NewListObj +#define Tcl_NewListObj(objc, objv) \ + (tclStubsPtr->tcl_NewListObj)(objc, objv) /* 173 */ +#endif +#ifndef Tcl_NewLongObj +#define Tcl_NewLongObj(longValue) \ + (tclStubsPtr->tcl_NewLongObj)(longValue) /* 174 */ +#endif +#ifndef Tcl_NewObj +#define Tcl_NewObj() \ + (tclStubsPtr->tcl_NewObj)() /* 175 */ +#endif +#ifndef Tcl_NewStringObj +#define Tcl_NewStringObj(bytes, length) \ + (tclStubsPtr->tcl_NewStringObj)(bytes, length) /* 176 */ +#endif +#ifndef Tcl_NextHashEntry +#define Tcl_NextHashEntry(searchPtr) \ + (tclStubsPtr->tcl_NextHashEntry)(searchPtr) /* 177 */ +#endif +#ifndef Tcl_NotifyChannel +#define Tcl_NotifyChannel(channel, mask) \ + (tclStubsPtr->tcl_NotifyChannel)(channel, mask) /* 178 */ +#endif +#ifndef Tcl_ObjGetVar2 +#define Tcl_ObjGetVar2(interp, part1Ptr, part2Ptr, flags) \ + (tclStubsPtr->tcl_ObjGetVar2)(interp, part1Ptr, part2Ptr, flags) /* 179 */ +#endif +#ifndef Tcl_ObjSetVar2 +#define Tcl_ObjSetVar2(interp, part1Ptr, part2Ptr, newValuePtr, flags) \ + (tclStubsPtr->tcl_ObjSetVar2)(interp, part1Ptr, part2Ptr, newValuePtr, flags) /* 180 */ +#endif +#ifndef Tcl_OpenCommandChannel +#define Tcl_OpenCommandChannel(interp, argc, argv, flags) \ + (tclStubsPtr->tcl_OpenCommandChannel)(interp, argc, argv, flags) /* 181 */ +#endif +#ifndef Tcl_OpenFileChannel +#define Tcl_OpenFileChannel(interp, fileName, modeString, permissions) \ + (tclStubsPtr->tcl_OpenFileChannel)(interp, fileName, modeString, permissions) /* 182 */ +#endif +#ifndef Tcl_OpenTcpClient +#define Tcl_OpenTcpClient(interp, port, address, myaddr, myport, async) \ + (tclStubsPtr->tcl_OpenTcpClient)(interp, port, address, myaddr, myport, async) /* 183 */ +#endif +#ifndef Tcl_OpenTcpServer +#define Tcl_OpenTcpServer(interp, port, host, acceptProc, callbackData) \ + (tclStubsPtr->tcl_OpenTcpServer)(interp, port, host, acceptProc, callbackData) /* 184 */ +#endif +#ifndef Tcl_Panic +#define Tcl_Panic \ + (tclStubsPtr->tcl_Panic) /* 185 */ +#endif +#ifndef Tcl_PanicVA +#define Tcl_PanicVA(format, argList) \ + (tclStubsPtr->tcl_PanicVA)(format, argList) /* 186 */ +#endif +#ifndef Tcl_ParseVar +#define Tcl_ParseVar(interp, string, termPtr) \ + (tclStubsPtr->tcl_ParseVar)(interp, string, termPtr) /* 187 */ +#endif +#ifndef Tcl_PkgPresent +#define Tcl_PkgPresent(interp, name, version, exact) \ + (tclStubsPtr->tcl_PkgPresent)(interp, name, version, exact) /* 188 */ +#endif +#ifndef Tcl_PkgPresentEx +#define Tcl_PkgPresentEx(interp, name, version, exact, clientDataPtr) \ + (tclStubsPtr->tcl_PkgPresentEx)(interp, name, version, exact, clientDataPtr) /* 189 */ +#endif +#ifndef Tcl_PkgProvide +#define Tcl_PkgProvide(interp, name, version) \ + (tclStubsPtr->tcl_PkgProvide)(interp, name, version) /* 190 */ +#endif +#ifndef Tcl_PkgProvideEx +#define Tcl_PkgProvideEx(interp, name, version, clientData) \ + (tclStubsPtr->tcl_PkgProvideEx)(interp, name, version, clientData) /* 191 */ +#endif +#ifndef Tcl_PkgRequire +#define Tcl_PkgRequire(interp, name, version, exact) \ + (tclStubsPtr->tcl_PkgRequire)(interp, name, version, exact) /* 192 */ +#endif +#ifndef Tcl_PkgRequireEx +#define Tcl_PkgRequireEx(interp, name, version, exact, clientDataPtr) \ + (tclStubsPtr->tcl_PkgRequireEx)(interp, name, version, exact, clientDataPtr) /* 193 */ +#endif +#ifndef Tcl_PosixError +#define Tcl_PosixError(interp) \ + (tclStubsPtr->tcl_PosixError)(interp) /* 194 */ +#endif +#ifndef Tcl_Preserve +#define Tcl_Preserve(data) \ + (tclStubsPtr->tcl_Preserve)(data) /* 195 */ +#endif +#ifndef Tcl_PrintDouble +#define Tcl_PrintDouble(interp, value, dst) \ + (tclStubsPtr->tcl_PrintDouble)(interp, value, dst) /* 196 */ +#endif +#ifndef Tcl_PutEnv +#define Tcl_PutEnv(string) \ + (tclStubsPtr->tcl_PutEnv)(string) /* 197 */ +#endif +#ifndef Tcl_QueueEvent +#define Tcl_QueueEvent(evPtr, position) \ + (tclStubsPtr->tcl_QueueEvent)(evPtr, position) /* 198 */ +#endif +#ifndef Tcl_Read +#define Tcl_Read(chan, bufPtr, toRead) \ + (tclStubsPtr->tcl_Read)(chan, bufPtr, toRead) /* 199 */ +#endif +#ifndef Tcl_Realloc +#define Tcl_Realloc(ptr, size) \ + (tclStubsPtr->tcl_Realloc)(ptr, size) /* 200 */ +#endif +#ifndef Tcl_ReapDetachedProcs +#define Tcl_ReapDetachedProcs() \ + (tclStubsPtr->tcl_ReapDetachedProcs)() /* 201 */ +#endif +#ifndef Tcl_RecordAndEval +#define Tcl_RecordAndEval(interp, cmd, flags) \ + (tclStubsPtr->tcl_RecordAndEval)(interp, cmd, flags) /* 202 */ +#endif +#ifndef Tcl_RecordAndEvalObj +#define Tcl_RecordAndEvalObj(interp, cmdPtr, flags) \ + (tclStubsPtr->tcl_RecordAndEvalObj)(interp, cmdPtr, flags) /* 203 */ +#endif +#ifndef Tcl_RegExpCompile +#define Tcl_RegExpCompile(interp, string) \ + (tclStubsPtr->tcl_RegExpCompile)(interp, string) /* 204 */ +#endif +#ifndef Tcl_RegExpExec +#define Tcl_RegExpExec(interp, regexp, string, start) \ + (tclStubsPtr->tcl_RegExpExec)(interp, regexp, string, start) /* 205 */ +#endif +#ifndef Tcl_RegExpMatch +#define Tcl_RegExpMatch(interp, string, pattern) \ + (tclStubsPtr->tcl_RegExpMatch)(interp, string, pattern) /* 206 */ +#endif +#ifndef Tcl_RegExpRange +#define Tcl_RegExpRange(regexp, index, startPtr, endPtr) \ + (tclStubsPtr->tcl_RegExpRange)(regexp, index, startPtr, endPtr) /* 207 */ +#endif +#ifndef Tcl_RegisterChannel +#define Tcl_RegisterChannel(interp, chan) \ + (tclStubsPtr->tcl_RegisterChannel)(interp, chan) /* 208 */ +#endif +#ifndef Tcl_RegisterObjType +#define Tcl_RegisterObjType(typePtr) \ + (tclStubsPtr->tcl_RegisterObjType)(typePtr) /* 209 */ +#endif +#ifndef Tcl_Release +#define Tcl_Release(clientData) \ + (tclStubsPtr->tcl_Release)(clientData) /* 210 */ +#endif +#ifndef Tcl_ResetResult +#define Tcl_ResetResult(interp) \ + (tclStubsPtr->tcl_ResetResult)(interp) /* 211 */ +#endif +#ifndef Tcl_ScanCountedElement +#define Tcl_ScanCountedElement(string, length, flagPtr) \ + (tclStubsPtr->tcl_ScanCountedElement)(string, length, flagPtr) /* 212 */ +#endif +#ifndef Tcl_ScanElement +#define Tcl_ScanElement(string, flagPtr) \ + (tclStubsPtr->tcl_ScanElement)(string, flagPtr) /* 213 */ +#endif +#ifndef Tcl_Seek +#define Tcl_Seek(chan, offset, mode) \ + (tclStubsPtr->tcl_Seek)(chan, offset, mode) /* 214 */ +#endif +#ifndef Tcl_ServiceAll +#define Tcl_ServiceAll() \ + (tclStubsPtr->tcl_ServiceAll)() /* 215 */ +#endif +#ifndef Tcl_ServiceEvent +#define Tcl_ServiceEvent(flags) \ + (tclStubsPtr->tcl_ServiceEvent)(flags) /* 216 */ +#endif +#ifndef Tcl_SetAssocData +#define Tcl_SetAssocData(interp, name, proc, clientData) \ + (tclStubsPtr->tcl_SetAssocData)(interp, name, proc, clientData) /* 217 */ +#endif +#ifndef Tcl_SetBooleanObj +#define Tcl_SetBooleanObj(objPtr, boolValue) \ + (tclStubsPtr->tcl_SetBooleanObj)(objPtr, boolValue) /* 218 */ +#endif +#ifndef Tcl_SetByteArrayLength +#define Tcl_SetByteArrayLength(objPtr, length) \ + (tclStubsPtr->tcl_SetByteArrayLength)(objPtr, length) /* 219 */ +#endif +#ifndef Tcl_SetByteArrayObj +#define Tcl_SetByteArrayObj(objPtr, bytes, length) \ + (tclStubsPtr->tcl_SetByteArrayObj)(objPtr, bytes, length) /* 220 */ +#endif +#ifndef Tcl_SetChannelBufferSize +#define Tcl_SetChannelBufferSize(chan, sz) \ + (tclStubsPtr->tcl_SetChannelBufferSize)(chan, sz) /* 221 */ +#endif +#ifndef Tcl_SetChannelOption +#define Tcl_SetChannelOption(interp, chan, optionName, newValue) \ + (tclStubsPtr->tcl_SetChannelOption)(interp, chan, optionName, newValue) /* 222 */ +#endif +#ifndef Tcl_SetCommandInfo +#define Tcl_SetCommandInfo(interp, cmdName, infoPtr) \ + (tclStubsPtr->tcl_SetCommandInfo)(interp, cmdName, infoPtr) /* 223 */ +#endif +#ifndef Tcl_SetDoubleObj +#define Tcl_SetDoubleObj(objPtr, doubleValue) \ + (tclStubsPtr->tcl_SetDoubleObj)(objPtr, doubleValue) /* 224 */ +#endif +#ifndef Tcl_SetErrno +#define Tcl_SetErrno(err) \ + (tclStubsPtr->tcl_SetErrno)(err) /* 225 */ +#endif +#ifndef Tcl_SetErrorCode +#define Tcl_SetErrorCode \ + (tclStubsPtr->tcl_SetErrorCode) /* 226 */ +#endif +#ifndef Tcl_SetErrorCodeVA +#define Tcl_SetErrorCodeVA(interp, argList) \ + (tclStubsPtr->tcl_SetErrorCodeVA)(interp, argList) /* 227 */ +#endif +#ifndef Tcl_SetIntObj +#define Tcl_SetIntObj(objPtr, intValue) \ + (tclStubsPtr->tcl_SetIntObj)(objPtr, intValue) /* 228 */ +#endif +#ifndef Tcl_SetListObj +#define Tcl_SetListObj(objPtr, objc, objv) \ + (tclStubsPtr->tcl_SetListObj)(objPtr, objc, objv) /* 229 */ +#endif +#ifndef Tcl_SetLongObj +#define Tcl_SetLongObj(objPtr, longValue) \ + (tclStubsPtr->tcl_SetLongObj)(objPtr, longValue) /* 230 */ +#endif +#ifndef Tcl_SetMaxBlockTime +#define Tcl_SetMaxBlockTime(timePtr) \ + (tclStubsPtr->tcl_SetMaxBlockTime)(timePtr) /* 231 */ +#endif +#ifndef Tcl_SetObjErrorCode +#define Tcl_SetObjErrorCode(interp, errorObjPtr) \ + (tclStubsPtr->tcl_SetObjErrorCode)(interp, errorObjPtr) /* 232 */ +#endif +#ifndef Tcl_SetObjLength +#define Tcl_SetObjLength(objPtr, length) \ + (tclStubsPtr->tcl_SetObjLength)(objPtr, length) /* 233 */ +#endif +#ifndef Tcl_SetObjResult +#define Tcl_SetObjResult(interp, resultObjPtr) \ + (tclStubsPtr->tcl_SetObjResult)(interp, resultObjPtr) /* 234 */ +#endif +#ifndef Tcl_SetPanicProc +#define Tcl_SetPanicProc(panicProc) \ + (tclStubsPtr->tcl_SetPanicProc)(panicProc) /* 235 */ +#endif +#ifndef Tcl_SetRecursionLimit +#define Tcl_SetRecursionLimit(interp, depth) \ + (tclStubsPtr->tcl_SetRecursionLimit)(interp, depth) /* 236 */ +#endif +#ifndef Tcl_SetResult +#define Tcl_SetResult(interp, string, freeProc) \ + (tclStubsPtr->tcl_SetResult)(interp, string, freeProc) /* 237 */ +#endif +#ifndef Tcl_SetServiceMode +#define Tcl_SetServiceMode(mode) \ + (tclStubsPtr->tcl_SetServiceMode)(mode) /* 238 */ +#endif +#ifndef Tcl_SetStdChannel +#define Tcl_SetStdChannel(channel, type) \ + (tclStubsPtr->tcl_SetStdChannel)(channel, type) /* 239 */ +#endif +#ifndef Tcl_SetStringObj +#define Tcl_SetStringObj(objPtr, bytes, length) \ + (tclStubsPtr->tcl_SetStringObj)(objPtr, bytes, length) /* 240 */ +#endif +#ifndef Tcl_SetTimer +#define Tcl_SetTimer(timePtr) \ + (tclStubsPtr->tcl_SetTimer)(timePtr) /* 241 */ +#endif +#ifndef Tcl_SetVar +#define Tcl_SetVar(interp, varName, newValue, flags) \ + (tclStubsPtr->tcl_SetVar)(interp, varName, newValue, flags) /* 242 */ +#endif +#ifndef Tcl_SetVar2 +#define Tcl_SetVar2(interp, part1, part2, newValue, flags) \ + (tclStubsPtr->tcl_SetVar2)(interp, part1, part2, newValue, flags) /* 243 */ +#endif +#ifndef Tcl_SignalId +#define Tcl_SignalId(sig) \ + (tclStubsPtr->tcl_SignalId)(sig) /* 244 */ +#endif +#ifndef Tcl_SignalMsg +#define Tcl_SignalMsg(sig) \ + (tclStubsPtr->tcl_SignalMsg)(sig) /* 245 */ +#endif +#ifndef Tcl_Sleep +#define Tcl_Sleep(ms) \ + (tclStubsPtr->tcl_Sleep)(ms) /* 246 */ +#endif +#ifndef Tcl_SourceRCFile +#define Tcl_SourceRCFile(interp) \ + (tclStubsPtr->tcl_SourceRCFile)(interp) /* 247 */ +#endif +#ifndef Tcl_SplitList +#define Tcl_SplitList(interp, list, argcPtr, argvPtr) \ + (tclStubsPtr->tcl_SplitList)(interp, list, argcPtr, argvPtr) /* 248 */ +#endif +#ifndef Tcl_SplitPath +#define Tcl_SplitPath(path, argcPtr, argvPtr) \ + (tclStubsPtr->tcl_SplitPath)(path, argcPtr, argvPtr) /* 249 */ +#endif +#ifndef Tcl_StaticPackage +#define Tcl_StaticPackage(interp, pkgName, initProc, safeInitProc) \ + (tclStubsPtr->tcl_StaticPackage)(interp, pkgName, initProc, safeInitProc) /* 250 */ +#endif +#ifndef Tcl_StringMatch +#define Tcl_StringMatch(string, pattern) \ + (tclStubsPtr->tcl_StringMatch)(string, pattern) /* 251 */ +#endif +#ifndef Tcl_Tell +#define Tcl_Tell(chan) \ + (tclStubsPtr->tcl_Tell)(chan) /* 252 */ +#endif +#ifndef Tcl_TraceVar +#define Tcl_TraceVar(interp, varName, flags, proc, clientData) \ + (tclStubsPtr->tcl_TraceVar)(interp, varName, flags, proc, clientData) /* 253 */ +#endif +#ifndef Tcl_TraceVar2 +#define Tcl_TraceVar2(interp, part1, part2, flags, proc, clientData) \ + (tclStubsPtr->tcl_TraceVar2)(interp, part1, part2, flags, proc, clientData) /* 254 */ +#endif +#ifndef Tcl_TranslateFileName +#define Tcl_TranslateFileName(interp, name, bufferPtr) \ + (tclStubsPtr->tcl_TranslateFileName)(interp, name, bufferPtr) /* 255 */ +#endif +#ifndef Tcl_Ungets +#define Tcl_Ungets(chan, str, len, atHead) \ + (tclStubsPtr->tcl_Ungets)(chan, str, len, atHead) /* 256 */ +#endif +#ifndef Tcl_UnlinkVar +#define Tcl_UnlinkVar(interp, varName) \ + (tclStubsPtr->tcl_UnlinkVar)(interp, varName) /* 257 */ +#endif +#ifndef Tcl_UnregisterChannel +#define Tcl_UnregisterChannel(interp, chan) \ + (tclStubsPtr->tcl_UnregisterChannel)(interp, chan) /* 258 */ +#endif +#ifndef Tcl_UnsetVar +#define Tcl_UnsetVar(interp, varName, flags) \ + (tclStubsPtr->tcl_UnsetVar)(interp, varName, flags) /* 259 */ +#endif +#ifndef Tcl_UnsetVar2 +#define Tcl_UnsetVar2(interp, part1, part2, flags) \ + (tclStubsPtr->tcl_UnsetVar2)(interp, part1, part2, flags) /* 260 */ +#endif +#ifndef Tcl_UntraceVar +#define Tcl_UntraceVar(interp, varName, flags, proc, clientData) \ + (tclStubsPtr->tcl_UntraceVar)(interp, varName, flags, proc, clientData) /* 261 */ +#endif +#ifndef Tcl_UntraceVar2 +#define Tcl_UntraceVar2(interp, part1, part2, flags, proc, clientData) \ + (tclStubsPtr->tcl_UntraceVar2)(interp, part1, part2, flags, proc, clientData) /* 262 */ +#endif +#ifndef Tcl_UpdateLinkedVar +#define Tcl_UpdateLinkedVar(interp, varName) \ + (tclStubsPtr->tcl_UpdateLinkedVar)(interp, varName) /* 263 */ +#endif +#ifndef Tcl_UpVar +#define Tcl_UpVar(interp, frameName, varName, localName, flags) \ + (tclStubsPtr->tcl_UpVar)(interp, frameName, varName, localName, flags) /* 264 */ +#endif +#ifndef Tcl_UpVar2 +#define Tcl_UpVar2(interp, frameName, part1, part2, localName, flags) \ + (tclStubsPtr->tcl_UpVar2)(interp, frameName, part1, part2, localName, flags) /* 265 */ +#endif +#ifndef Tcl_ValidateAllMemory +#define Tcl_ValidateAllMemory(file, line) \ + (tclStubsPtr->tcl_ValidateAllMemory)(file, line) /* 266 */ +#endif +#ifndef Tcl_VarEval +#define Tcl_VarEval \ + (tclStubsPtr->tcl_VarEval) /* 267 */ +#endif +#ifndef Tcl_VarEvalVA +#define Tcl_VarEvalVA(interp, argList) \ + (tclStubsPtr->tcl_VarEvalVA)(interp, argList) /* 268 */ +#endif +#ifndef Tcl_VarTraceInfo +#define Tcl_VarTraceInfo(interp, varName, flags, procPtr, prevClientData) \ + (tclStubsPtr->tcl_VarTraceInfo)(interp, varName, flags, procPtr, prevClientData) /* 269 */ +#endif +#ifndef Tcl_VarTraceInfo2 +#define Tcl_VarTraceInfo2(interp, part1, part2, flags, procPtr, prevClientData) \ + (tclStubsPtr->tcl_VarTraceInfo2)(interp, part1, part2, flags, procPtr, prevClientData) /* 270 */ +#endif +#ifndef Tcl_WaitForEvent +#define Tcl_WaitForEvent(timePtr) \ + (tclStubsPtr->tcl_WaitForEvent)(timePtr) /* 271 */ +#endif +#ifndef Tcl_WaitPid +#define Tcl_WaitPid(pid, statPtr, options) \ + (tclStubsPtr->tcl_WaitPid)(pid, statPtr, options) /* 272 */ +#endif +#ifndef Tcl_Write +#define Tcl_Write(chan, s, slen) \ + (tclStubsPtr->tcl_Write)(chan, s, slen) /* 273 */ +#endif +#ifndef Tcl_WrongNumArgs +#define Tcl_WrongNumArgs(interp, objc, objv, message) \ + (tclStubsPtr->tcl_WrongNumArgs)(interp, objc, objv, message) /* 274 */ +#endif + +#endif /* defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS) */ + +/* !END!: Do not edit above this line. */ + +#endif /* _TCLDECLS */ + diff --git a/generic/tclInt.decls b/generic/tclInt.decls new file mode 100644 index 0000000..85d65aa --- /dev/null +++ b/generic/tclInt.decls @@ -0,0 +1,626 @@ +# tclInt.decls -- +# +# This file contains the declarations for all unsupported +# functions that are exported by the Tcl library. This file +# is used to generate the tclIntDecls.h, tclIntPlatDecls.h, +# tclIntStub.c, and tclPlatStub.c files. +# +# Copyright (c) 1998-1999 by Scriptics Corporation. +# See the file "license.terms" for information on usage and redistribution +# of this file, and for a DISCLAIMER OF ALL WARRANTIES. +# +# RCS: @(#) $Id: tclInt.decls,v 1.1 1999/03/03 00:38:40 stanton Exp $ + +library tcl + +# Define the unsupported generic interfaces. + +interface tclInt + +# Declare each of the functions in the unsupported internal Tcl +# interface. These interfaces are allowed to changed between versions. +# Use at your own risk. Note that the position of functions should not +# be changed between versions to avoid gratuitous incompatibilities. + +declare 0 generic { + int TclAccess(CONST char *path, int mode) +} +declare 1 generic { + int TclAccessDeleteProc(TclAccessProc_ *proc) +} +declare 2 generic { + int TclAccessInsertProc(TclAccessProc_ *proc) +} +declare 3 generic { + void TclAllocateFreeObjects(void) +} +declare 4 generic { + int TclChdir(Tcl_Interp *interp, char *dirName) +} +declare 5 generic { + int TclCleanupChildren(Tcl_Interp *interp, int numPids, Tcl_Pid *pidPtr, \ + Tcl_Channel errorChan) +} +declare 6 generic { + void TclCleanupCommand(Command *cmdPtr) +} +declare 7 generic { + int TclCopyAndCollapse(int count, char *src, char *dst) +} +declare 8 generic { + int TclCopyChannel(Tcl_Interp *interp, Tcl_Channel inChan, \ + Tcl_Channel outChan, int toRead, Tcl_Obj *cmdPtr) +} + +# TclCreatePipeline unofficially exported for use by BLT. + +declare 9 generic { + int TclCreatePipeline(Tcl_Interp *interp, int argc, char **argv, \ + Tcl_Pid **pidArrayPtr, TclFile *inPipePtr, TclFile *outPipePtr, \ + TclFile *errFilePtr) +} +declare 10 generic { + int TclCreateProc(Tcl_Interp *interp, Namespace *nsPtr, char *procName, \ + Tcl_Obj *argsPtr, Tcl_Obj *bodyPtr, Proc **procPtrPtr) +} +declare 11 generic { + void TclDeleteCompiledLocalVars(Interp *iPtr, CallFrame *framePtr) +} +declare 12 generic { + void TclDeleteVars(Interp *iPtr, Tcl_HashTable *tablePtr) +} +declare 13 generic { + int TclDoGlob(Tcl_Interp *interp, char *separators, \ + Tcl_DString *headPtr, char *tail) +} +declare 14 generic { + void TclDumpMemoryInfo(FILE *outFile) +} +declare 15 generic { + void TclExpandParseValue(ParseValue *pvPtr, int needed) +} +declare 16 generic { + void TclExprFloatError(Tcl_Interp *interp, double value) +} +declare 17 generic { + int TclFileAttrsCmd(Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) +} +declare 18 generic { + int TclFileCopyCmd(Tcl_Interp *interp, int argc, char **argv) +} +declare 19 generic { + int TclFileDeleteCmd(Tcl_Interp *interp, int argc, char **argv) +} +declare 20 generic { + int TclFileMakeDirsCmd(Tcl_Interp *interp, int argc, char **argv) +} +declare 21 generic { + int TclFileRenameCmd(Tcl_Interp *interp, int argc, char **argv) +} +declare 22 generic { + void TclFinalizeCompExecEnv(void) +} +declare 23 generic { + void TclFinalizeEnvironment(void) +} +declare 24 generic { + void TclFinalizeExecEnv(void) +} +declare 25 generic { + int TclFindElement(Tcl_Interp *interp, char *list, int listLength, \ + char **elementPtr, char **nextPtr, int *sizePtr, int *bracePtr) +} +declare 26 generic { + Proc * TclFindProc(Interp *iPtr, char *procName) +} +declare 27 generic { + int TclFormatInt(char *buffer, long n) +} +declare 28 generic { + void TclFreePackageInfo(Interp *iPtr) +} +declare 29 generic { + void TclGetAndDetachPids(Tcl_Interp *interp, Tcl_Channel chan) +} +declare 30 generic { + char * TclGetCwd(Tcl_Interp *interp) +} +declare 31 generic { + int TclGetDate(char *p, unsigned long now, long zone, \ + unsigned long *timePtr) +} +declare 32 generic { + Tcl_Channel TclGetDefaultStdChannel(int type) +} +declare 33 generic { + Tcl_Obj * TclGetElementOfIndexedArray(Tcl_Interp *interp, \ + int localIndex, Tcl_Obj *elemPtr, int leaveErrorMsg) +} +declare 34 generic { + char * TclGetEnv(CONST char *name) +} +declare 35 generic { + char * TclGetExtension(char *name) +} +declare 36 generic { + int TclGetFrame(Tcl_Interp *interp, char *string, CallFrame **framePtrPtr) +} +declare 37 generic { + TclCmdProcType TclGetInterpProc(void) +} +declare 38 generic { + int TclGetIntForIndex(Tcl_Interp *interp, Tcl_Obj *objPtr, \ + int endValue, int *indexPtr) +} +declare 39 generic { + Tcl_Obj * TclGetIndexedScalar(Tcl_Interp *interp, int localIndex, \ + int leaveErrorMsg) +} +declare 40 generic { + int TclGetLong(Tcl_Interp *interp, char *string, long *longPtr) +} +declare 41 generic { + int TclGetLoadedPackages(Tcl_Interp *interp, char *targetName) +} +declare 42 generic { + int TclGetNamespaceForQualName(Tcl_Interp *interp, char *qualName, \ + Namespace *cxtNsPtr, int flags, Namespace **nsPtrPtr, \ + Namespace **altNsPtrPtr, Namespace **actualCxtPtrPtr, \ + char **simpleNamePtr) +} +declare 43 generic { + TclObjCmdProcType TclGetObjInterpProc(void) +} +declare 44 generic { + int TclGetOpenMode(Tcl_Interp *interp, char *string, int *seekFlagPtr) +} +declare 45 generic { + Tcl_Command TclGetOriginalCommand(Tcl_Command command) +} +declare 46 generic { + char * TclpGetUserHome(char *name, Tcl_DString *bufferPtr) +} +declare 47 generic { + int TclGlobalInvoke(Tcl_Interp *interp, int argc, char **argv, int flags) +} +declare 48 generic { + int TclGuessPackageName(char *fileName, Tcl_DString *bufPtr) +} +declare 49 generic { + int TclHasSockets(Tcl_Interp *interp) +} +declare 50 generic { + int TclHideUnsafeCommands(Tcl_Interp *interp) +} +declare 51 generic { + int TclInExit(void) +} +declare 52 generic { + Tcl_Obj * TclIncrElementOfIndexedArray(Tcl_Interp *interp, \ + int localIndex, Tcl_Obj *elemPtr, long incrAmount) +} +declare 53 generic { + Tcl_Obj * TclIncrIndexedScalar(Tcl_Interp *interp, int localIndex, \ + long incrAmount) +} +declare 54 generic { + Tcl_Obj * TclIncrVar2(Tcl_Interp *interp, Tcl_Obj *part1Ptr, \ + Tcl_Obj *part2Ptr, long incrAmount, int part1NotParsed) +} +declare 55 generic { + void TclInitCompiledLocals(Tcl_Interp *interp, CallFrame *framePtr, \ + Namespace *nsPtr) +} +declare 56 generic { + void TclInitNamespaces(void) +} +declare 57 generic { + int TclInterpInit(Tcl_Interp *interp) +} +declare 58 generic { + int TclInvoke(Tcl_Interp *interp, int argc, char **argv, int flags) +} +declare 59 generic { + int TclInvokeObjectCommand(ClientData clientData, Tcl_Interp *interp, \ + int argc, char **argv) +} +declare 60 generic { + int TclInvokeStringCommand(ClientData clientData, Tcl_Interp *interp, \ + int objc, Tcl_Obj *CONST objv[]) +} +declare 61 generic { + Proc * TclIsProc(Command *cmdPtr) +} +declare 62 generic { + int TclLoadFile(Tcl_Interp *interp, char *fileName, char *sym1, \ + char *sym2, Tcl_PackageInitProc **proc1Ptr, \ + Tcl_PackageInitProc **proc2Ptr) +} +declare 63 generic { + int TclLooksLikeInt(char *p) +} +declare 64 generic { + Var * TclLookupVar(Tcl_Interp *interp, char *part1, char *part2, \ + int flags, char *msg, int createPart1, int createPart2, \ + Var **arrayPtrPtr) +} +declare 65 generic { + int TclMatchFiles(Tcl_Interp *interp, char *separators, \ + Tcl_DString *dirPtr, char *pattern, char *tail) +} +declare 66 generic { + int TclNeedSpace(char *start, char *end) +} +declare 67 generic { + Tcl_Obj * TclNewProcBodyObj(Proc *procPtr) +} +declare 68 generic { + int TclObjCommandComplete(Tcl_Obj *cmdPtr) +} +declare 69 generic { + int TclObjInterpProc(ClientData clientData, Tcl_Interp *interp, \ + int objc, Tcl_Obj *CONST objv[]) +} +declare 70 generic { + int TclObjInvoke(Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[], \ + int flags) +} +declare 71 generic { + int TclObjInvokeGlobal(Tcl_Interp *interp, int objc, \ + Tcl_Obj *CONST objv[], int flags) +} +declare 72 generic { + int TclOpenFileChannelDeleteProc(TclOpenFileChannelProc_ *proc) +} +declare 73 generic { + int TclOpenFileChannelInsertProc(TclOpenFileChannelProc_ *proc) +} +declare 74 generic { + char * TclpAlloc(unsigned int size) +} +declare 75 generic { + int TclpCloseFile(TclFile file) +} +declare 76 generic { + int TclpCopyFile(char *source, char *dest) +} +declare 77 generic { + int TclpCopyDirectory(char *source, char *dest, Tcl_DString *errorPtr) +} +declare 78 generic { + Tcl_Channel TclpCreateCommandChannel(TclFile readFile, \ + TclFile writeFile, TclFile errorFile, int numPids, Tcl_Pid *pidPtr) +} +declare 79 generic { + int TclpCreateDirectory(char *path) +} +declare 80 generic { + int TclpCreatePipe(TclFile *readPipe, TclFile *writePipe) +} +declare 81 generic { + int TclpCreateProcess(Tcl_Interp *interp, int argc, char **argv, \ + TclFile inputFile, TclFile outputFile, TclFile errorFile, \ + Tcl_Pid *pidPtr) +} +declare 82 generic { + TclFile TclpCreateTempFile(char *contents, + Tcl_DString *namePtr) +} +declare 83 generic { + int TclpDeleteFile(char *path) +} +declare 84 generic { + void TclpFinalize(void) +} +declare 85 generic { + void TclpFree(char *ptr) +} +declare 86 generic { + unsigned long TclpGetClicks(void) +} +declare 87 generic { + unsigned long TclpGetSeconds(void) +} +declare 88 generic { + void TclpGetTime(Tcl_Time *time) +} +declare 89 generic { + int TclpGetTimeZone(unsigned long time) +} +declare 90 generic { + char * TclpGetTZName(void) +} +declare 91 generic { + int TclpListVolumes(Tcl_Interp *interp) +} +declare 92 generic { + TclFile TclpMakeFile(Tcl_Channel channel, int direction) +} +declare 93 generic { + TclFile TclpOpenFile(char *fname, int mode) +} +declare 94 generic { + Tcl_Channel TclpOpenFileChannel(Tcl_Interp *interp, char *fileName, \ + char *modeString, int permissions) +} +declare 95 generic { + char * TclpRealloc(char *ptr, unsigned int size) +} +declare 96 generic { + int TclpRemoveDirectory(char *path, int recursive, Tcl_DString *errorPtr) +} +declare 97 generic { + int TclpRenameFile(char *source, char *dest) +} +declare 98 generic { + int TclParseBraces(Tcl_Interp *interp, char *string, char **termPtr, \ + ParseValue *pvPtr) +} +declare 99 generic { + int TclParseNestedCmd(Tcl_Interp *interp, char *string, int flags, \ + char **termPtr, ParseValue *pvPtr) +} +declare 100 generic { + int TclParseQuotes(Tcl_Interp *interp, char *string, int termChar, \ + int flags, char **termPtr, ParseValue *pvPtr) +} +declare 101 generic { + void TclPlatformInit(Tcl_Interp *interp) +} +declare 102 generic { + char * TclPrecTraceProc(ClientData clientData, Tcl_Interp *interp, \ + char *name1, char *name2, int flags) +} +declare 103 generic { + int TclPreventAliasLoop(Tcl_Interp *interp, Tcl_Interp *cmdInterp, \ + Tcl_Command cmd) +} +declare 104 generic { + void TclPrintByteCodeObj(Tcl_Interp *interp, Tcl_Obj *objPtr) +} +declare 105 generic { + void TclProcCleanupProc(Proc *procPtr) +} +declare 106 generic { + int TclProcCompileProc(Tcl_Interp *interp, Proc *procPtr, \ + Tcl_Obj *bodyPtr, Namespace *nsPtr, CONST char *description, \ + CONST char *procName) +} +declare 107 generic { + void TclProcDeleteProc(ClientData clientData) +} +declare 108 generic { + int TclProcInterpProc(ClientData clientData, Tcl_Interp *interp, \ + int argc, char **argv) +} +declare 109 generic { + int TclRenameCommand(Tcl_Interp *interp, char *oldName, char *newName) +} +declare 110 generic { + void TclResetShadowedCmdRefs(Tcl_Interp *interp, Command *newCmdPtr) +} +declare 111 generic { + int TclServiceIdle(void) +} +declare 112 generic { + Tcl_Obj * TclSetElementOfIndexedArray(Tcl_Interp *interp, \ + int localIndex, Tcl_Obj *elemPtr, Tcl_Obj *objPtr, int leaveErrorMsg) +} +declare 113 generic { + Tcl_Obj * TclSetIndexedScalar(Tcl_Interp *interp, int localIndex, \ + Tcl_Obj *objPtr, int leaveErrorMsg) +} +declare 114 generic { + char * TclSetPreInitScript(char *string) +} +declare 115 generic { + void TclSetupEnv(Tcl_Interp *interp) +} +declare 116 generic { + int TclSockGetPort(Tcl_Interp *interp, char *string, char *proto, \ + int *portPtr) +} +declare 117 generic { + int TclSockMinimumBuffers(int sock, int size) +} +declare 118 generic { + int TclStat(CONST char *path, TclStat_ *buf) +} +declare 119 generic { + int TclStatDeleteProc(TclStatProc_ *proc) +} +declare 120 generic { + int TclStatInsertProc(TclStatProc_ *proc) +} +declare 121 generic { + void TclTeardownNamespace(Namespace *nsPtr) +} +declare 122 generic { + int TclUpdateReturnInfo(Interp *iPtr) +} +declare 123 generic { + char * TclWordEnd(char *start, char *lastChar, int nested, int *semiPtr) +} + +# Procedures used in conjunction with Tcl namespaces. They are +# defined here instead of in tcl.decls since they are not stable yet. + +declare 124 generic { + void Tcl_AddInterpResolvers(Tcl_Interp *interp, char *name, \ + Tcl_ResolveCmdProc *cmdProc, Tcl_ResolveVarProc *varProc, \ + Tcl_ResolveCompiledVarProc *compiledVarProc) +} +declare 125 generic { + int Tcl_AppendExportList(Tcl_Interp *interp, Tcl_Namespace *nsPtr, \ + Tcl_Obj *objPtr) +} +declare 126 generic { + Tcl_Namespace * Tcl_CreateNamespace(Tcl_Interp *interp, char *name, \ + ClientData clientData, Tcl_NamespaceDeleteProc *deleteProc) +} +declare 127 generic { + void Tcl_DeleteNamespace(Tcl_Namespace *nsPtr) +} +declare 128 generic { + int Tcl_Export(Tcl_Interp *interp, Tcl_Namespace *nsPtr, char *pattern, \ + int resetListFirst) +} +declare 129 generic { + Tcl_Command Tcl_FindCommand(Tcl_Interp *interp, char *name, \ + Tcl_Namespace *contextNsPtr, int flags) +} +declare 130 generic { + Tcl_Namespace * Tcl_FindNamespace(Tcl_Interp *interp, char *name, \ + Tcl_Namespace *contextNsPtr, int flags) +} +declare 131 generic { + int Tcl_GetInterpResolvers(Tcl_Interp *interp, char *name, \ + Tcl_ResolverInfo *resInfo) +} +declare 132 generic { + int Tcl_GetNamespaceResolvers(Tcl_Namespace *namespacePtr, \ + Tcl_ResolverInfo *resInfo) +} +declare 133 generic { + Tcl_Var Tcl_FindNamespaceVar(Tcl_Interp *interp, char *name, \ + Tcl_Namespace *contextNsPtr, int flags) +} +declare 134 generic { + int Tcl_ForgetImport(Tcl_Interp *interp, Tcl_Namespace *nsPtr, \ + char *pattern) +} +declare 135 generic { + Tcl_Command Tcl_GetCommandFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr) +} +declare 136 generic { + void Tcl_GetCommandFullName(Tcl_Interp *interp, Tcl_Command command, \ + Tcl_Obj *objPtr) +} +declare 137 generic { + Tcl_Namespace * Tcl_GetCurrentNamespace(Tcl_Interp *interp) +} +declare 138 generic { + Tcl_Namespace * Tcl_GetGlobalNamespace(Tcl_Interp *interp) +} +declare 139 generic { + void Tcl_GetVariableFullName(Tcl_Interp *interp, Tcl_Var variable, \ + Tcl_Obj *objPtr) +} +declare 140 generic { + int Tcl_Import(Tcl_Interp *interp, Tcl_Namespace *nsPtr, \ + char *pattern, int allowOverwrite) +} +declare 141 generic { + void Tcl_PopCallFrame(Tcl_Interp* interp) +} +declare 142 generic { + int Tcl_PushCallFrame(Tcl_Interp* interp, Tcl_CallFrame *framePtr, \ + Tcl_Namespace *nsPtr, int isProcCallFrame) +} +declare 143 generic { + int Tcl_RemoveInterpResolvers(Tcl_Interp *interp, char *name) +} +declare 144 generic { + void Tcl_SetNamespaceResolvers(Tcl_Namespace *namespacePtr, \ + Tcl_ResolveCmdProc *cmdProc, Tcl_ResolveVarProc *varProc, \ + Tcl_ResolveCompiledVarProc *compiledVarProc) +} + +# Compilation procedures for commands in the generic core: + +declare 145 generic { + int TclCompileBreakCmd(Tcl_Interp *interp, char *string, char *lastChar, \ + int compileFlags, struct CompileEnv *compileEnvPtr) +} +declare 146 generic { + int TclCompileCatchCmd(Tcl_Interp *interp, char *string, char *lastChar, \ + int compileFlags, struct CompileEnv *compileEnvPtr) +} +declare 147 generic { + int TclCompileContinueCmd(Tcl_Interp *interp, char *string, \ + char *lastChar, int compileFlags, struct CompileEnv *compileEnvPtr) +} +declare 148 generic { + int TclCompileExprCmd(Tcl_Interp *interp, char *string, char *lastChar, \ + int compileFlags, struct CompileEnv *compileEnvPtr) +} +declare 149 generic { + int TclCompileForCmd(Tcl_Interp *interp, char *string, char *lastChar, \ + int compileFlags, struct CompileEnv *compileEnvPtr) +} +declare 150 generic { + int TclCompileForeachCmd(Tcl_Interp *interp, char *string, \ + char *lastChar, int compileFlags, struct CompileEnv *compileEnvPtr) +} +declare 151 generic { + int TclCompileIfCmd(Tcl_Interp *interp, char *string, char *lastChar, \ + int compileFlags, struct CompileEnv *compileEnvPtr) +} +declare 152 generic { + int TclCompileIncrCmd(Tcl_Interp *interp, char *string, char *lastChar, \ + int compileFlags, struct CompileEnv *compileEnvPtr) +} +declare 153 generic { + int TclCompileSetCmd(Tcl_Interp *interp, char *string, char *lastChar, \ + int compileFlags, struct CompileEnv *compileEnvPtr) +} +declare 154 generic { + int TclCompileWhileCmd(Tcl_Interp *interp, char *string, char *lastChar, \ + int compileFlags, struct CompileEnv *compileEnvPtr) +} + + +############################################################################## + +# Define the platform specific internal Tcl interface. These functions are +# only available on the designated platform. + +interface tclIntPlat + +# Mac specific internals + +declare 0 mac { + int TclpCheckStackSpace(void) +} +declare 1 mac { + VOID * TclpSysAlloc(long size, int isBin) +} +declare 2 mac { + void TclpSysFree(VOID *ptr) +} +declare 3 mac { + VOID * TclpSysRealloc(VOID *cp, unsigned int size) +} +declare 4 mac { + void TclPlatformExit(int status) +} + +# Windows specific internals + +declare 0 win { + void TclWinConvertError(DWORD errCode) +} +declare 1 win { + void TclWinConvertWSAError(DWORD errCode) +} +declare 2 win { + struct servent * TclWinGetServByName(const char *nm, \ + const char *proto) +} +declare 3 win { + int TclWinGetSockOpt(SOCKET s, int level, int optname, \ + char FAR * optval, int FAR *optlen) +} +declare 4 win { + HINSTANCE TclWinGetTclInstance(void) +} +declare 5 win { + HINSTANCE TclWinLoadLibrary(char *name) +} +declare 6 win { + u_short TclWinNToHS(u_short ns) +} +declare 7 win { + int TclWinSetSockOpt(SOCKET s, int level, int optname, \ + const char FAR * optval, int optlen) +} diff --git a/generic/tclIntDecls.h b/generic/tclIntDecls.h new file mode 100644 index 0000000..6f9dba0 --- /dev/null +++ b/generic/tclIntDecls.h @@ -0,0 +1,1324 @@ +/* + * tclIntDecls.h -- + * + * This file contains the declarations for all unsupported + * functions that are exported by the Tcl library. These + * interfaces are not guaranteed to remain the same between + * versions. Use at your own risk. + * + * Copyright (c) 1998-1999 by Scriptics Corporation. + * + * See the file "license.terms" for information on usage and redistribution + * of this file, and for a DISCLAIMER OF ALL WARRANTIES. + * + * RCS: @(#) $Id: tclIntDecls.h,v 1.1 1999/03/03 00:38:41 stanton Exp $ + */ + +#ifndef _TCLINTDECLS +#define _TCLINTDECLS + +/* + * WARNING: This file is automatically generated by the tools/genStubs.tcl + * script. Any modifications to the function declarations below should be made + * in the generic/tclInt.decls script. + */ + +/* !BEGIN!: Do not edit below this line. */ + +/* + * Exported function declarations: + */ + +/* 0 */ +EXTERN int TclAccess _ANSI_ARGS_((CONST char * path, int mode)); +/* 1 */ +EXTERN int TclAccessDeleteProc _ANSI_ARGS_(( + TclAccessProc_ * proc)); +/* 2 */ +EXTERN int TclAccessInsertProc _ANSI_ARGS_(( + TclAccessProc_ * proc)); +/* 3 */ +EXTERN void TclAllocateFreeObjects _ANSI_ARGS_((void)); +/* 4 */ +EXTERN int TclChdir _ANSI_ARGS_((Tcl_Interp * interp, + char * dirName)); +/* 5 */ +EXTERN int TclCleanupChildren _ANSI_ARGS_((Tcl_Interp * interp, + int numPids, Tcl_Pid * pidPtr, + Tcl_Channel errorChan)); +/* 6 */ +EXTERN void TclCleanupCommand _ANSI_ARGS_((Command * cmdPtr)); +/* 7 */ +EXTERN int TclCopyAndCollapse _ANSI_ARGS_((int count, + char * src, char * dst)); +/* 8 */ +EXTERN int TclCopyChannel _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Channel inChan, Tcl_Channel outChan, + int toRead, Tcl_Obj * cmdPtr)); +/* 9 */ +EXTERN int TclCreatePipeline _ANSI_ARGS_((Tcl_Interp * interp, + int argc, char ** argv, + Tcl_Pid ** pidArrayPtr, TclFile * inPipePtr, + TclFile * outPipePtr, TclFile * errFilePtr)); +/* 10 */ +EXTERN int TclCreateProc _ANSI_ARGS_((Tcl_Interp * interp, + Namespace * nsPtr, char * procName, + Tcl_Obj * argsPtr, Tcl_Obj * bodyPtr, + Proc ** procPtrPtr)); +/* 11 */ +EXTERN void TclDeleteCompiledLocalVars _ANSI_ARGS_(( + Interp * iPtr, CallFrame * framePtr)); +/* 12 */ +EXTERN void TclDeleteVars _ANSI_ARGS_((Interp * iPtr, + Tcl_HashTable * tablePtr)); +/* 13 */ +EXTERN int TclDoGlob _ANSI_ARGS_((Tcl_Interp * interp, + char * separators, Tcl_DString * headPtr, + char * tail)); +/* 14 */ +EXTERN void TclDumpMemoryInfo _ANSI_ARGS_((FILE * outFile)); +/* 15 */ +EXTERN void TclExpandParseValue _ANSI_ARGS_((ParseValue * pvPtr, + int needed)); +/* 16 */ +EXTERN void TclExprFloatError _ANSI_ARGS_((Tcl_Interp * interp, + double value)); +/* 17 */ +EXTERN int TclFileAttrsCmd _ANSI_ARGS_((Tcl_Interp * interp, + int objc, Tcl_Obj *CONST objv[])); +/* 18 */ +EXTERN int TclFileCopyCmd _ANSI_ARGS_((Tcl_Interp * interp, + int argc, char ** argv)); +/* 19 */ +EXTERN int TclFileDeleteCmd _ANSI_ARGS_((Tcl_Interp * interp, + int argc, char ** argv)); +/* 20 */ +EXTERN int TclFileMakeDirsCmd _ANSI_ARGS_((Tcl_Interp * interp, + int argc, char ** argv)); +/* 21 */ +EXTERN int TclFileRenameCmd _ANSI_ARGS_((Tcl_Interp * interp, + int argc, char ** argv)); +/* 22 */ +EXTERN void TclFinalizeCompExecEnv _ANSI_ARGS_((void)); +/* 23 */ +EXTERN void TclFinalizeEnvironment _ANSI_ARGS_((void)); +/* 24 */ +EXTERN void TclFinalizeExecEnv _ANSI_ARGS_((void)); +/* 25 */ +EXTERN int TclFindElement _ANSI_ARGS_((Tcl_Interp * interp, + char * list, int listLength, + char ** elementPtr, char ** nextPtr, + int * sizePtr, int * bracePtr)); +/* 26 */ +EXTERN Proc * TclFindProc _ANSI_ARGS_((Interp * iPtr, + char * procName)); +/* 27 */ +EXTERN int TclFormatInt _ANSI_ARGS_((char * buffer, long n)); +/* 28 */ +EXTERN void TclFreePackageInfo _ANSI_ARGS_((Interp * iPtr)); +/* 29 */ +EXTERN void TclGetAndDetachPids _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Channel chan)); +/* 30 */ +EXTERN char * TclGetCwd _ANSI_ARGS_((Tcl_Interp * interp)); +/* 31 */ +EXTERN int TclGetDate _ANSI_ARGS_((char * p, unsigned long now, + long zone, unsigned long * timePtr)); +/* 32 */ +EXTERN Tcl_Channel TclGetDefaultStdChannel _ANSI_ARGS_((int type)); +/* 33 */ +EXTERN Tcl_Obj * TclGetElementOfIndexedArray _ANSI_ARGS_(( + Tcl_Interp * interp, int localIndex, + Tcl_Obj * elemPtr, int leaveErrorMsg)); +/* 34 */ +EXTERN char * TclGetEnv _ANSI_ARGS_((CONST char * name)); +/* 35 */ +EXTERN char * TclGetExtension _ANSI_ARGS_((char * name)); +/* 36 */ +EXTERN int TclGetFrame _ANSI_ARGS_((Tcl_Interp * interp, + char * string, CallFrame ** framePtrPtr)); +/* 37 */ +EXTERN TclCmdProcType TclGetInterpProc _ANSI_ARGS_((void)); +/* 38 */ +EXTERN int TclGetIntForIndex _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Obj * objPtr, int endValue, + int * indexPtr)); +/* 39 */ +EXTERN Tcl_Obj * TclGetIndexedScalar _ANSI_ARGS_((Tcl_Interp * interp, + int localIndex, int leaveErrorMsg)); +/* 40 */ +EXTERN int TclGetLong _ANSI_ARGS_((Tcl_Interp * interp, + char * string, long * longPtr)); +/* 41 */ +EXTERN int TclGetLoadedPackages _ANSI_ARGS_(( + Tcl_Interp * interp, char * targetName)); +/* 42 */ +EXTERN int TclGetNamespaceForQualName _ANSI_ARGS_(( + Tcl_Interp * interp, char * qualName, + Namespace * cxtNsPtr, int flags, + Namespace ** nsPtrPtr, + Namespace ** altNsPtrPtr, + Namespace ** actualCxtPtrPtr, + char ** simpleNamePtr)); +/* 43 */ +EXTERN TclObjCmdProcType TclGetObjInterpProc _ANSI_ARGS_((void)); +/* 44 */ +EXTERN int TclGetOpenMode _ANSI_ARGS_((Tcl_Interp * interp, + char * string, int * seekFlagPtr)); +/* 45 */ +EXTERN Tcl_Command TclGetOriginalCommand _ANSI_ARGS_(( + Tcl_Command command)); +/* 46 */ +EXTERN char * TclpGetUserHome _ANSI_ARGS_((char * name, + Tcl_DString * bufferPtr)); +/* 47 */ +EXTERN int TclGlobalInvoke _ANSI_ARGS_((Tcl_Interp * interp, + int argc, char ** argv, int flags)); +/* 48 */ +EXTERN int TclGuessPackageName _ANSI_ARGS_((char * fileName, + Tcl_DString * bufPtr)); +/* 49 */ +EXTERN int TclHasSockets _ANSI_ARGS_((Tcl_Interp * interp)); +/* 50 */ +EXTERN int TclHideUnsafeCommands _ANSI_ARGS_(( + Tcl_Interp * interp)); +/* 51 */ +EXTERN int TclInExit _ANSI_ARGS_((void)); +/* 52 */ +EXTERN Tcl_Obj * TclIncrElementOfIndexedArray _ANSI_ARGS_(( + Tcl_Interp * interp, int localIndex, + Tcl_Obj * elemPtr, long incrAmount)); +/* 53 */ +EXTERN Tcl_Obj * TclIncrIndexedScalar _ANSI_ARGS_(( + Tcl_Interp * interp, int localIndex, + long incrAmount)); +/* 54 */ +EXTERN Tcl_Obj * TclIncrVar2 _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Obj * part1Ptr, Tcl_Obj * part2Ptr, + long incrAmount, int part1NotParsed)); +/* 55 */ +EXTERN void TclInitCompiledLocals _ANSI_ARGS_(( + Tcl_Interp * interp, CallFrame * framePtr, + Namespace * nsPtr)); +/* 56 */ +EXTERN void TclInitNamespaces _ANSI_ARGS_((void)); +/* 57 */ +EXTERN int TclInterpInit _ANSI_ARGS_((Tcl_Interp * interp)); +/* 58 */ +EXTERN int TclInvoke _ANSI_ARGS_((Tcl_Interp * interp, int argc, + char ** argv, int flags)); +/* 59 */ +EXTERN int TclInvokeObjectCommand _ANSI_ARGS_(( + ClientData clientData, Tcl_Interp * interp, + int argc, char ** argv)); +/* 60 */ +EXTERN int TclInvokeStringCommand _ANSI_ARGS_(( + ClientData clientData, Tcl_Interp * interp, + int objc, Tcl_Obj *CONST objv[])); +/* 61 */ +EXTERN Proc * TclIsProc _ANSI_ARGS_((Command * cmdPtr)); +/* 62 */ +EXTERN int TclLoadFile _ANSI_ARGS_((Tcl_Interp * interp, + char * fileName, char * sym1, char * sym2, + Tcl_PackageInitProc ** proc1Ptr, + Tcl_PackageInitProc ** proc2Ptr)); +/* 63 */ +EXTERN int TclLooksLikeInt _ANSI_ARGS_((char * p)); +/* 64 */ +EXTERN Var * TclLookupVar _ANSI_ARGS_((Tcl_Interp * interp, + char * part1, char * part2, int flags, + char * msg, int createPart1, int createPart2, + Var ** arrayPtrPtr)); +/* 65 */ +EXTERN int TclMatchFiles _ANSI_ARGS_((Tcl_Interp * interp, + char * separators, Tcl_DString * dirPtr, + char * pattern, char * tail)); +/* 66 */ +EXTERN int TclNeedSpace _ANSI_ARGS_((char * start, char * end)); +/* 67 */ +EXTERN Tcl_Obj * TclNewProcBodyObj _ANSI_ARGS_((Proc * procPtr)); +/* 68 */ +EXTERN int TclObjCommandComplete _ANSI_ARGS_((Tcl_Obj * cmdPtr)); +/* 69 */ +EXTERN int TclObjInterpProc _ANSI_ARGS_((ClientData clientData, + Tcl_Interp * interp, int objc, + Tcl_Obj *CONST objv[])); +/* 70 */ +EXTERN int TclObjInvoke _ANSI_ARGS_((Tcl_Interp * interp, + int objc, Tcl_Obj *CONST objv[], int flags)); +/* 71 */ +EXTERN int TclObjInvokeGlobal _ANSI_ARGS_((Tcl_Interp * interp, + int objc, Tcl_Obj *CONST objv[], int flags)); +/* 72 */ +EXTERN int TclOpenFileChannelDeleteProc _ANSI_ARGS_(( + TclOpenFileChannelProc_ * proc)); +/* 73 */ +EXTERN int TclOpenFileChannelInsertProc _ANSI_ARGS_(( + TclOpenFileChannelProc_ * proc)); +/* 74 */ +EXTERN char * TclpAlloc _ANSI_ARGS_((unsigned int size)); +/* 75 */ +EXTERN int TclpCloseFile _ANSI_ARGS_((TclFile file)); +/* 76 */ +EXTERN int TclpCopyFile _ANSI_ARGS_((char * source, char * dest)); +/* 77 */ +EXTERN int TclpCopyDirectory _ANSI_ARGS_((char * source, + char * dest, Tcl_DString * errorPtr)); +/* 78 */ +EXTERN Tcl_Channel TclpCreateCommandChannel _ANSI_ARGS_(( + TclFile readFile, TclFile writeFile, + TclFile errorFile, int numPids, + Tcl_Pid * pidPtr)); +/* 79 */ +EXTERN int TclpCreateDirectory _ANSI_ARGS_((char * path)); +/* 80 */ +EXTERN int TclpCreatePipe _ANSI_ARGS_((TclFile * readPipe, + TclFile * writePipe)); +/* 81 */ +EXTERN int TclpCreateProcess _ANSI_ARGS_((Tcl_Interp * interp, + int argc, char ** argv, TclFile inputFile, + TclFile outputFile, TclFile errorFile, + Tcl_Pid * pidPtr)); +/* 82 */ +EXTERN TclFile TclpCreateTempFile _ANSI_ARGS_((char * contents, + Tcl_DString * namePtr)); +/* 83 */ +EXTERN int TclpDeleteFile _ANSI_ARGS_((char * path)); +/* 84 */ +EXTERN void TclpFinalize _ANSI_ARGS_((void)); +/* 85 */ +EXTERN void TclpFree _ANSI_ARGS_((char * ptr)); +/* 86 */ +EXTERN unsigned long TclpGetClicks _ANSI_ARGS_((void)); +/* 87 */ +EXTERN unsigned long TclpGetSeconds _ANSI_ARGS_((void)); +/* 88 */ +EXTERN void TclpGetTime _ANSI_ARGS_((Tcl_Time * time)); +/* 89 */ +EXTERN int TclpGetTimeZone _ANSI_ARGS_((unsigned long time)); +/* 90 */ +EXTERN char * TclpGetTZName _ANSI_ARGS_((void)); +/* 91 */ +EXTERN int TclpListVolumes _ANSI_ARGS_((Tcl_Interp * interp)); +/* 92 */ +EXTERN TclFile TclpMakeFile _ANSI_ARGS_((Tcl_Channel channel, + int direction)); +/* 93 */ +EXTERN TclFile TclpOpenFile _ANSI_ARGS_((char * fname, int mode)); +/* 94 */ +EXTERN Tcl_Channel TclpOpenFileChannel _ANSI_ARGS_((Tcl_Interp * interp, + char * fileName, char * modeString, + int permissions)); +/* 95 */ +EXTERN char * TclpRealloc _ANSI_ARGS_((char * ptr, + unsigned int size)); +/* 96 */ +EXTERN int TclpRemoveDirectory _ANSI_ARGS_((char * path, + int recursive, Tcl_DString * errorPtr)); +/* 97 */ +EXTERN int TclpRenameFile _ANSI_ARGS_((char * source, + char * dest)); +/* 98 */ +EXTERN int TclParseBraces _ANSI_ARGS_((Tcl_Interp * interp, + char * string, char ** termPtr, + ParseValue * pvPtr)); +/* 99 */ +EXTERN int TclParseNestedCmd _ANSI_ARGS_((Tcl_Interp * interp, + char * string, int flags, char ** termPtr, + ParseValue * pvPtr)); +/* 100 */ +EXTERN int TclParseQuotes _ANSI_ARGS_((Tcl_Interp * interp, + char * string, int termChar, int flags, + char ** termPtr, ParseValue * pvPtr)); +/* 101 */ +EXTERN void TclPlatformInit _ANSI_ARGS_((Tcl_Interp * interp)); +/* 102 */ +EXTERN char * TclPrecTraceProc _ANSI_ARGS_((ClientData clientData, + Tcl_Interp * interp, char * name1, + char * name2, int flags)); +/* 103 */ +EXTERN int TclPreventAliasLoop _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Interp * cmdInterp, Tcl_Command cmd)); +/* 104 */ +EXTERN void TclPrintByteCodeObj _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Obj * objPtr)); +/* 105 */ +EXTERN void TclProcCleanupProc _ANSI_ARGS_((Proc * procPtr)); +/* 106 */ +EXTERN int TclProcCompileProc _ANSI_ARGS_((Tcl_Interp * interp, + Proc * procPtr, Tcl_Obj * bodyPtr, + Namespace * nsPtr, CONST char * description, + CONST char * procName)); +/* 107 */ +EXTERN void TclProcDeleteProc _ANSI_ARGS_((ClientData clientData)); +/* 108 */ +EXTERN int TclProcInterpProc _ANSI_ARGS_((ClientData clientData, + Tcl_Interp * interp, int argc, char ** argv)); +/* 109 */ +EXTERN int TclRenameCommand _ANSI_ARGS_((Tcl_Interp * interp, + char * oldName, char * newName)); +/* 110 */ +EXTERN void TclResetShadowedCmdRefs _ANSI_ARGS_(( + Tcl_Interp * interp, Command * newCmdPtr)); +/* 111 */ +EXTERN int TclServiceIdle _ANSI_ARGS_((void)); +/* 112 */ +EXTERN Tcl_Obj * TclSetElementOfIndexedArray _ANSI_ARGS_(( + Tcl_Interp * interp, int localIndex, + Tcl_Obj * elemPtr, Tcl_Obj * objPtr, + int leaveErrorMsg)); +/* 113 */ +EXTERN Tcl_Obj * TclSetIndexedScalar _ANSI_ARGS_((Tcl_Interp * interp, + int localIndex, Tcl_Obj * objPtr, + int leaveErrorMsg)); +/* 114 */ +EXTERN char * TclSetPreInitScript _ANSI_ARGS_((char * string)); +/* 115 */ +EXTERN void TclSetupEnv _ANSI_ARGS_((Tcl_Interp * interp)); +/* 116 */ +EXTERN int TclSockGetPort _ANSI_ARGS_((Tcl_Interp * interp, + char * string, char * proto, int * portPtr)); +/* 117 */ +EXTERN int TclSockMinimumBuffers _ANSI_ARGS_((int sock, + int size)); +/* 118 */ +EXTERN int TclStat _ANSI_ARGS_((CONST char * path, + TclStat_ * buf)); +/* 119 */ +EXTERN int TclStatDeleteProc _ANSI_ARGS_((TclStatProc_ * proc)); +/* 120 */ +EXTERN int TclStatInsertProc _ANSI_ARGS_((TclStatProc_ * proc)); +/* 121 */ +EXTERN void TclTeardownNamespace _ANSI_ARGS_((Namespace * nsPtr)); +/* 122 */ +EXTERN int TclUpdateReturnInfo _ANSI_ARGS_((Interp * iPtr)); +/* 123 */ +EXTERN char * TclWordEnd _ANSI_ARGS_((char * start, + char * lastChar, int nested, int * semiPtr)); +/* 124 */ +EXTERN void Tcl_AddInterpResolvers _ANSI_ARGS_(( + Tcl_Interp * interp, char * name, + Tcl_ResolveCmdProc * cmdProc, + Tcl_ResolveVarProc * varProc, + Tcl_ResolveCompiledVarProc * compiledVarProc)); +/* 125 */ +EXTERN int Tcl_AppendExportList _ANSI_ARGS_(( + Tcl_Interp * interp, Tcl_Namespace * nsPtr, + Tcl_Obj * objPtr)); +/* 126 */ +EXTERN Tcl_Namespace * Tcl_CreateNamespace _ANSI_ARGS_((Tcl_Interp * interp, + char * name, ClientData clientData, + Tcl_NamespaceDeleteProc * deleteProc)); +/* 127 */ +EXTERN void Tcl_DeleteNamespace _ANSI_ARGS_(( + Tcl_Namespace * nsPtr)); +/* 128 */ +EXTERN int Tcl_Export _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Namespace * nsPtr, char * pattern, + int resetListFirst)); +/* 129 */ +EXTERN Tcl_Command Tcl_FindCommand _ANSI_ARGS_((Tcl_Interp * interp, + char * name, Tcl_Namespace * contextNsPtr, + int flags)); +/* 130 */ +EXTERN Tcl_Namespace * Tcl_FindNamespace _ANSI_ARGS_((Tcl_Interp * interp, + char * name, Tcl_Namespace * contextNsPtr, + int flags)); +/* 131 */ +EXTERN int Tcl_GetInterpResolvers _ANSI_ARGS_(( + Tcl_Interp * interp, char * name, + Tcl_ResolverInfo * resInfo)); +/* 132 */ +EXTERN int Tcl_GetNamespaceResolvers _ANSI_ARGS_(( + Tcl_Namespace * namespacePtr, + Tcl_ResolverInfo * resInfo)); +/* 133 */ +EXTERN Tcl_Var Tcl_FindNamespaceVar _ANSI_ARGS_(( + Tcl_Interp * interp, char * name, + Tcl_Namespace * contextNsPtr, int flags)); +/* 134 */ +EXTERN int Tcl_ForgetImport _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Namespace * nsPtr, char * pattern)); +/* 135 */ +EXTERN Tcl_Command Tcl_GetCommandFromObj _ANSI_ARGS_(( + Tcl_Interp * interp, Tcl_Obj * objPtr)); +/* 136 */ +EXTERN void Tcl_GetCommandFullName _ANSI_ARGS_(( + Tcl_Interp * interp, Tcl_Command command, + Tcl_Obj * objPtr)); +/* 137 */ +EXTERN Tcl_Namespace * Tcl_GetCurrentNamespace _ANSI_ARGS_(( + Tcl_Interp * interp)); +/* 138 */ +EXTERN Tcl_Namespace * Tcl_GetGlobalNamespace _ANSI_ARGS_(( + Tcl_Interp * interp)); +/* 139 */ +EXTERN void Tcl_GetVariableFullName _ANSI_ARGS_(( + Tcl_Interp * interp, Tcl_Var variable, + Tcl_Obj * objPtr)); +/* 140 */ +EXTERN int Tcl_Import _ANSI_ARGS_((Tcl_Interp * interp, + Tcl_Namespace * nsPtr, char * pattern, + int allowOverwrite)); +/* 141 */ +EXTERN void Tcl_PopCallFrame _ANSI_ARGS_((Tcl_Interp* interp)); +/* 142 */ +EXTERN int Tcl_PushCallFrame _ANSI_ARGS_((Tcl_Interp* interp, + Tcl_CallFrame * framePtr, + Tcl_Namespace * nsPtr, int isProcCallFrame)); +/* 143 */ +EXTERN int Tcl_RemoveInterpResolvers _ANSI_ARGS_(( + Tcl_Interp * interp, char * name)); +/* 144 */ +EXTERN void Tcl_SetNamespaceResolvers _ANSI_ARGS_(( + Tcl_Namespace * namespacePtr, + Tcl_ResolveCmdProc * cmdProc, + Tcl_ResolveVarProc * varProc, + Tcl_ResolveCompiledVarProc * compiledVarProc)); +/* 145 */ +EXTERN int TclCompileBreakCmd _ANSI_ARGS_((Tcl_Interp * interp, + char * string, char * lastChar, + int compileFlags, + struct CompileEnv * compileEnvPtr)); +/* 146 */ +EXTERN int TclCompileCatchCmd _ANSI_ARGS_((Tcl_Interp * interp, + char * string, char * lastChar, + int compileFlags, + struct CompileEnv * compileEnvPtr)); +/* 147 */ +EXTERN int TclCompileContinueCmd _ANSI_ARGS_(( + Tcl_Interp * interp, char * string, + char * lastChar, int compileFlags, + struct CompileEnv * compileEnvPtr)); +/* 148 */ +EXTERN int TclCompileExprCmd _ANSI_ARGS_((Tcl_Interp * interp, + char * string, char * lastChar, + int compileFlags, + struct CompileEnv * compileEnvPtr)); +/* 149 */ +EXTERN int TclCompileForCmd _ANSI_ARGS_((Tcl_Interp * interp, + char * string, char * lastChar, + int compileFlags, + struct CompileEnv * compileEnvPtr)); +/* 150 */ +EXTERN int TclCompileForeachCmd _ANSI_ARGS_(( + Tcl_Interp * interp, char * string, + char * lastChar, int compileFlags, + struct CompileEnv * compileEnvPtr)); +/* 151 */ +EXTERN int TclCompileIfCmd _ANSI_ARGS_((Tcl_Interp * interp, + char * string, char * lastChar, + int compileFlags, + struct CompileEnv * compileEnvPtr)); +/* 152 */ +EXTERN int TclCompileIncrCmd _ANSI_ARGS_((Tcl_Interp * interp, + char * string, char * lastChar, + int compileFlags, + struct CompileEnv * compileEnvPtr)); +/* 153 */ +EXTERN int TclCompileSetCmd _ANSI_ARGS_((Tcl_Interp * interp, + char * string, char * lastChar, + int compileFlags, + struct CompileEnv * compileEnvPtr)); +/* 154 */ +EXTERN int TclCompileWhileCmd _ANSI_ARGS_((Tcl_Interp * interp, + char * string, char * lastChar, + int compileFlags, + struct CompileEnv * compileEnvPtr)); + +typedef struct TclIntStubs { + int magic; + struct TclIntStubHooks *hooks; + + int (*tclAccess) _ANSI_ARGS_((CONST char * path, int mode)); /* 0 */ + int (*tclAccessDeleteProc) _ANSI_ARGS_((TclAccessProc_ * proc)); /* 1 */ + int (*tclAccessInsertProc) _ANSI_ARGS_((TclAccessProc_ * proc)); /* 2 */ + void (*tclAllocateFreeObjects) _ANSI_ARGS_((void)); /* 3 */ + int (*tclChdir) _ANSI_ARGS_((Tcl_Interp * interp, char * dirName)); /* 4 */ + int (*tclCleanupChildren) _ANSI_ARGS_((Tcl_Interp * interp, int numPids, Tcl_Pid * pidPtr, Tcl_Channel errorChan)); /* 5 */ + void (*tclCleanupCommand) _ANSI_ARGS_((Command * cmdPtr)); /* 6 */ + int (*tclCopyAndCollapse) _ANSI_ARGS_((int count, char * src, char * dst)); /* 7 */ + int (*tclCopyChannel) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Channel inChan, Tcl_Channel outChan, int toRead, Tcl_Obj * cmdPtr)); /* 8 */ + int (*tclCreatePipeline) _ANSI_ARGS_((Tcl_Interp * interp, int argc, char ** argv, Tcl_Pid ** pidArrayPtr, TclFile * inPipePtr, TclFile * outPipePtr, TclFile * errFilePtr)); /* 9 */ + int (*tclCreateProc) _ANSI_ARGS_((Tcl_Interp * interp, Namespace * nsPtr, char * procName, Tcl_Obj * argsPtr, Tcl_Obj * bodyPtr, Proc ** procPtrPtr)); /* 10 */ + void (*tclDeleteCompiledLocalVars) _ANSI_ARGS_((Interp * iPtr, CallFrame * framePtr)); /* 11 */ + void (*tclDeleteVars) _ANSI_ARGS_((Interp * iPtr, Tcl_HashTable * tablePtr)); /* 12 */ + int (*tclDoGlob) _ANSI_ARGS_((Tcl_Interp * interp, char * separators, Tcl_DString * headPtr, char * tail)); /* 13 */ + void (*tclDumpMemoryInfo) _ANSI_ARGS_((FILE * outFile)); /* 14 */ + void (*tclExpandParseValue) _ANSI_ARGS_((ParseValue * pvPtr, int needed)); /* 15 */ + void (*tclExprFloatError) _ANSI_ARGS_((Tcl_Interp * interp, double value)); /* 16 */ + int (*tclFileAttrsCmd) _ANSI_ARGS_((Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 17 */ + int (*tclFileCopyCmd) _ANSI_ARGS_((Tcl_Interp * interp, int argc, char ** argv)); /* 18 */ + int (*tclFileDeleteCmd) _ANSI_ARGS_((Tcl_Interp * interp, int argc, char ** argv)); /* 19 */ + int (*tclFileMakeDirsCmd) _ANSI_ARGS_((Tcl_Interp * interp, int argc, char ** argv)); /* 20 */ + int (*tclFileRenameCmd) _ANSI_ARGS_((Tcl_Interp * interp, int argc, char ** argv)); /* 21 */ + void (*tclFinalizeCompExecEnv) _ANSI_ARGS_((void)); /* 22 */ + void (*tclFinalizeEnvironment) _ANSI_ARGS_((void)); /* 23 */ + void (*tclFinalizeExecEnv) _ANSI_ARGS_((void)); /* 24 */ + int (*tclFindElement) _ANSI_ARGS_((Tcl_Interp * interp, char * list, int listLength, char ** elementPtr, char ** nextPtr, int * sizePtr, int * bracePtr)); /* 25 */ + Proc * (*tclFindProc) _ANSI_ARGS_((Interp * iPtr, char * procName)); /* 26 */ + int (*tclFormatInt) _ANSI_ARGS_((char * buffer, long n)); /* 27 */ + void (*tclFreePackageInfo) _ANSI_ARGS_((Interp * iPtr)); /* 28 */ + void (*tclGetAndDetachPids) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Channel chan)); /* 29 */ + char * (*tclGetCwd) _ANSI_ARGS_((Tcl_Interp * interp)); /* 30 */ + int (*tclGetDate) _ANSI_ARGS_((char * p, unsigned long now, long zone, unsigned long * timePtr)); /* 31 */ + Tcl_Channel (*tclGetDefaultStdChannel) _ANSI_ARGS_((int type)); /* 32 */ + Tcl_Obj * (*tclGetElementOfIndexedArray) _ANSI_ARGS_((Tcl_Interp * interp, int localIndex, Tcl_Obj * elemPtr, int leaveErrorMsg)); /* 33 */ + char * (*tclGetEnv) _ANSI_ARGS_((CONST char * name)); /* 34 */ + char * (*tclGetExtension) _ANSI_ARGS_((char * name)); /* 35 */ + int (*tclGetFrame) _ANSI_ARGS_((Tcl_Interp * interp, char * string, CallFrame ** framePtrPtr)); /* 36 */ + TclCmdProcType (*tclGetInterpProc) _ANSI_ARGS_((void)); /* 37 */ + int (*tclGetIntForIndex) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, int endValue, int * indexPtr)); /* 38 */ + Tcl_Obj * (*tclGetIndexedScalar) _ANSI_ARGS_((Tcl_Interp * interp, int localIndex, int leaveErrorMsg)); /* 39 */ + int (*tclGetLong) _ANSI_ARGS_((Tcl_Interp * interp, char * string, long * longPtr)); /* 40 */ + int (*tclGetLoadedPackages) _ANSI_ARGS_((Tcl_Interp * interp, char * targetName)); /* 41 */ + int (*tclGetNamespaceForQualName) _ANSI_ARGS_((Tcl_Interp * interp, char * qualName, Namespace * cxtNsPtr, int flags, Namespace ** nsPtrPtr, Namespace ** altNsPtrPtr, Namespace ** actualCxtPtrPtr, char ** simpleNamePtr)); /* 42 */ + TclObjCmdProcType (*tclGetObjInterpProc) _ANSI_ARGS_((void)); /* 43 */ + int (*tclGetOpenMode) _ANSI_ARGS_((Tcl_Interp * interp, char * string, int * seekFlagPtr)); /* 44 */ + Tcl_Command (*tclGetOriginalCommand) _ANSI_ARGS_((Tcl_Command command)); /* 45 */ + char * (*tclpGetUserHome) _ANSI_ARGS_((char * name, Tcl_DString * bufferPtr)); /* 46 */ + int (*tclGlobalInvoke) _ANSI_ARGS_((Tcl_Interp * interp, int argc, char ** argv, int flags)); /* 47 */ + int (*tclGuessPackageName) _ANSI_ARGS_((char * fileName, Tcl_DString * bufPtr)); /* 48 */ + int (*tclHasSockets) _ANSI_ARGS_((Tcl_Interp * interp)); /* 49 */ + int (*tclHideUnsafeCommands) _ANSI_ARGS_((Tcl_Interp * interp)); /* 50 */ + int (*tclInExit) _ANSI_ARGS_((void)); /* 51 */ + Tcl_Obj * (*tclIncrElementOfIndexedArray) _ANSI_ARGS_((Tcl_Interp * interp, int localIndex, Tcl_Obj * elemPtr, long incrAmount)); /* 52 */ + Tcl_Obj * (*tclIncrIndexedScalar) _ANSI_ARGS_((Tcl_Interp * interp, int localIndex, long incrAmount)); /* 53 */ + Tcl_Obj * (*tclIncrVar2) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * part1Ptr, Tcl_Obj * part2Ptr, long incrAmount, int part1NotParsed)); /* 54 */ + void (*tclInitCompiledLocals) _ANSI_ARGS_((Tcl_Interp * interp, CallFrame * framePtr, Namespace * nsPtr)); /* 55 */ + void (*tclInitNamespaces) _ANSI_ARGS_((void)); /* 56 */ + int (*tclInterpInit) _ANSI_ARGS_((Tcl_Interp * interp)); /* 57 */ + int (*tclInvoke) _ANSI_ARGS_((Tcl_Interp * interp, int argc, char ** argv, int flags)); /* 58 */ + int (*tclInvokeObjectCommand) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int argc, char ** argv)); /* 59 */ + int (*tclInvokeStringCommand) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 60 */ + Proc * (*tclIsProc) _ANSI_ARGS_((Command * cmdPtr)); /* 61 */ + int (*tclLoadFile) _ANSI_ARGS_((Tcl_Interp * interp, char * fileName, char * sym1, char * sym2, Tcl_PackageInitProc ** proc1Ptr, Tcl_PackageInitProc ** proc2Ptr)); /* 62 */ + int (*tclLooksLikeInt) _ANSI_ARGS_((char * p)); /* 63 */ + Var * (*tclLookupVar) _ANSI_ARGS_((Tcl_Interp * interp, char * part1, char * part2, int flags, char * msg, int createPart1, int createPart2, Var ** arrayPtrPtr)); /* 64 */ + int (*tclMatchFiles) _ANSI_ARGS_((Tcl_Interp * interp, char * separators, Tcl_DString * dirPtr, char * pattern, char * tail)); /* 65 */ + int (*tclNeedSpace) _ANSI_ARGS_((char * start, char * end)); /* 66 */ + Tcl_Obj * (*tclNewProcBodyObj) _ANSI_ARGS_((Proc * procPtr)); /* 67 */ + int (*tclObjCommandComplete) _ANSI_ARGS_((Tcl_Obj * cmdPtr)); /* 68 */ + int (*tclObjInterpProc) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 69 */ + int (*tclObjInvoke) _ANSI_ARGS_((Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[], int flags)); /* 70 */ + int (*tclObjInvokeGlobal) _ANSI_ARGS_((Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[], int flags)); /* 71 */ + int (*tclOpenFileChannelDeleteProc) _ANSI_ARGS_((TclOpenFileChannelProc_ * proc)); /* 72 */ + int (*tclOpenFileChannelInsertProc) _ANSI_ARGS_((TclOpenFileChannelProc_ * proc)); /* 73 */ + char * (*tclpAlloc) _ANSI_ARGS_((unsigned int size)); /* 74 */ + int (*tclpCloseFile) _ANSI_ARGS_((TclFile file)); /* 75 */ + int (*tclpCopyFile) _ANSI_ARGS_((char * source, char * dest)); /* 76 */ + int (*tclpCopyDirectory) _ANSI_ARGS_((char * source, char * dest, Tcl_DString * errorPtr)); /* 77 */ + Tcl_Channel (*tclpCreateCommandChannel) _ANSI_ARGS_((TclFile readFile, TclFile writeFile, TclFile errorFile, int numPids, Tcl_Pid * pidPtr)); /* 78 */ + int (*tclpCreateDirectory) _ANSI_ARGS_((char * path)); /* 79 */ + int (*tclpCreatePipe) _ANSI_ARGS_((TclFile * readPipe, TclFile * writePipe)); /* 80 */ + int (*tclpCreateProcess) _ANSI_ARGS_((Tcl_Interp * interp, int argc, char ** argv, TclFile inputFile, TclFile outputFile, TclFile errorFile, Tcl_Pid * pidPtr)); /* 81 */ + TclFile (*tclpCreateTempFile) _ANSI_ARGS_((char * contents, Tcl_DString * namePtr)); /* 82 */ + int (*tclpDeleteFile) _ANSI_ARGS_((char * path)); /* 83 */ + void (*tclpFinalize) _ANSI_ARGS_((void)); /* 84 */ + void (*tclpFree) _ANSI_ARGS_((char * ptr)); /* 85 */ + unsigned long (*tclpGetClicks) _ANSI_ARGS_((void)); /* 86 */ + unsigned long (*tclpGetSeconds) _ANSI_ARGS_((void)); /* 87 */ + void (*tclpGetTime) _ANSI_ARGS_((Tcl_Time * time)); /* 88 */ + int (*tclpGetTimeZone) _ANSI_ARGS_((unsigned long time)); /* 89 */ + char * (*tclpGetTZName) _ANSI_ARGS_((void)); /* 90 */ + int (*tclpListVolumes) _ANSI_ARGS_((Tcl_Interp * interp)); /* 91 */ + TclFile (*tclpMakeFile) _ANSI_ARGS_((Tcl_Channel channel, int direction)); /* 92 */ + TclFile (*tclpOpenFile) _ANSI_ARGS_((char * fname, int mode)); /* 93 */ + Tcl_Channel (*tclpOpenFileChannel) _ANSI_ARGS_((Tcl_Interp * interp, char * fileName, char * modeString, int permissions)); /* 94 */ + char * (*tclpRealloc) _ANSI_ARGS_((char * ptr, unsigned int size)); /* 95 */ + int (*tclpRemoveDirectory) _ANSI_ARGS_((char * path, int recursive, Tcl_DString * errorPtr)); /* 96 */ + int (*tclpRenameFile) _ANSI_ARGS_((char * source, char * dest)); /* 97 */ + int (*tclParseBraces) _ANSI_ARGS_((Tcl_Interp * interp, char * string, char ** termPtr, ParseValue * pvPtr)); /* 98 */ + int (*tclParseNestedCmd) _ANSI_ARGS_((Tcl_Interp * interp, char * string, int flags, char ** termPtr, ParseValue * pvPtr)); /* 99 */ + int (*tclParseQuotes) _ANSI_ARGS_((Tcl_Interp * interp, char * string, int termChar, int flags, char ** termPtr, ParseValue * pvPtr)); /* 100 */ + void (*tclPlatformInit) _ANSI_ARGS_((Tcl_Interp * interp)); /* 101 */ + char * (*tclPrecTraceProc) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, char * name1, char * name2, int flags)); /* 102 */ + int (*tclPreventAliasLoop) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Interp * cmdInterp, Tcl_Command cmd)); /* 103 */ + void (*tclPrintByteCodeObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr)); /* 104 */ + void (*tclProcCleanupProc) _ANSI_ARGS_((Proc * procPtr)); /* 105 */ + int (*tclProcCompileProc) _ANSI_ARGS_((Tcl_Interp * interp, Proc * procPtr, Tcl_Obj * bodyPtr, Namespace * nsPtr, CONST char * description, CONST char * procName)); /* 106 */ + void (*tclProcDeleteProc) _ANSI_ARGS_((ClientData clientData)); /* 107 */ + int (*tclProcInterpProc) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int argc, char ** argv)); /* 108 */ + int (*tclRenameCommand) _ANSI_ARGS_((Tcl_Interp * interp, char * oldName, char * newName)); /* 109 */ + void (*tclResetShadowedCmdRefs) _ANSI_ARGS_((Tcl_Interp * interp, Command * newCmdPtr)); /* 110 */ + int (*tclServiceIdle) _ANSI_ARGS_((void)); /* 111 */ + Tcl_Obj * (*tclSetElementOfIndexedArray) _ANSI_ARGS_((Tcl_Interp * interp, int localIndex, Tcl_Obj * elemPtr, Tcl_Obj * objPtr, int leaveErrorMsg)); /* 112 */ + Tcl_Obj * (*tclSetIndexedScalar) _ANSI_ARGS_((Tcl_Interp * interp, int localIndex, Tcl_Obj * objPtr, int leaveErrorMsg)); /* 113 */ + char * (*tclSetPreInitScript) _ANSI_ARGS_((char * string)); /* 114 */ + void (*tclSetupEnv) _ANSI_ARGS_((Tcl_Interp * interp)); /* 115 */ + int (*tclSockGetPort) _ANSI_ARGS_((Tcl_Interp * interp, char * string, char * proto, int * portPtr)); /* 116 */ + int (*tclSockMinimumBuffers) _ANSI_ARGS_((int sock, int size)); /* 117 */ + int (*tclStat) _ANSI_ARGS_((CONST char * path, TclStat_ * buf)); /* 118 */ + int (*tclStatDeleteProc) _ANSI_ARGS_((TclStatProc_ * proc)); /* 119 */ + int (*tclStatInsertProc) _ANSI_ARGS_((TclStatProc_ * proc)); /* 120 */ + void (*tclTeardownNamespace) _ANSI_ARGS_((Namespace * nsPtr)); /* 121 */ + int (*tclUpdateReturnInfo) _ANSI_ARGS_((Interp * iPtr)); /* 122 */ + char * (*tclWordEnd) _ANSI_ARGS_((char * start, char * lastChar, int nested, int * semiPtr)); /* 123 */ + void (*tcl_AddInterpResolvers) _ANSI_ARGS_((Tcl_Interp * interp, char * name, Tcl_ResolveCmdProc * cmdProc, Tcl_ResolveVarProc * varProc, Tcl_ResolveCompiledVarProc * compiledVarProc)); /* 124 */ + int (*tcl_AppendExportList) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Namespace * nsPtr, Tcl_Obj * objPtr)); /* 125 */ + Tcl_Namespace * (*tcl_CreateNamespace) _ANSI_ARGS_((Tcl_Interp * interp, char * name, ClientData clientData, Tcl_NamespaceDeleteProc * deleteProc)); /* 126 */ + void (*tcl_DeleteNamespace) _ANSI_ARGS_((Tcl_Namespace * nsPtr)); /* 127 */ + int (*tcl_Export) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Namespace * nsPtr, char * pattern, int resetListFirst)); /* 128 */ + Tcl_Command (*tcl_FindCommand) _ANSI_ARGS_((Tcl_Interp * interp, char * name, Tcl_Namespace * contextNsPtr, int flags)); /* 129 */ + Tcl_Namespace * (*tcl_FindNamespace) _ANSI_ARGS_((Tcl_Interp * interp, char * name, Tcl_Namespace * contextNsPtr, int flags)); /* 130 */ + int (*tcl_GetInterpResolvers) _ANSI_ARGS_((Tcl_Interp * interp, char * name, Tcl_ResolverInfo * resInfo)); /* 131 */ + int (*tcl_GetNamespaceResolvers) _ANSI_ARGS_((Tcl_Namespace * namespacePtr, Tcl_ResolverInfo * resInfo)); /* 132 */ + Tcl_Var (*tcl_FindNamespaceVar) _ANSI_ARGS_((Tcl_Interp * interp, char * name, Tcl_Namespace * contextNsPtr, int flags)); /* 133 */ + int (*tcl_ForgetImport) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Namespace * nsPtr, char * pattern)); /* 134 */ + Tcl_Command (*tcl_GetCommandFromObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr)); /* 135 */ + void (*tcl_GetCommandFullName) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Command command, Tcl_Obj * objPtr)); /* 136 */ + Tcl_Namespace * (*tcl_GetCurrentNamespace) _ANSI_ARGS_((Tcl_Interp * interp)); /* 137 */ + Tcl_Namespace * (*tcl_GetGlobalNamespace) _ANSI_ARGS_((Tcl_Interp * interp)); /* 138 */ + void (*tcl_GetVariableFullName) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Var variable, Tcl_Obj * objPtr)); /* 139 */ + int (*tcl_Import) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Namespace * nsPtr, char * pattern, int allowOverwrite)); /* 140 */ + void (*tcl_PopCallFrame) _ANSI_ARGS_((Tcl_Interp* interp)); /* 141 */ + int (*tcl_PushCallFrame) _ANSI_ARGS_((Tcl_Interp* interp, Tcl_CallFrame * framePtr, Tcl_Namespace * nsPtr, int isProcCallFrame)); /* 142 */ + int (*tcl_RemoveInterpResolvers) _ANSI_ARGS_((Tcl_Interp * interp, char * name)); /* 143 */ + void (*tcl_SetNamespaceResolvers) _ANSI_ARGS_((Tcl_Namespace * namespacePtr, Tcl_ResolveCmdProc * cmdProc, Tcl_ResolveVarProc * varProc, Tcl_ResolveCompiledVarProc * compiledVarProc)); /* 144 */ + int (*tclCompileBreakCmd) _ANSI_ARGS_((Tcl_Interp * interp, char * string, char * lastChar, int compileFlags, struct CompileEnv * compileEnvPtr)); /* 145 */ + int (*tclCompileCatchCmd) _ANSI_ARGS_((Tcl_Interp * interp, char * string, char * lastChar, int compileFlags, struct CompileEnv * compileEnvPtr)); /* 146 */ + int (*tclCompileContinueCmd) _ANSI_ARGS_((Tcl_Interp * interp, char * string, char * lastChar, int compileFlags, struct CompileEnv * compileEnvPtr)); /* 147 */ + int (*tclCompileExprCmd) _ANSI_ARGS_((Tcl_Interp * interp, char * string, char * lastChar, int compileFlags, struct CompileEnv * compileEnvPtr)); /* 148 */ + int (*tclCompileForCmd) _ANSI_ARGS_((Tcl_Interp * interp, char * string, char * lastChar, int compileFlags, struct CompileEnv * compileEnvPtr)); /* 149 */ + int (*tclCompileForeachCmd) _ANSI_ARGS_((Tcl_Interp * interp, char * string, char * lastChar, int compileFlags, struct CompileEnv * compileEnvPtr)); /* 150 */ + int (*tclCompileIfCmd) _ANSI_ARGS_((Tcl_Interp * interp, char * string, char * lastChar, int compileFlags, struct CompileEnv * compileEnvPtr)); /* 151 */ + int (*tclCompileIncrCmd) _ANSI_ARGS_((Tcl_Interp * interp, char * string, char * lastChar, int compileFlags, struct CompileEnv * compileEnvPtr)); /* 152 */ + int (*tclCompileSetCmd) _ANSI_ARGS_((Tcl_Interp * interp, char * string, char * lastChar, int compileFlags, struct CompileEnv * compileEnvPtr)); /* 153 */ + int (*tclCompileWhileCmd) _ANSI_ARGS_((Tcl_Interp * interp, char * string, char * lastChar, int compileFlags, struct CompileEnv * compileEnvPtr)); /* 154 */ +} TclIntStubs; + +extern TclIntStubs *tclIntStubsPtr; + +#if defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS) + +/* + * Inline function declarations: + */ + +#ifndef TclAccess +#define TclAccess(path, mode) \ + (tclIntStubsPtr->tclAccess)(path, mode) /* 0 */ +#endif +#ifndef TclAccessDeleteProc +#define TclAccessDeleteProc(proc) \ + (tclIntStubsPtr->tclAccessDeleteProc)(proc) /* 1 */ +#endif +#ifndef TclAccessInsertProc +#define TclAccessInsertProc(proc) \ + (tclIntStubsPtr->tclAccessInsertProc)(proc) /* 2 */ +#endif +#ifndef TclAllocateFreeObjects +#define TclAllocateFreeObjects() \ + (tclIntStubsPtr->tclAllocateFreeObjects)() /* 3 */ +#endif +#ifndef TclChdir +#define TclChdir(interp, dirName) \ + (tclIntStubsPtr->tclChdir)(interp, dirName) /* 4 */ +#endif +#ifndef TclCleanupChildren +#define TclCleanupChildren(interp, numPids, pidPtr, errorChan) \ + (tclIntStubsPtr->tclCleanupChildren)(interp, numPids, pidPtr, errorChan) /* 5 */ +#endif +#ifndef TclCleanupCommand +#define TclCleanupCommand(cmdPtr) \ + (tclIntStubsPtr->tclCleanupCommand)(cmdPtr) /* 6 */ +#endif +#ifndef TclCopyAndCollapse +#define TclCopyAndCollapse(count, src, dst) \ + (tclIntStubsPtr->tclCopyAndCollapse)(count, src, dst) /* 7 */ +#endif +#ifndef TclCopyChannel +#define TclCopyChannel(interp, inChan, outChan, toRead, cmdPtr) \ + (tclIntStubsPtr->tclCopyChannel)(interp, inChan, outChan, toRead, cmdPtr) /* 8 */ +#endif +#ifndef TclCreatePipeline +#define TclCreatePipeline(interp, argc, argv, pidArrayPtr, inPipePtr, outPipePtr, errFilePtr) \ + (tclIntStubsPtr->tclCreatePipeline)(interp, argc, argv, pidArrayPtr, inPipePtr, outPipePtr, errFilePtr) /* 9 */ +#endif +#ifndef TclCreateProc +#define TclCreateProc(interp, nsPtr, procName, argsPtr, bodyPtr, procPtrPtr) \ + (tclIntStubsPtr->tclCreateProc)(interp, nsPtr, procName, argsPtr, bodyPtr, procPtrPtr) /* 10 */ +#endif +#ifndef TclDeleteCompiledLocalVars +#define TclDeleteCompiledLocalVars(iPtr, framePtr) \ + (tclIntStubsPtr->tclDeleteCompiledLocalVars)(iPtr, framePtr) /* 11 */ +#endif +#ifndef TclDeleteVars +#define TclDeleteVars(iPtr, tablePtr) \ + (tclIntStubsPtr->tclDeleteVars)(iPtr, tablePtr) /* 12 */ +#endif +#ifndef TclDoGlob +#define TclDoGlob(interp, separators, headPtr, tail) \ + (tclIntStubsPtr->tclDoGlob)(interp, separators, headPtr, tail) /* 13 */ +#endif +#ifndef TclDumpMemoryInfo +#define TclDumpMemoryInfo(outFile) \ + (tclIntStubsPtr->tclDumpMemoryInfo)(outFile) /* 14 */ +#endif +#ifndef TclExpandParseValue +#define TclExpandParseValue(pvPtr, needed) \ + (tclIntStubsPtr->tclExpandParseValue)(pvPtr, needed) /* 15 */ +#endif +#ifndef TclExprFloatError +#define TclExprFloatError(interp, value) \ + (tclIntStubsPtr->tclExprFloatError)(interp, value) /* 16 */ +#endif +#ifndef TclFileAttrsCmd +#define TclFileAttrsCmd(interp, objc, objv) \ + (tclIntStubsPtr->tclFileAttrsCmd)(interp, objc, objv) /* 17 */ +#endif +#ifndef TclFileCopyCmd +#define TclFileCopyCmd(interp, argc, argv) \ + (tclIntStubsPtr->tclFileCopyCmd)(interp, argc, argv) /* 18 */ +#endif +#ifndef TclFileDeleteCmd +#define TclFileDeleteCmd(interp, argc, argv) \ + (tclIntStubsPtr->tclFileDeleteCmd)(interp, argc, argv) /* 19 */ +#endif +#ifndef TclFileMakeDirsCmd +#define TclFileMakeDirsCmd(interp, argc, argv) \ + (tclIntStubsPtr->tclFileMakeDirsCmd)(interp, argc, argv) /* 20 */ +#endif +#ifndef TclFileRenameCmd +#define TclFileRenameCmd(interp, argc, argv) \ + (tclIntStubsPtr->tclFileRenameCmd)(interp, argc, argv) /* 21 */ +#endif +#ifndef TclFinalizeCompExecEnv +#define TclFinalizeCompExecEnv() \ + (tclIntStubsPtr->tclFinalizeCompExecEnv)() /* 22 */ +#endif +#ifndef TclFinalizeEnvironment +#define TclFinalizeEnvironment() \ + (tclIntStubsPtr->tclFinalizeEnvironment)() /* 23 */ +#endif +#ifndef TclFinalizeExecEnv +#define TclFinalizeExecEnv() \ + (tclIntStubsPtr->tclFinalizeExecEnv)() /* 24 */ +#endif +#ifndef TclFindElement +#define TclFindElement(interp, list, listLength, elementPtr, nextPtr, sizePtr, bracePtr) \ + (tclIntStubsPtr->tclFindElement)(interp, list, listLength, elementPtr, nextPtr, sizePtr, bracePtr) /* 25 */ +#endif +#ifndef TclFindProc +#define TclFindProc(iPtr, procName) \ + (tclIntStubsPtr->tclFindProc)(iPtr, procName) /* 26 */ +#endif +#ifndef TclFormatInt +#define TclFormatInt(buffer, n) \ + (tclIntStubsPtr->tclFormatInt)(buffer, n) /* 27 */ +#endif +#ifndef TclFreePackageInfo +#define TclFreePackageInfo(iPtr) \ + (tclIntStubsPtr->tclFreePackageInfo)(iPtr) /* 28 */ +#endif +#ifndef TclGetAndDetachPids +#define TclGetAndDetachPids(interp, chan) \ + (tclIntStubsPtr->tclGetAndDetachPids)(interp, chan) /* 29 */ +#endif +#ifndef TclGetCwd +#define TclGetCwd(interp) \ + (tclIntStubsPtr->tclGetCwd)(interp) /* 30 */ +#endif +#ifndef TclGetDate +#define TclGetDate(p, now, zone, timePtr) \ + (tclIntStubsPtr->tclGetDate)(p, now, zone, timePtr) /* 31 */ +#endif +#ifndef TclGetDefaultStdChannel +#define TclGetDefaultStdChannel(type) \ + (tclIntStubsPtr->tclGetDefaultStdChannel)(type) /* 32 */ +#endif +#ifndef TclGetElementOfIndexedArray +#define TclGetElementOfIndexedArray(interp, localIndex, elemPtr, leaveErrorMsg) \ + (tclIntStubsPtr->tclGetElementOfIndexedArray)(interp, localIndex, elemPtr, leaveErrorMsg) /* 33 */ +#endif +#ifndef TclGetEnv +#define TclGetEnv(name) \ + (tclIntStubsPtr->tclGetEnv)(name) /* 34 */ +#endif +#ifndef TclGetExtension +#define TclGetExtension(name) \ + (tclIntStubsPtr->tclGetExtension)(name) /* 35 */ +#endif +#ifndef TclGetFrame +#define TclGetFrame(interp, string, framePtrPtr) \ + (tclIntStubsPtr->tclGetFrame)(interp, string, framePtrPtr) /* 36 */ +#endif +#ifndef TclGetInterpProc +#define TclGetInterpProc() \ + (tclIntStubsPtr->tclGetInterpProc)() /* 37 */ +#endif +#ifndef TclGetIntForIndex +#define TclGetIntForIndex(interp, objPtr, endValue, indexPtr) \ + (tclIntStubsPtr->tclGetIntForIndex)(interp, objPtr, endValue, indexPtr) /* 38 */ +#endif +#ifndef TclGetIndexedScalar +#define TclGetIndexedScalar(interp, localIndex, leaveErrorMsg) \ + (tclIntStubsPtr->tclGetIndexedScalar)(interp, localIndex, leaveErrorMsg) /* 39 */ +#endif +#ifndef TclGetLong +#define TclGetLong(interp, string, longPtr) \ + (tclIntStubsPtr->tclGetLong)(interp, string, longPtr) /* 40 */ +#endif +#ifndef TclGetLoadedPackages +#define TclGetLoadedPackages(interp, targetName) \ + (tclIntStubsPtr->tclGetLoadedPackages)(interp, targetName) /* 41 */ +#endif +#ifndef TclGetNamespaceForQualName +#define TclGetNamespaceForQualName(interp, qualName, cxtNsPtr, flags, nsPtrPtr, altNsPtrPtr, actualCxtPtrPtr, simpleNamePtr) \ + (tclIntStubsPtr->tclGetNamespaceForQualName)(interp, qualName, cxtNsPtr, flags, nsPtrPtr, altNsPtrPtr, actualCxtPtrPtr, simpleNamePtr) /* 42 */ +#endif +#ifndef TclGetObjInterpProc +#define TclGetObjInterpProc() \ + (tclIntStubsPtr->tclGetObjInterpProc)() /* 43 */ +#endif +#ifndef TclGetOpenMode +#define TclGetOpenMode(interp, string, seekFlagPtr) \ + (tclIntStubsPtr->tclGetOpenMode)(interp, string, seekFlagPtr) /* 44 */ +#endif +#ifndef TclGetOriginalCommand +#define TclGetOriginalCommand(command) \ + (tclIntStubsPtr->tclGetOriginalCommand)(command) /* 45 */ +#endif +#ifndef TclpGetUserHome +#define TclpGetUserHome(name, bufferPtr) \ + (tclIntStubsPtr->tclpGetUserHome)(name, bufferPtr) /* 46 */ +#endif +#ifndef TclGlobalInvoke +#define TclGlobalInvoke(interp, argc, argv, flags) \ + (tclIntStubsPtr->tclGlobalInvoke)(interp, argc, argv, flags) /* 47 */ +#endif +#ifndef TclGuessPackageName +#define TclGuessPackageName(fileName, bufPtr) \ + (tclIntStubsPtr->tclGuessPackageName)(fileName, bufPtr) /* 48 */ +#endif +#ifndef TclHasSockets +#define TclHasSockets(interp) \ + (tclIntStubsPtr->tclHasSockets)(interp) /* 49 */ +#endif +#ifndef TclHideUnsafeCommands +#define TclHideUnsafeCommands(interp) \ + (tclIntStubsPtr->tclHideUnsafeCommands)(interp) /* 50 */ +#endif +#ifndef TclInExit +#define TclInExit() \ + (tclIntStubsPtr->tclInExit)() /* 51 */ +#endif +#ifndef TclIncrElementOfIndexedArray +#define TclIncrElementOfIndexedArray(interp, localIndex, elemPtr, incrAmount) \ + (tclIntStubsPtr->tclIncrElementOfIndexedArray)(interp, localIndex, elemPtr, incrAmount) /* 52 */ +#endif +#ifndef TclIncrIndexedScalar +#define TclIncrIndexedScalar(interp, localIndex, incrAmount) \ + (tclIntStubsPtr->tclIncrIndexedScalar)(interp, localIndex, incrAmount) /* 53 */ +#endif +#ifndef TclIncrVar2 +#define TclIncrVar2(interp, part1Ptr, part2Ptr, incrAmount, part1NotParsed) \ + (tclIntStubsPtr->tclIncrVar2)(interp, part1Ptr, part2Ptr, incrAmount, part1NotParsed) /* 54 */ +#endif +#ifndef TclInitCompiledLocals +#define TclInitCompiledLocals(interp, framePtr, nsPtr) \ + (tclIntStubsPtr->tclInitCompiledLocals)(interp, framePtr, nsPtr) /* 55 */ +#endif +#ifndef TclInitNamespaces +#define TclInitNamespaces() \ + (tclIntStubsPtr->tclInitNamespaces)() /* 56 */ +#endif +#ifndef TclInterpInit +#define TclInterpInit(interp) \ + (tclIntStubsPtr->tclInterpInit)(interp) /* 57 */ +#endif +#ifndef TclInvoke +#define TclInvoke(interp, argc, argv, flags) \ + (tclIntStubsPtr->tclInvoke)(interp, argc, argv, flags) /* 58 */ +#endif +#ifndef TclInvokeObjectCommand +#define TclInvokeObjectCommand(clientData, interp, argc, argv) \ + (tclIntStubsPtr->tclInvokeObjectCommand)(clientData, interp, argc, argv) /* 59 */ +#endif +#ifndef TclInvokeStringCommand +#define TclInvokeStringCommand(clientData, interp, objc, objv) \ + (tclIntStubsPtr->tclInvokeStringCommand)(clientData, interp, objc, objv) /* 60 */ +#endif +#ifndef TclIsProc +#define TclIsProc(cmdPtr) \ + (tclIntStubsPtr->tclIsProc)(cmdPtr) /* 61 */ +#endif +#ifndef TclLoadFile +#define TclLoadFile(interp, fileName, sym1, sym2, proc1Ptr, proc2Ptr) \ + (tclIntStubsPtr->tclLoadFile)(interp, fileName, sym1, sym2, proc1Ptr, proc2Ptr) /* 62 */ +#endif +#ifndef TclLooksLikeInt +#define TclLooksLikeInt(p) \ + (tclIntStubsPtr->tclLooksLikeInt)(p) /* 63 */ +#endif +#ifndef TclLookupVar +#define TclLookupVar(interp, part1, part2, flags, msg, createPart1, createPart2, arrayPtrPtr) \ + (tclIntStubsPtr->tclLookupVar)(interp, part1, part2, flags, msg, createPart1, createPart2, arrayPtrPtr) /* 64 */ +#endif +#ifndef TclMatchFiles +#define TclMatchFiles(interp, separators, dirPtr, pattern, tail) \ + (tclIntStubsPtr->tclMatchFiles)(interp, separators, dirPtr, pattern, tail) /* 65 */ +#endif +#ifndef TclNeedSpace +#define TclNeedSpace(start, end) \ + (tclIntStubsPtr->tclNeedSpace)(start, end) /* 66 */ +#endif +#ifndef TclNewProcBodyObj +#define TclNewProcBodyObj(procPtr) \ + (tclIntStubsPtr->tclNewProcBodyObj)(procPtr) /* 67 */ +#endif +#ifndef TclObjCommandComplete +#define TclObjCommandComplete(cmdPtr) \ + (tclIntStubsPtr->tclObjCommandComplete)(cmdPtr) /* 68 */ +#endif +#ifndef TclObjInterpProc +#define TclObjInterpProc(clientData, interp, objc, objv) \ + (tclIntStubsPtr->tclObjInterpProc)(clientData, interp, objc, objv) /* 69 */ +#endif +#ifndef TclObjInvoke +#define TclObjInvoke(interp, objc, objv, flags) \ + (tclIntStubsPtr->tclObjInvoke)(interp, objc, objv, flags) /* 70 */ +#endif +#ifndef TclObjInvokeGlobal +#define TclObjInvokeGlobal(interp, objc, objv, flags) \ + (tclIntStubsPtr->tclObjInvokeGlobal)(interp, objc, objv, flags) /* 71 */ +#endif +#ifndef TclOpenFileChannelDeleteProc +#define TclOpenFileChannelDeleteProc(proc) \ + (tclIntStubsPtr->tclOpenFileChannelDeleteProc)(proc) /* 72 */ +#endif +#ifndef TclOpenFileChannelInsertProc +#define TclOpenFileChannelInsertProc(proc) \ + (tclIntStubsPtr->tclOpenFileChannelInsertProc)(proc) /* 73 */ +#endif +#ifndef TclpAlloc +#define TclpAlloc(size) \ + (tclIntStubsPtr->tclpAlloc)(size) /* 74 */ +#endif +#ifndef TclpCloseFile +#define TclpCloseFile(file) \ + (tclIntStubsPtr->tclpCloseFile)(file) /* 75 */ +#endif +#ifndef TclpCopyFile +#define TclpCopyFile(source, dest) \ + (tclIntStubsPtr->tclpCopyFile)(source, dest) /* 76 */ +#endif +#ifndef TclpCopyDirectory +#define TclpCopyDirectory(source, dest, errorPtr) \ + (tclIntStubsPtr->tclpCopyDirectory)(source, dest, errorPtr) /* 77 */ +#endif +#ifndef TclpCreateCommandChannel +#define TclpCreateCommandChannel(readFile, writeFile, errorFile, numPids, pidPtr) \ + (tclIntStubsPtr->tclpCreateCommandChannel)(readFile, writeFile, errorFile, numPids, pidPtr) /* 78 */ +#endif +#ifndef TclpCreateDirectory +#define TclpCreateDirectory(path) \ + (tclIntStubsPtr->tclpCreateDirectory)(path) /* 79 */ +#endif +#ifndef TclpCreatePipe +#define TclpCreatePipe(readPipe, writePipe) \ + (tclIntStubsPtr->tclpCreatePipe)(readPipe, writePipe) /* 80 */ +#endif +#ifndef TclpCreateProcess +#define TclpCreateProcess(interp, argc, argv, inputFile, outputFile, errorFile, pidPtr) \ + (tclIntStubsPtr->tclpCreateProcess)(interp, argc, argv, inputFile, outputFile, errorFile, pidPtr) /* 81 */ +#endif +#ifndef TclpCreateTempFile +#define TclpCreateTempFile(contents, namePtr) \ + (tclIntStubsPtr->tclpCreateTempFile)(contents, namePtr) /* 82 */ +#endif +#ifndef TclpDeleteFile +#define TclpDeleteFile(path) \ + (tclIntStubsPtr->tclpDeleteFile)(path) /* 83 */ +#endif +#ifndef TclpFinalize +#define TclpFinalize() \ + (tclIntStubsPtr->tclpFinalize)() /* 84 */ +#endif +#ifndef TclpFree +#define TclpFree(ptr) \ + (tclIntStubsPtr->tclpFree)(ptr) /* 85 */ +#endif +#ifndef TclpGetClicks +#define TclpGetClicks() \ + (tclIntStubsPtr->tclpGetClicks)() /* 86 */ +#endif +#ifndef TclpGetSeconds +#define TclpGetSeconds() \ + (tclIntStubsPtr->tclpGetSeconds)() /* 87 */ +#endif +#ifndef TclpGetTime +#define TclpGetTime(time) \ + (tclIntStubsPtr->tclpGetTime)(time) /* 88 */ +#endif +#ifndef TclpGetTimeZone +#define TclpGetTimeZone(time) \ + (tclIntStubsPtr->tclpGetTimeZone)(time) /* 89 */ +#endif +#ifndef TclpGetTZName +#define TclpGetTZName() \ + (tclIntStubsPtr->tclpGetTZName)() /* 90 */ +#endif +#ifndef TclpListVolumes +#define TclpListVolumes(interp) \ + (tclIntStubsPtr->tclpListVolumes)(interp) /* 91 */ +#endif +#ifndef TclpMakeFile +#define TclpMakeFile(channel, direction) \ + (tclIntStubsPtr->tclpMakeFile)(channel, direction) /* 92 */ +#endif +#ifndef TclpOpenFile +#define TclpOpenFile(fname, mode) \ + (tclIntStubsPtr->tclpOpenFile)(fname, mode) /* 93 */ +#endif +#ifndef TclpOpenFileChannel +#define TclpOpenFileChannel(interp, fileName, modeString, permissions) \ + (tclIntStubsPtr->tclpOpenFileChannel)(interp, fileName, modeString, permissions) /* 94 */ +#endif +#ifndef TclpRealloc +#define TclpRealloc(ptr, size) \ + (tclIntStubsPtr->tclpRealloc)(ptr, size) /* 95 */ +#endif +#ifndef TclpRemoveDirectory +#define TclpRemoveDirectory(path, recursive, errorPtr) \ + (tclIntStubsPtr->tclpRemoveDirectory)(path, recursive, errorPtr) /* 96 */ +#endif +#ifndef TclpRenameFile +#define TclpRenameFile(source, dest) \ + (tclIntStubsPtr->tclpRenameFile)(source, dest) /* 97 */ +#endif +#ifndef TclParseBraces +#define TclParseBraces(interp, string, termPtr, pvPtr) \ + (tclIntStubsPtr->tclParseBraces)(interp, string, termPtr, pvPtr) /* 98 */ +#endif +#ifndef TclParseNestedCmd +#define TclParseNestedCmd(interp, string, flags, termPtr, pvPtr) \ + (tclIntStubsPtr->tclParseNestedCmd)(interp, string, flags, termPtr, pvPtr) /* 99 */ +#endif +#ifndef TclParseQuotes +#define TclParseQuotes(interp, string, termChar, flags, termPtr, pvPtr) \ + (tclIntStubsPtr->tclParseQuotes)(interp, string, termChar, flags, termPtr, pvPtr) /* 100 */ +#endif +#ifndef TclPlatformInit +#define TclPlatformInit(interp) \ + (tclIntStubsPtr->tclPlatformInit)(interp) /* 101 */ +#endif +#ifndef TclPrecTraceProc +#define TclPrecTraceProc(clientData, interp, name1, name2, flags) \ + (tclIntStubsPtr->tclPrecTraceProc)(clientData, interp, name1, name2, flags) /* 102 */ +#endif +#ifndef TclPreventAliasLoop +#define TclPreventAliasLoop(interp, cmdInterp, cmd) \ + (tclIntStubsPtr->tclPreventAliasLoop)(interp, cmdInterp, cmd) /* 103 */ +#endif +#ifndef TclPrintByteCodeObj +#define TclPrintByteCodeObj(interp, objPtr) \ + (tclIntStubsPtr->tclPrintByteCodeObj)(interp, objPtr) /* 104 */ +#endif +#ifndef TclProcCleanupProc +#define TclProcCleanupProc(procPtr) \ + (tclIntStubsPtr->tclProcCleanupProc)(procPtr) /* 105 */ +#endif +#ifndef TclProcCompileProc +#define TclProcCompileProc(interp, procPtr, bodyPtr, nsPtr, description, procName) \ + (tclIntStubsPtr->tclProcCompileProc)(interp, procPtr, bodyPtr, nsPtr, description, procName) /* 106 */ +#endif +#ifndef TclProcDeleteProc +#define TclProcDeleteProc(clientData) \ + (tclIntStubsPtr->tclProcDeleteProc)(clientData) /* 107 */ +#endif +#ifndef TclProcInterpProc +#define TclProcInterpProc(clientData, interp, argc, argv) \ + (tclIntStubsPtr->tclProcInterpProc)(clientData, interp, argc, argv) /* 108 */ +#endif +#ifndef TclRenameCommand +#define TclRenameCommand(interp, oldName, newName) \ + (tclIntStubsPtr->tclRenameCommand)(interp, oldName, newName) /* 109 */ +#endif +#ifndef TclResetShadowedCmdRefs +#define TclResetShadowedCmdRefs(interp, newCmdPtr) \ + (tclIntStubsPtr->tclResetShadowedCmdRefs)(interp, newCmdPtr) /* 110 */ +#endif +#ifndef TclServiceIdle +#define TclServiceIdle() \ + (tclIntStubsPtr->tclServiceIdle)() /* 111 */ +#endif +#ifndef TclSetElementOfIndexedArray +#define TclSetElementOfIndexedArray(interp, localIndex, elemPtr, objPtr, leaveErrorMsg) \ + (tclIntStubsPtr->tclSetElementOfIndexedArray)(interp, localIndex, elemPtr, objPtr, leaveErrorMsg) /* 112 */ +#endif +#ifndef TclSetIndexedScalar +#define TclSetIndexedScalar(interp, localIndex, objPtr, leaveErrorMsg) \ + (tclIntStubsPtr->tclSetIndexedScalar)(interp, localIndex, objPtr, leaveErrorMsg) /* 113 */ +#endif +#ifndef TclSetPreInitScript +#define TclSetPreInitScript(string) \ + (tclIntStubsPtr->tclSetPreInitScript)(string) /* 114 */ +#endif +#ifndef TclSetupEnv +#define TclSetupEnv(interp) \ + (tclIntStubsPtr->tclSetupEnv)(interp) /* 115 */ +#endif +#ifndef TclSockGetPort +#define TclSockGetPort(interp, string, proto, portPtr) \ + (tclIntStubsPtr->tclSockGetPort)(interp, string, proto, portPtr) /* 116 */ +#endif +#ifndef TclSockMinimumBuffers +#define TclSockMinimumBuffers(sock, size) \ + (tclIntStubsPtr->tclSockMinimumBuffers)(sock, size) /* 117 */ +#endif +#ifndef TclStat +#define TclStat(path, buf) \ + (tclIntStubsPtr->tclStat)(path, buf) /* 118 */ +#endif +#ifndef TclStatDeleteProc +#define TclStatDeleteProc(proc) \ + (tclIntStubsPtr->tclStatDeleteProc)(proc) /* 119 */ +#endif +#ifndef TclStatInsertProc +#define TclStatInsertProc(proc) \ + (tclIntStubsPtr->tclStatInsertProc)(proc) /* 120 */ +#endif +#ifndef TclTeardownNamespace +#define TclTeardownNamespace(nsPtr) \ + (tclIntStubsPtr->tclTeardownNamespace)(nsPtr) /* 121 */ +#endif +#ifndef TclUpdateReturnInfo +#define TclUpdateReturnInfo(iPtr) \ + (tclIntStubsPtr->tclUpdateReturnInfo)(iPtr) /* 122 */ +#endif +#ifndef TclWordEnd +#define TclWordEnd(start, lastChar, nested, semiPtr) \ + (tclIntStubsPtr->tclWordEnd)(start, lastChar, nested, semiPtr) /* 123 */ +#endif +#ifndef Tcl_AddInterpResolvers +#define Tcl_AddInterpResolvers(interp, name, cmdProc, varProc, compiledVarProc) \ + (tclIntStubsPtr->tcl_AddInterpResolvers)(interp, name, cmdProc, varProc, compiledVarProc) /* 124 */ +#endif +#ifndef Tcl_AppendExportList +#define Tcl_AppendExportList(interp, nsPtr, objPtr) \ + (tclIntStubsPtr->tcl_AppendExportList)(interp, nsPtr, objPtr) /* 125 */ +#endif +#ifndef Tcl_CreateNamespace +#define Tcl_CreateNamespace(interp, name, clientData, deleteProc) \ + (tclIntStubsPtr->tcl_CreateNamespace)(interp, name, clientData, deleteProc) /* 126 */ +#endif +#ifndef Tcl_DeleteNamespace +#define Tcl_DeleteNamespace(nsPtr) \ + (tclIntStubsPtr->tcl_DeleteNamespace)(nsPtr) /* 127 */ +#endif +#ifndef Tcl_Export +#define Tcl_Export(interp, nsPtr, pattern, resetListFirst) \ + (tclIntStubsPtr->tcl_Export)(interp, nsPtr, pattern, resetListFirst) /* 128 */ +#endif +#ifndef Tcl_FindCommand +#define Tcl_FindCommand(interp, name, contextNsPtr, flags) \ + (tclIntStubsPtr->tcl_FindCommand)(interp, name, contextNsPtr, flags) /* 129 */ +#endif +#ifndef Tcl_FindNamespace +#define Tcl_FindNamespace(interp, name, contextNsPtr, flags) \ + (tclIntStubsPtr->tcl_FindNamespace)(interp, name, contextNsPtr, flags) /* 130 */ +#endif +#ifndef Tcl_GetInterpResolvers +#define Tcl_GetInterpResolvers(interp, name, resInfo) \ + (tclIntStubsPtr->tcl_GetInterpResolvers)(interp, name, resInfo) /* 131 */ +#endif +#ifndef Tcl_GetNamespaceResolvers +#define Tcl_GetNamespaceResolvers(namespacePtr, resInfo) \ + (tclIntStubsPtr->tcl_GetNamespaceResolvers)(namespacePtr, resInfo) /* 132 */ +#endif +#ifndef Tcl_FindNamespaceVar +#define Tcl_FindNamespaceVar(interp, name, contextNsPtr, flags) \ + (tclIntStubsPtr->tcl_FindNamespaceVar)(interp, name, contextNsPtr, flags) /* 133 */ +#endif +#ifndef Tcl_ForgetImport +#define Tcl_ForgetImport(interp, nsPtr, pattern) \ + (tclIntStubsPtr->tcl_ForgetImport)(interp, nsPtr, pattern) /* 134 */ +#endif +#ifndef Tcl_GetCommandFromObj +#define Tcl_GetCommandFromObj(interp, objPtr) \ + (tclIntStubsPtr->tcl_GetCommandFromObj)(interp, objPtr) /* 135 */ +#endif +#ifndef Tcl_GetCommandFullName +#define Tcl_GetCommandFullName(interp, command, objPtr) \ + (tclIntStubsPtr->tcl_GetCommandFullName)(interp, command, objPtr) /* 136 */ +#endif +#ifndef Tcl_GetCurrentNamespace +#define Tcl_GetCurrentNamespace(interp) \ + (tclIntStubsPtr->tcl_GetCurrentNamespace)(interp) /* 137 */ +#endif +#ifndef Tcl_GetGlobalNamespace +#define Tcl_GetGlobalNamespace(interp) \ + (tclIntStubsPtr->tcl_GetGlobalNamespace)(interp) /* 138 */ +#endif +#ifndef Tcl_GetVariableFullName +#define Tcl_GetVariableFullName(interp, variable, objPtr) \ + (tclIntStubsPtr->tcl_GetVariableFullName)(interp, variable, objPtr) /* 139 */ +#endif +#ifndef Tcl_Import +#define Tcl_Import(interp, nsPtr, pattern, allowOverwrite) \ + (tclIntStubsPtr->tcl_Import)(interp, nsPtr, pattern, allowOverwrite) /* 140 */ +#endif +#ifndef Tcl_PopCallFrame +#define Tcl_PopCallFrame(interp) \ + (tclIntStubsPtr->tcl_PopCallFrame)(interp) /* 141 */ +#endif +#ifndef Tcl_PushCallFrame +#define Tcl_PushCallFrame(interp, framePtr, nsPtr, isProcCallFrame) \ + (tclIntStubsPtr->tcl_PushCallFrame)(interp, framePtr, nsPtr, isProcCallFrame) /* 142 */ +#endif +#ifndef Tcl_RemoveInterpResolvers +#define Tcl_RemoveInterpResolvers(interp, name) \ + (tclIntStubsPtr->tcl_RemoveInterpResolvers)(interp, name) /* 143 */ +#endif +#ifndef Tcl_SetNamespaceResolvers +#define Tcl_SetNamespaceResolvers(namespacePtr, cmdProc, varProc, compiledVarProc) \ + (tclIntStubsPtr->tcl_SetNamespaceResolvers)(namespacePtr, cmdProc, varProc, compiledVarProc) /* 144 */ +#endif +#ifndef TclCompileBreakCmd +#define TclCompileBreakCmd(interp, string, lastChar, compileFlags, compileEnvPtr) \ + (tclIntStubsPtr->tclCompileBreakCmd)(interp, string, lastChar, compileFlags, compileEnvPtr) /* 145 */ +#endif +#ifndef TclCompileCatchCmd +#define TclCompileCatchCmd(interp, string, lastChar, compileFlags, compileEnvPtr) \ + (tclIntStubsPtr->tclCompileCatchCmd)(interp, string, lastChar, compileFlags, compileEnvPtr) /* 146 */ +#endif +#ifndef TclCompileContinueCmd +#define TclCompileContinueCmd(interp, string, lastChar, compileFlags, compileEnvPtr) \ + (tclIntStubsPtr->tclCompileContinueCmd)(interp, string, lastChar, compileFlags, compileEnvPtr) /* 147 */ +#endif +#ifndef TclCompileExprCmd +#define TclCompileExprCmd(interp, string, lastChar, compileFlags, compileEnvPtr) \ + (tclIntStubsPtr->tclCompileExprCmd)(interp, string, lastChar, compileFlags, compileEnvPtr) /* 148 */ +#endif +#ifndef TclCompileForCmd +#define TclCompileForCmd(interp, string, lastChar, compileFlags, compileEnvPtr) \ + (tclIntStubsPtr->tclCompileForCmd)(interp, string, lastChar, compileFlags, compileEnvPtr) /* 149 */ +#endif +#ifndef TclCompileForeachCmd +#define TclCompileForeachCmd(interp, string, lastChar, compileFlags, compileEnvPtr) \ + (tclIntStubsPtr->tclCompileForeachCmd)(interp, string, lastChar, compileFlags, compileEnvPtr) /* 150 */ +#endif +#ifndef TclCompileIfCmd +#define TclCompileIfCmd(interp, string, lastChar, compileFlags, compileEnvPtr) \ + (tclIntStubsPtr->tclCompileIfCmd)(interp, string, lastChar, compileFlags, compileEnvPtr) /* 151 */ +#endif +#ifndef TclCompileIncrCmd +#define TclCompileIncrCmd(interp, string, lastChar, compileFlags, compileEnvPtr) \ + (tclIntStubsPtr->tclCompileIncrCmd)(interp, string, lastChar, compileFlags, compileEnvPtr) /* 152 */ +#endif +#ifndef TclCompileSetCmd +#define TclCompileSetCmd(interp, string, lastChar, compileFlags, compileEnvPtr) \ + (tclIntStubsPtr->tclCompileSetCmd)(interp, string, lastChar, compileFlags, compileEnvPtr) /* 153 */ +#endif +#ifndef TclCompileWhileCmd +#define TclCompileWhileCmd(interp, string, lastChar, compileFlags, compileEnvPtr) \ + (tclIntStubsPtr->tclCompileWhileCmd)(interp, string, lastChar, compileFlags, compileEnvPtr) /* 154 */ +#endif + +#endif /* defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS) */ + +/* !END!: Do not edit above this line. */ + +#endif /* _TCLINTDECLS */ + diff --git a/generic/tclIntPlatDecls.h b/generic/tclIntPlatDecls.h new file mode 100644 index 0000000..35d5b95 --- /dev/null +++ b/generic/tclIntPlatDecls.h @@ -0,0 +1,159 @@ +/* + * tclIntPlatDecls.h -- + * + * This file contains the declarations for all platform dependent + * unsupported functions that are exported by the Tcl library. These + * interfaces are not guaranteed to remain the same between + * versions. Use at your own risk. + * + * Copyright (c) 1998-1999 by Scriptics Corporation. + * All rights reserved. + * + * RCS: @(#) $Id: tclIntPlatDecls.h,v 1.1 1999/03/03 00:38:41 stanton Exp $ + */ + +#ifndef _TCLINTPLATDECLS +#define _TCLINTPLATDECLS + +/* + * WARNING: This file is automatically generated by the tools/genStubs.tcl + * script. Any modifications to the function declarations below should be made + * in the generic/tclInt.decls script. + */ + +/* !BEGIN!: Do not edit below this line. */ + +/* + * Exported function declarations: + */ + +#ifdef __WIN32__ +/* 0 */ +EXTERN void TclWinConvertError _ANSI_ARGS_((DWORD errCode)); +/* 1 */ +EXTERN void TclWinConvertWSAError _ANSI_ARGS_((DWORD errCode)); +/* 2 */ +EXTERN struct servent * TclWinGetServByName _ANSI_ARGS_((const char * nm, + const char * proto)); +/* 3 */ +EXTERN int TclWinGetSockOpt _ANSI_ARGS_((SOCKET s, int level, + int optname, char FAR * optval, + int FAR * optlen)); +/* 4 */ +EXTERN HINSTANCE TclWinGetTclInstance _ANSI_ARGS_((void)); +/* 5 */ +EXTERN HINSTANCE TclWinLoadLibrary _ANSI_ARGS_((char * name)); +/* 6 */ +EXTERN u_short TclWinNToHS _ANSI_ARGS_((u_short ns)); +/* 7 */ +EXTERN int TclWinSetSockOpt _ANSI_ARGS_((SOCKET s, int level, + int optname, const char FAR * optval, + int optlen)); +#endif /* __WIN32__ */ +#ifdef MAC_TCL +/* 0 */ +EXTERN int TclpCheckStackSpace _ANSI_ARGS_((void)); +/* 1 */ +EXTERN VOID * TclpSysAlloc _ANSI_ARGS_((long size, int isBin)); +/* 2 */ +EXTERN void TclpSysFree _ANSI_ARGS_((VOID * ptr)); +/* 3 */ +EXTERN VOID * TclpSysRealloc _ANSI_ARGS_((VOID * cp, + unsigned int size)); +/* 4 */ +EXTERN void TclPlatformExit _ANSI_ARGS_((int status)); +#endif /* MAC_TCL */ + +typedef struct TclIntPlatStubs { + int magic; + struct TclIntPlatStubHooks *hooks; + +#ifdef __WIN32__ + void (*tclWinConvertError) _ANSI_ARGS_((DWORD errCode)); /* 0 */ + void (*tclWinConvertWSAError) _ANSI_ARGS_((DWORD errCode)); /* 1 */ + struct servent * (*tclWinGetServByName) _ANSI_ARGS_((const char * nm, const char * proto)); /* 2 */ + int (*tclWinGetSockOpt) _ANSI_ARGS_((SOCKET s, int level, int optname, char FAR * optval, int FAR * optlen)); /* 3 */ + HINSTANCE (*tclWinGetTclInstance) _ANSI_ARGS_((void)); /* 4 */ + HINSTANCE (*tclWinLoadLibrary) _ANSI_ARGS_((char * name)); /* 5 */ + u_short (*tclWinNToHS) _ANSI_ARGS_((u_short ns)); /* 6 */ + int (*tclWinSetSockOpt) _ANSI_ARGS_((SOCKET s, int level, int optname, const char FAR * optval, int optlen)); /* 7 */ +#endif /* __WIN32__ */ +#ifdef MAC_TCL + int (*tclpCheckStackSpace) _ANSI_ARGS_((void)); /* 0 */ + VOID * (*tclpSysAlloc) _ANSI_ARGS_((long size, int isBin)); /* 1 */ + void (*tclpSysFree) _ANSI_ARGS_((VOID * ptr)); /* 2 */ + VOID * (*tclpSysRealloc) _ANSI_ARGS_((VOID * cp, unsigned int size)); /* 3 */ + void (*tclPlatformExit) _ANSI_ARGS_((int status)); /* 4 */ +#endif /* MAC_TCL */ +} TclIntPlatStubs; + +extern TclIntPlatStubs *tclIntPlatStubsPtr; + +#if defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS) + +/* + * Inline function declarations: + */ + +#ifdef __WIN32__ +#ifndef TclWinConvertError +#define TclWinConvertError(errCode) \ + (tclIntPlatStubsPtr->tclWinConvertError)(errCode) /* 0 */ +#endif +#ifndef TclWinConvertWSAError +#define TclWinConvertWSAError(errCode) \ + (tclIntPlatStubsPtr->tclWinConvertWSAError)(errCode) /* 1 */ +#endif +#ifndef TclWinGetServByName +#define TclWinGetServByName(nm, proto) \ + (tclIntPlatStubsPtr->tclWinGetServByName)(nm, proto) /* 2 */ +#endif +#ifndef TclWinGetSockOpt +#define TclWinGetSockOpt(s, level, optname, optval, optlen) \ + (tclIntPlatStubsPtr->tclWinGetSockOpt)(s, level, optname, optval, optlen) /* 3 */ +#endif +#ifndef TclWinGetTclInstance +#define TclWinGetTclInstance() \ + (tclIntPlatStubsPtr->tclWinGetTclInstance)() /* 4 */ +#endif +#ifndef TclWinLoadLibrary +#define TclWinLoadLibrary(name) \ + (tclIntPlatStubsPtr->tclWinLoadLibrary)(name) /* 5 */ +#endif +#ifndef TclWinNToHS +#define TclWinNToHS(ns) \ + (tclIntPlatStubsPtr->tclWinNToHS)(ns) /* 6 */ +#endif +#ifndef TclWinSetSockOpt +#define TclWinSetSockOpt(s, level, optname, optval, optlen) \ + (tclIntPlatStubsPtr->tclWinSetSockOpt)(s, level, optname, optval, optlen) /* 7 */ +#endif +#endif /* __WIN32__ */ +#ifdef MAC_TCL +#ifndef TclpCheckStackSpace +#define TclpCheckStackSpace() \ + (tclIntPlatStubsPtr->tclpCheckStackSpace)() /* 0 */ +#endif +#ifndef TclpSysAlloc +#define TclpSysAlloc(size, isBin) \ + (tclIntPlatStubsPtr->tclpSysAlloc)(size, isBin) /* 1 */ +#endif +#ifndef TclpSysFree +#define TclpSysFree(ptr) \ + (tclIntPlatStubsPtr->tclpSysFree)(ptr) /* 2 */ +#endif +#ifndef TclpSysRealloc +#define TclpSysRealloc(cp, size) \ + (tclIntPlatStubsPtr->tclpSysRealloc)(cp, size) /* 3 */ +#endif +#ifndef TclPlatformExit +#define TclPlatformExit(status) \ + (tclIntPlatStubsPtr->tclPlatformExit)(status) /* 4 */ +#endif +#endif /* MAC_TCL */ + +#endif /* defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS) */ + +/* !END!: Do not edit above this line. */ + +#endif /* _TCLINTPLATDECLS */ diff --git a/generic/tclIntPlatStubs.c b/generic/tclIntPlatStubs.c new file mode 100644 index 0000000..1a10ac5 --- /dev/null +++ b/generic/tclIntPlatStubs.c @@ -0,0 +1,146 @@ +/* + * tclIntPlatStubs.c -- + * + * This file contains the wrapper functions for the platform dependent + * unsupported Tcl API. + * + * Copyright (c) 1998-1999 by Scriptics Corporation. + * All rights reserved. + * + * RCS: @(#) $Id: tclIntPlatStubs.c,v 1.1 1999/03/03 00:38:41 stanton Exp $ + */ + +#include "tclInt.h" +#include "tclPort.h" + +/* + * WARNING: This file is automatically generated by the tools/genStubs.tcl + * script. Any modifications to the function declarations below should be made + * in the generic/tclInt.decls script. + */ + +/* !BEGIN!: Do not edit below this line. */ + +/* + * Exported stub functions: + */ + +#ifdef __WIN32__ +/* Slot 0 */ +void +TclWinConvertError(errCode) + DWORD errCode; +{ + (tclIntPlatStubsPtr->tclWinConvertError)(errCode); +} + +/* Slot 1 */ +void +TclWinConvertWSAError(errCode) + DWORD errCode; +{ + (tclIntPlatStubsPtr->tclWinConvertWSAError)(errCode); +} + +/* Slot 2 */ +struct servent * +TclWinGetServByName(nm, proto) + const char * nm; + const char * proto; +{ + return (tclIntPlatStubsPtr->tclWinGetServByName)(nm, proto); +} + +/* Slot 3 */ +int +TclWinGetSockOpt(s, level, optname, optval, optlen) + SOCKET s; + int level; + int optname; + char FAR * optval; + int FAR * optlen; +{ + return (tclIntPlatStubsPtr->tclWinGetSockOpt)(s, level, optname, optval, optlen); +} + +/* Slot 4 */ +HINSTANCE +TclWinGetTclInstance() +{ + return (tclIntPlatStubsPtr->tclWinGetTclInstance)(); +} + +/* Slot 5 */ +HINSTANCE +TclWinLoadLibrary(name) + char * name; +{ + return (tclIntPlatStubsPtr->tclWinLoadLibrary)(name); +} + +/* Slot 6 */ +u_short +TclWinNToHS(ns) + u_short ns; +{ + return (tclIntPlatStubsPtr->tclWinNToHS)(ns); +} + +/* Slot 7 */ +int +TclWinSetSockOpt(s, level, optname, optval, optlen) + SOCKET s; + int level; + int optname; + const char FAR * optval; + int optlen; +{ + return (tclIntPlatStubsPtr->tclWinSetSockOpt)(s, level, optname, optval, optlen); +} + +#endif /* __WIN32__ */ +#ifdef MAC_TCL +/* Slot 0 */ +int +TclpCheckStackSpace() +{ + return (tclIntPlatStubsPtr->tclpCheckStackSpace)(); +} + +/* Slot 1 */ +VOID * +TclpSysAlloc(size, isBin) + long size; + int isBin; +{ + return (tclIntPlatStubsPtr->tclpSysAlloc)(size, isBin); +} + +/* Slot 2 */ +void +TclpSysFree(ptr) + VOID * ptr; +{ + (tclIntPlatStubsPtr->tclpSysFree)(ptr); +} + +/* Slot 3 */ +VOID * +TclpSysRealloc(cp, size) + VOID * cp; + unsigned int size; +{ + return (tclIntPlatStubsPtr->tclpSysRealloc)(cp, size); +} + +/* Slot 4 */ +void +TclPlatformExit(status) + int status; +{ + (tclIntPlatStubsPtr->tclPlatformExit)(status); +} + +#endif /* MAC_TCL */ + +/* !END!: Do not edit above this line. */ diff --git a/generic/tclIntStubs.c b/generic/tclIntStubs.c new file mode 100644 index 0000000..34ea414 --- /dev/null +++ b/generic/tclIntStubs.c @@ -0,0 +1,1529 @@ +/* + * tclIntStubs.c -- + * + * This file contains the wrapper functions for the platform independent + * unsupported Tcl API. + * + * Copyright (c) 1998-1999 by Scriptics Corporation. + * All rights reserved. + * + * RCS: @(#) $Id: tclIntStubs.c,v 1.1 1999/03/03 00:38:41 stanton Exp $ + */ + +#include "tclInt.h" + +/* + * WARNING: This file is automatically generated by the tools/genStubs.tcl + * script. Any modifications to the function declarations below should be made + * in the generic/tclInt.decls script. + */ + +/* !BEGIN!: Do not edit below this line. */ + +/* + * Exported stub functions: + */ + +/* Slot 0 */ +int +TclAccess(path, mode) + CONST char * path; + int mode; +{ + return (tclIntStubsPtr->tclAccess)(path, mode); +} + +/* Slot 1 */ +int +TclAccessDeleteProc(proc) + TclAccessProc_ * proc; +{ + return (tclIntStubsPtr->tclAccessDeleteProc)(proc); +} + +/* Slot 2 */ +int +TclAccessInsertProc(proc) + TclAccessProc_ * proc; +{ + return (tclIntStubsPtr->tclAccessInsertProc)(proc); +} + +/* Slot 3 */ +void +TclAllocateFreeObjects() +{ + (tclIntStubsPtr->tclAllocateFreeObjects)(); +} + +/* Slot 4 */ +int +TclChdir(interp, dirName) + Tcl_Interp * interp; + char * dirName; +{ + return (tclIntStubsPtr->tclChdir)(interp, dirName); +} + +/* Slot 5 */ +int +TclCleanupChildren(interp, numPids, pidPtr, errorChan) + Tcl_Interp * interp; + int numPids; + Tcl_Pid * pidPtr; + Tcl_Channel errorChan; +{ + return (tclIntStubsPtr->tclCleanupChildren)(interp, numPids, pidPtr, errorChan); +} + +/* Slot 6 */ +void +TclCleanupCommand(cmdPtr) + Command * cmdPtr; +{ + (tclIntStubsPtr->tclCleanupCommand)(cmdPtr); +} + +/* Slot 7 */ +int +TclCopyAndCollapse(count, src, dst) + int count; + char * src; + char * dst; +{ + return (tclIntStubsPtr->tclCopyAndCollapse)(count, src, dst); +} + +/* Slot 8 */ +int +TclCopyChannel(interp, inChan, outChan, toRead, cmdPtr) + Tcl_Interp * interp; + Tcl_Channel inChan; + Tcl_Channel outChan; + int toRead; + Tcl_Obj * cmdPtr; +{ + return (tclIntStubsPtr->tclCopyChannel)(interp, inChan, outChan, toRead, cmdPtr); +} + +/* Slot 9 */ +int +TclCreatePipeline(interp, argc, argv, pidArrayPtr, inPipePtr, outPipePtr, errFilePtr) + Tcl_Interp * interp; + int argc; + char ** argv; + Tcl_Pid ** pidArrayPtr; + TclFile * inPipePtr; + TclFile * outPipePtr; + TclFile * errFilePtr; +{ + return (tclIntStubsPtr->tclCreatePipeline)(interp, argc, argv, pidArrayPtr, inPipePtr, outPipePtr, errFilePtr); +} + +/* Slot 10 */ +int +TclCreateProc(interp, nsPtr, procName, argsPtr, bodyPtr, procPtrPtr) + Tcl_Interp * interp; + Namespace * nsPtr; + char * procName; + Tcl_Obj * argsPtr; + Tcl_Obj * bodyPtr; + Proc ** procPtrPtr; +{ + return (tclIntStubsPtr->tclCreateProc)(interp, nsPtr, procName, argsPtr, bodyPtr, procPtrPtr); +} + +/* Slot 11 */ +void +TclDeleteCompiledLocalVars(iPtr, framePtr) + Interp * iPtr; + CallFrame * framePtr; +{ + (tclIntStubsPtr->tclDeleteCompiledLocalVars)(iPtr, framePtr); +} + +/* Slot 12 */ +void +TclDeleteVars(iPtr, tablePtr) + Interp * iPtr; + Tcl_HashTable * tablePtr; +{ + (tclIntStubsPtr->tclDeleteVars)(iPtr, tablePtr); +} + +/* Slot 13 */ +int +TclDoGlob(interp, separators, headPtr, tail) + Tcl_Interp * interp; + char * separators; + Tcl_DString * headPtr; + char * tail; +{ + return (tclIntStubsPtr->tclDoGlob)(interp, separators, headPtr, tail); +} + +/* Slot 14 */ +void +TclDumpMemoryInfo(outFile) + FILE * outFile; +{ + (tclIntStubsPtr->tclDumpMemoryInfo)(outFile); +} + +/* Slot 15 */ +void +TclExpandParseValue(pvPtr, needed) + ParseValue * pvPtr; + int needed; +{ + (tclIntStubsPtr->tclExpandParseValue)(pvPtr, needed); +} + +/* Slot 16 */ +void +TclExprFloatError(interp, value) + Tcl_Interp * interp; + double value; +{ + (tclIntStubsPtr->tclExprFloatError)(interp, value); +} + +/* Slot 17 */ +int +TclFileAttrsCmd(interp, objc, objv) + Tcl_Interp * interp; + int objc; + Tcl_Obj *CONST objv[]; +{ + return (tclIntStubsPtr->tclFileAttrsCmd)(interp, objc, objv); +} + +/* Slot 18 */ +int +TclFileCopyCmd(interp, argc, argv) + Tcl_Interp * interp; + int argc; + char ** argv; +{ + return (tclIntStubsPtr->tclFileCopyCmd)(interp, argc, argv); +} + +/* Slot 19 */ +int +TclFileDeleteCmd(interp, argc, argv) + Tcl_Interp * interp; + int argc; + char ** argv; +{ + return (tclIntStubsPtr->tclFileDeleteCmd)(interp, argc, argv); +} + +/* Slot 20 */ +int +TclFileMakeDirsCmd(interp, argc, argv) + Tcl_Interp * interp; + int argc; + char ** argv; +{ + return (tclIntStubsPtr->tclFileMakeDirsCmd)(interp, argc, argv); +} + +/* Slot 21 */ +int +TclFileRenameCmd(interp, argc, argv) + Tcl_Interp * interp; + int argc; + char ** argv; +{ + return (tclIntStubsPtr->tclFileRenameCmd)(interp, argc, argv); +} + +/* Slot 22 */ +void +TclFinalizeCompExecEnv() +{ + (tclIntStubsPtr->tclFinalizeCompExecEnv)(); +} + +/* Slot 23 */ +void +TclFinalizeEnvironment() +{ + (tclIntStubsPtr->tclFinalizeEnvironment)(); +} + +/* Slot 24 */ +void +TclFinalizeExecEnv() +{ + (tclIntStubsPtr->tclFinalizeExecEnv)(); +} + +/* Slot 25 */ +int +TclFindElement(interp, list, listLength, elementPtr, nextPtr, sizePtr, bracePtr) + Tcl_Interp * interp; + char * list; + int listLength; + char ** elementPtr; + char ** nextPtr; + int * sizePtr; + int * bracePtr; +{ + return (tclIntStubsPtr->tclFindElement)(interp, list, listLength, elementPtr, nextPtr, sizePtr, bracePtr); +} + +/* Slot 26 */ +Proc * +TclFindProc(iPtr, procName) + Interp * iPtr; + char * procName; +{ + return (tclIntStubsPtr->tclFindProc)(iPtr, procName); +} + +/* Slot 27 */ +int +TclFormatInt(buffer, n) + char * buffer; + long n; +{ + return (tclIntStubsPtr->tclFormatInt)(buffer, n); +} + +/* Slot 28 */ +void +TclFreePackageInfo(iPtr) + Interp * iPtr; +{ + (tclIntStubsPtr->tclFreePackageInfo)(iPtr); +} + +/* Slot 29 */ +void +TclGetAndDetachPids(interp, chan) + Tcl_Interp * interp; + Tcl_Channel chan; +{ + (tclIntStubsPtr->tclGetAndDetachPids)(interp, chan); +} + +/* Slot 30 */ +char * +TclGetCwd(interp) + Tcl_Interp * interp; +{ + return (tclIntStubsPtr->tclGetCwd)(interp); +} + +/* Slot 31 */ +int +TclGetDate(p, now, zone, timePtr) + char * p; + unsigned long now; + long zone; + unsigned long * timePtr; +{ + return (tclIntStubsPtr->tclGetDate)(p, now, zone, timePtr); +} + +/* Slot 32 */ +Tcl_Channel +TclGetDefaultStdChannel(type) + int type; +{ + return (tclIntStubsPtr->tclGetDefaultStdChannel)(type); +} + +/* Slot 33 */ +Tcl_Obj * +TclGetElementOfIndexedArray(interp, localIndex, elemPtr, leaveErrorMsg) + Tcl_Interp * interp; + int localIndex; + Tcl_Obj * elemPtr; + int leaveErrorMsg; +{ + return (tclIntStubsPtr->tclGetElementOfIndexedArray)(interp, localIndex, elemPtr, leaveErrorMsg); +} + +/* Slot 34 */ +char * +TclGetEnv(name) + CONST char * name; +{ + return (tclIntStubsPtr->tclGetEnv)(name); +} + +/* Slot 35 */ +char * +TclGetExtension(name) + char * name; +{ + return (tclIntStubsPtr->tclGetExtension)(name); +} + +/* Slot 36 */ +int +TclGetFrame(interp, string, framePtrPtr) + Tcl_Interp * interp; + char * string; + CallFrame ** framePtrPtr; +{ + return (tclIntStubsPtr->tclGetFrame)(interp, string, framePtrPtr); +} + +/* Slot 37 */ +TclCmdProcType +TclGetInterpProc() +{ + return (tclIntStubsPtr->tclGetInterpProc)(); +} + +/* Slot 38 */ +int +TclGetIntForIndex(interp, objPtr, endValue, indexPtr) + Tcl_Interp * interp; + Tcl_Obj * objPtr; + int endValue; + int * indexPtr; +{ + return (tclIntStubsPtr->tclGetIntForIndex)(interp, objPtr, endValue, indexPtr); +} + +/* Slot 39 */ +Tcl_Obj * +TclGetIndexedScalar(interp, localIndex, leaveErrorMsg) + Tcl_Interp * interp; + int localIndex; + int leaveErrorMsg; +{ + return (tclIntStubsPtr->tclGetIndexedScalar)(interp, localIndex, leaveErrorMsg); +} + +/* Slot 40 */ +int +TclGetLong(interp, string, longPtr) + Tcl_Interp * interp; + char * string; + long * longPtr; +{ + return (tclIntStubsPtr->tclGetLong)(interp, string, longPtr); +} + +/* Slot 41 */ +int +TclGetLoadedPackages(interp, targetName) + Tcl_Interp * interp; + char * targetName; +{ + return (tclIntStubsPtr->tclGetLoadedPackages)(interp, targetName); +} + +/* Slot 42 */ +int +TclGetNamespaceForQualName(interp, qualName, cxtNsPtr, flags, nsPtrPtr, altNsPtrPtr, actualCxtPtrPtr, simpleNamePtr) + Tcl_Interp * interp; + char * qualName; + Namespace * cxtNsPtr; + int flags; + Namespace ** nsPtrPtr; + Namespace ** altNsPtrPtr; + Namespace ** actualCxtPtrPtr; + char ** simpleNamePtr; +{ + return (tclIntStubsPtr->tclGetNamespaceForQualName)(interp, qualName, cxtNsPtr, flags, nsPtrPtr, altNsPtrPtr, actualCxtPtrPtr, simpleNamePtr); +} + +/* Slot 43 */ +TclObjCmdProcType +TclGetObjInterpProc() +{ + return (tclIntStubsPtr->tclGetObjInterpProc)(); +} + +/* Slot 44 */ +int +TclGetOpenMode(interp, string, seekFlagPtr) + Tcl_Interp * interp; + char * string; + int * seekFlagPtr; +{ + return (tclIntStubsPtr->tclGetOpenMode)(interp, string, seekFlagPtr); +} + +/* Slot 45 */ +Tcl_Command +TclGetOriginalCommand(command) + Tcl_Command command; +{ + return (tclIntStubsPtr->tclGetOriginalCommand)(command); +} + +/* Slot 46 */ +char * +TclpGetUserHome(name, bufferPtr) + char * name; + Tcl_DString * bufferPtr; +{ + return (tclIntStubsPtr->tclpGetUserHome)(name, bufferPtr); +} + +/* Slot 47 */ +int +TclGlobalInvoke(interp, argc, argv, flags) + Tcl_Interp * interp; + int argc; + char ** argv; + int flags; +{ + return (tclIntStubsPtr->tclGlobalInvoke)(interp, argc, argv, flags); +} + +/* Slot 48 */ +int +TclGuessPackageName(fileName, bufPtr) + char * fileName; + Tcl_DString * bufPtr; +{ + return (tclIntStubsPtr->tclGuessPackageName)(fileName, bufPtr); +} + +/* Slot 49 */ +int +TclHasSockets(interp) + Tcl_Interp * interp; +{ + return (tclIntStubsPtr->tclHasSockets)(interp); +} + +/* Slot 50 */ +int +TclHideUnsafeCommands(interp) + Tcl_Interp * interp; +{ + return (tclIntStubsPtr->tclHideUnsafeCommands)(interp); +} + +/* Slot 51 */ +int +TclInExit() +{ + return (tclIntStubsPtr->tclInExit)(); +} + +/* Slot 52 */ +Tcl_Obj * +TclIncrElementOfIndexedArray(interp, localIndex, elemPtr, incrAmount) + Tcl_Interp * interp; + int localIndex; + Tcl_Obj * elemPtr; + long incrAmount; +{ + return (tclIntStubsPtr->tclIncrElementOfIndexedArray)(interp, localIndex, elemPtr, incrAmount); +} + +/* Slot 53 */ +Tcl_Obj * +TclIncrIndexedScalar(interp, localIndex, incrAmount) + Tcl_Interp * interp; + int localIndex; + long incrAmount; +{ + return (tclIntStubsPtr->tclIncrIndexedScalar)(interp, localIndex, incrAmount); +} + +/* Slot 54 */ +Tcl_Obj * +TclIncrVar2(interp, part1Ptr, part2Ptr, incrAmount, part1NotParsed) + Tcl_Interp * interp; + Tcl_Obj * part1Ptr; + Tcl_Obj * part2Ptr; + long incrAmount; + int part1NotParsed; +{ + return (tclIntStubsPtr->tclIncrVar2)(interp, part1Ptr, part2Ptr, incrAmount, part1NotParsed); +} + +/* Slot 55 */ +void +TclInitCompiledLocals(interp, framePtr, nsPtr) + Tcl_Interp * interp; + CallFrame * framePtr; + Namespace * nsPtr; +{ + (tclIntStubsPtr->tclInitCompiledLocals)(interp, framePtr, nsPtr); +} + +/* Slot 56 */ +void +TclInitNamespaces() +{ + (tclIntStubsPtr->tclInitNamespaces)(); +} + +/* Slot 57 */ +int +TclInterpInit(interp) + Tcl_Interp * interp; +{ + return (tclIntStubsPtr->tclInterpInit)(interp); +} + +/* Slot 58 */ +int +TclInvoke(interp, argc, argv, flags) + Tcl_Interp * interp; + int argc; + char ** argv; + int flags; +{ + return (tclIntStubsPtr->tclInvoke)(interp, argc, argv, flags); +} + +/* Slot 59 */ +int +TclInvokeObjectCommand(clientData, interp, argc, argv) + ClientData clientData; + Tcl_Interp * interp; + int argc; + char ** argv; +{ + return (tclIntStubsPtr->tclInvokeObjectCommand)(clientData, interp, argc, argv); +} + +/* Slot 60 */ +int +TclInvokeStringCommand(clientData, interp, objc, objv) + ClientData clientData; + Tcl_Interp * interp; + int objc; + Tcl_Obj *CONST objv[]; +{ + return (tclIntStubsPtr->tclInvokeStringCommand)(clientData, interp, objc, objv); +} + +/* Slot 61 */ +Proc * +TclIsProc(cmdPtr) + Command * cmdPtr; +{ + return (tclIntStubsPtr->tclIsProc)(cmdPtr); +} + +/* Slot 62 */ +int +TclLoadFile(interp, fileName, sym1, sym2, proc1Ptr, proc2Ptr) + Tcl_Interp * interp; + char * fileName; + char * sym1; + char * sym2; + Tcl_PackageInitProc ** proc1Ptr; + Tcl_PackageInitProc ** proc2Ptr; +{ + return (tclIntStubsPtr->tclLoadFile)(interp, fileName, sym1, sym2, proc1Ptr, proc2Ptr); +} + +/* Slot 63 */ +int +TclLooksLikeInt(p) + char * p; +{ + return (tclIntStubsPtr->tclLooksLikeInt)(p); +} + +/* Slot 64 */ +Var * +TclLookupVar(interp, part1, part2, flags, msg, createPart1, createPart2, arrayPtrPtr) + Tcl_Interp * interp; + char * part1; + char * part2; + int flags; + char * msg; + int createPart1; + int createPart2; + Var ** arrayPtrPtr; +{ + return (tclIntStubsPtr->tclLookupVar)(interp, part1, part2, flags, msg, createPart1, createPart2, arrayPtrPtr); +} + +/* Slot 65 */ +int +TclMatchFiles(interp, separators, dirPtr, pattern, tail) + Tcl_Interp * interp; + char * separators; + Tcl_DString * dirPtr; + char * pattern; + char * tail; +{ + return (tclIntStubsPtr->tclMatchFiles)(interp, separators, dirPtr, pattern, tail); +} + +/* Slot 66 */ +int +TclNeedSpace(start, end) + char * start; + char * end; +{ + return (tclIntStubsPtr->tclNeedSpace)(start, end); +} + +/* Slot 67 */ +Tcl_Obj * +TclNewProcBodyObj(procPtr) + Proc * procPtr; +{ + return (tclIntStubsPtr->tclNewProcBodyObj)(procPtr); +} + +/* Slot 68 */ +int +TclObjCommandComplete(cmdPtr) + Tcl_Obj * cmdPtr; +{ + return (tclIntStubsPtr->tclObjCommandComplete)(cmdPtr); +} + +/* Slot 69 */ +int +TclObjInterpProc(clientData, interp, objc, objv) + ClientData clientData; + Tcl_Interp * interp; + int objc; + Tcl_Obj *CONST objv[]; +{ + return (tclIntStubsPtr->tclObjInterpProc)(clientData, interp, objc, objv); +} + +/* Slot 70 */ +int +TclObjInvoke(interp, objc, objv, flags) + Tcl_Interp * interp; + int objc; + Tcl_Obj *CONST objv[]; + int flags; +{ + return (tclIntStubsPtr->tclObjInvoke)(interp, objc, objv, flags); +} + +/* Slot 71 */ +int +TclObjInvokeGlobal(interp, objc, objv, flags) + Tcl_Interp * interp; + int objc; + Tcl_Obj *CONST objv[]; + int flags; +{ + return (tclIntStubsPtr->tclObjInvokeGlobal)(interp, objc, objv, flags); +} + +/* Slot 72 */ +int +TclOpenFileChannelDeleteProc(proc) + TclOpenFileChannelProc_ * proc; +{ + return (tclIntStubsPtr->tclOpenFileChannelDeleteProc)(proc); +} + +/* Slot 73 */ +int +TclOpenFileChannelInsertProc(proc) + TclOpenFileChannelProc_ * proc; +{ + return (tclIntStubsPtr->tclOpenFileChannelInsertProc)(proc); +} + +/* Slot 74 */ +char * +TclpAlloc(size) + unsigned int size; +{ + return (tclIntStubsPtr->tclpAlloc)(size); +} + +/* Slot 75 */ +int +TclpCloseFile(file) + TclFile file; +{ + return (tclIntStubsPtr->tclpCloseFile)(file); +} + +/* Slot 76 */ +int +TclpCopyFile(source, dest) + char * source; + char * dest; +{ + return (tclIntStubsPtr->tclpCopyFile)(source, dest); +} + +/* Slot 77 */ +int +TclpCopyDirectory(source, dest, errorPtr) + char * source; + char * dest; + Tcl_DString * errorPtr; +{ + return (tclIntStubsPtr->tclpCopyDirectory)(source, dest, errorPtr); +} + +/* Slot 78 */ +Tcl_Channel +TclpCreateCommandChannel(readFile, writeFile, errorFile, numPids, pidPtr) + TclFile readFile; + TclFile writeFile; + TclFile errorFile; + int numPids; + Tcl_Pid * pidPtr; +{ + return (tclIntStubsPtr->tclpCreateCommandChannel)(readFile, writeFile, errorFile, numPids, pidPtr); +} + +/* Slot 79 */ +int +TclpCreateDirectory(path) + char * path; +{ + return (tclIntStubsPtr->tclpCreateDirectory)(path); +} + +/* Slot 80 */ +int +TclpCreatePipe(readPipe, writePipe) + TclFile * readPipe; + TclFile * writePipe; +{ + return (tclIntStubsPtr->tclpCreatePipe)(readPipe, writePipe); +} + +/* Slot 81 */ +int +TclpCreateProcess(interp, argc, argv, inputFile, outputFile, errorFile, pidPtr) + Tcl_Interp * interp; + int argc; + char ** argv; + TclFile inputFile; + TclFile outputFile; + TclFile errorFile; + Tcl_Pid * pidPtr; +{ + return (tclIntStubsPtr->tclpCreateProcess)(interp, argc, argv, inputFile, outputFile, errorFile, pidPtr); +} + +/* Slot 82 */ +TclFile +TclpCreateTempFile(contents, namePtr) + char * contents; + Tcl_DString * namePtr; +{ + return (tclIntStubsPtr->tclpCreateTempFile)(contents, namePtr); +} + +/* Slot 83 */ +int +TclpDeleteFile(path) + char * path; +{ + return (tclIntStubsPtr->tclpDeleteFile)(path); +} + +/* Slot 84 */ +void +TclpFinalize() +{ + (tclIntStubsPtr->tclpFinalize)(); +} + +/* Slot 85 */ +void +TclpFree(ptr) + char * ptr; +{ + (tclIntStubsPtr->tclpFree)(ptr); +} + +/* Slot 86 */ +unsigned long +TclpGetClicks() +{ + return (tclIntStubsPtr->tclpGetClicks)(); +} + +/* Slot 87 */ +unsigned long +TclpGetSeconds() +{ + return (tclIntStubsPtr->tclpGetSeconds)(); +} + +/* Slot 88 */ +void +TclpGetTime(time) + Tcl_Time * time; +{ + (tclIntStubsPtr->tclpGetTime)(time); +} + +/* Slot 89 */ +int +TclpGetTimeZone(time) + unsigned long time; +{ + return (tclIntStubsPtr->tclpGetTimeZone)(time); +} + +/* Slot 90 */ +char * +TclpGetTZName() +{ + return (tclIntStubsPtr->tclpGetTZName)(); +} + +/* Slot 91 */ +int +TclpListVolumes(interp) + Tcl_Interp * interp; +{ + return (tclIntStubsPtr->tclpListVolumes)(interp); +} + +/* Slot 92 */ +TclFile +TclpMakeFile(channel, direction) + Tcl_Channel channel; + int direction; +{ + return (tclIntStubsPtr->tclpMakeFile)(channel, direction); +} + +/* Slot 93 */ +TclFile +TclpOpenFile(fname, mode) + char * fname; + int mode; +{ + return (tclIntStubsPtr->tclpOpenFile)(fname, mode); +} + +/* Slot 94 */ +Tcl_Channel +TclpOpenFileChannel(interp, fileName, modeString, permissions) + Tcl_Interp * interp; + char * fileName; + char * modeString; + int permissions; +{ + return (tclIntStubsPtr->tclpOpenFileChannel)(interp, fileName, modeString, permissions); +} + +/* Slot 95 */ +char * +TclpRealloc(ptr, size) + char * ptr; + unsigned int size; +{ + return (tclIntStubsPtr->tclpRealloc)(ptr, size); +} + +/* Slot 96 */ +int +TclpRemoveDirectory(path, recursive, errorPtr) + char * path; + int recursive; + Tcl_DString * errorPtr; +{ + return (tclIntStubsPtr->tclpRemoveDirectory)(path, recursive, errorPtr); +} + +/* Slot 97 */ +int +TclpRenameFile(source, dest) + char * source; + char * dest; +{ + return (tclIntStubsPtr->tclpRenameFile)(source, dest); +} + +/* Slot 98 */ +int +TclParseBraces(interp, string, termPtr, pvPtr) + Tcl_Interp * interp; + char * string; + char ** termPtr; + ParseValue * pvPtr; +{ + return (tclIntStubsPtr->tclParseBraces)(interp, string, termPtr, pvPtr); +} + +/* Slot 99 */ +int +TclParseNestedCmd(interp, string, flags, termPtr, pvPtr) + Tcl_Interp * interp; + char * string; + int flags; + char ** termPtr; + ParseValue * pvPtr; +{ + return (tclIntStubsPtr->tclParseNestedCmd)(interp, string, flags, termPtr, pvPtr); +} + +/* Slot 100 */ +int +TclParseQuotes(interp, string, termChar, flags, termPtr, pvPtr) + Tcl_Interp * interp; + char * string; + int termChar; + int flags; + char ** termPtr; + ParseValue * pvPtr; +{ + return (tclIntStubsPtr->tclParseQuotes)(interp, string, termChar, flags, termPtr, pvPtr); +} + +/* Slot 101 */ +void +TclPlatformInit(interp) + Tcl_Interp * interp; +{ + (tclIntStubsPtr->tclPlatformInit)(interp); +} + +/* Slot 102 */ +char * +TclPrecTraceProc(clientData, interp, name1, name2, flags) + ClientData clientData; + Tcl_Interp * interp; + char * name1; + char * name2; + int flags; +{ + return (tclIntStubsPtr->tclPrecTraceProc)(clientData, interp, name1, name2, flags); +} + +/* Slot 103 */ +int +TclPreventAliasLoop(interp, cmdInterp, cmd) + Tcl_Interp * interp; + Tcl_Interp * cmdInterp; + Tcl_Command cmd; +{ + return (tclIntStubsPtr->tclPreventAliasLoop)(interp, cmdInterp, cmd); +} + +/* Slot 104 */ +void +TclPrintByteCodeObj(interp, objPtr) + Tcl_Interp * interp; + Tcl_Obj * objPtr; +{ + (tclIntStubsPtr->tclPrintByteCodeObj)(interp, objPtr); +} + +/* Slot 105 */ +void +TclProcCleanupProc(procPtr) + Proc * procPtr; +{ + (tclIntStubsPtr->tclProcCleanupProc)(procPtr); +} + +/* Slot 106 */ +int +TclProcCompileProc(interp, procPtr, bodyPtr, nsPtr, description, procName) + Tcl_Interp * interp; + Proc * procPtr; + Tcl_Obj * bodyPtr; + Namespace * nsPtr; + CONST char * description; + CONST char * procName; +{ + return (tclIntStubsPtr->tclProcCompileProc)(interp, procPtr, bodyPtr, nsPtr, description, procName); +} + +/* Slot 107 */ +void +TclProcDeleteProc(clientData) + ClientData clientData; +{ + (tclIntStubsPtr->tclProcDeleteProc)(clientData); +} + +/* Slot 108 */ +int +TclProcInterpProc(clientData, interp, argc, argv) + ClientData clientData; + Tcl_Interp * interp; + int argc; + char ** argv; +{ + return (tclIntStubsPtr->tclProcInterpProc)(clientData, interp, argc, argv); +} + +/* Slot 109 */ +int +TclRenameCommand(interp, oldName, newName) + Tcl_Interp * interp; + char * oldName; + char * newName; +{ + return (tclIntStubsPtr->tclRenameCommand)(interp, oldName, newName); +} + +/* Slot 110 */ +void +TclResetShadowedCmdRefs(interp, newCmdPtr) + Tcl_Interp * interp; + Command * newCmdPtr; +{ + (tclIntStubsPtr->tclResetShadowedCmdRefs)(interp, newCmdPtr); +} + +/* Slot 111 */ +int +TclServiceIdle() +{ + return (tclIntStubsPtr->tclServiceIdle)(); +} + +/* Slot 112 */ +Tcl_Obj * +TclSetElementOfIndexedArray(interp, localIndex, elemPtr, objPtr, leaveErrorMsg) + Tcl_Interp * interp; + int localIndex; + Tcl_Obj * elemPtr; + Tcl_Obj * objPtr; + int leaveErrorMsg; +{ + return (tclIntStubsPtr->tclSetElementOfIndexedArray)(interp, localIndex, elemPtr, objPtr, leaveErrorMsg); +} + +/* Slot 113 */ +Tcl_Obj * +TclSetIndexedScalar(interp, localIndex, objPtr, leaveErrorMsg) + Tcl_Interp * interp; + int localIndex; + Tcl_Obj * objPtr; + int leaveErrorMsg; +{ + return (tclIntStubsPtr->tclSetIndexedScalar)(interp, localIndex, objPtr, leaveErrorMsg); +} + +/* Slot 114 */ +char * +TclSetPreInitScript(string) + char * string; +{ + return (tclIntStubsPtr->tclSetPreInitScript)(string); +} + +/* Slot 115 */ +void +TclSetupEnv(interp) + Tcl_Interp * interp; +{ + (tclIntStubsPtr->tclSetupEnv)(interp); +} + +/* Slot 116 */ +int +TclSockGetPort(interp, string, proto, portPtr) + Tcl_Interp * interp; + char * string; + char * proto; + int * portPtr; +{ + return (tclIntStubsPtr->tclSockGetPort)(interp, string, proto, portPtr); +} + +/* Slot 117 */ +int +TclSockMinimumBuffers(sock, size) + int sock; + int size; +{ + return (tclIntStubsPtr->tclSockMinimumBuffers)(sock, size); +} + +/* Slot 118 */ +int +TclStat(path, buf) + CONST char * path; + TclStat_ * buf; +{ + return (tclIntStubsPtr->tclStat)(path, buf); +} + +/* Slot 119 */ +int +TclStatDeleteProc(proc) + TclStatProc_ * proc; +{ + return (tclIntStubsPtr->tclStatDeleteProc)(proc); +} + +/* Slot 120 */ +int +TclStatInsertProc(proc) + TclStatProc_ * proc; +{ + return (tclIntStubsPtr->tclStatInsertProc)(proc); +} + +/* Slot 121 */ +void +TclTeardownNamespace(nsPtr) + Namespace * nsPtr; +{ + (tclIntStubsPtr->tclTeardownNamespace)(nsPtr); +} + +/* Slot 122 */ +int +TclUpdateReturnInfo(iPtr) + Interp * iPtr; +{ + return (tclIntStubsPtr->tclUpdateReturnInfo)(iPtr); +} + +/* Slot 123 */ +char * +TclWordEnd(start, lastChar, nested, semiPtr) + char * start; + char * lastChar; + int nested; + int * semiPtr; +{ + return (tclIntStubsPtr->tclWordEnd)(start, lastChar, nested, semiPtr); +} + +/* Slot 124 */ +void +Tcl_AddInterpResolvers(interp, name, cmdProc, varProc, compiledVarProc) + Tcl_Interp * interp; + char * name; + Tcl_ResolveCmdProc * cmdProc; + Tcl_ResolveVarProc * varProc; + Tcl_ResolveCompiledVarProc * compiledVarProc; +{ + (tclIntStubsPtr->tcl_AddInterpResolvers)(interp, name, cmdProc, varProc, compiledVarProc); +} + +/* Slot 125 */ +int +Tcl_AppendExportList(interp, nsPtr, objPtr) + Tcl_Interp * interp; + Tcl_Namespace * nsPtr; + Tcl_Obj * objPtr; +{ + return (tclIntStubsPtr->tcl_AppendExportList)(interp, nsPtr, objPtr); +} + +/* Slot 126 */ +Tcl_Namespace * +Tcl_CreateNamespace(interp, name, clientData, deleteProc) + Tcl_Interp * interp; + char * name; + ClientData clientData; + Tcl_NamespaceDeleteProc * deleteProc; +{ + return (tclIntStubsPtr->tcl_CreateNamespace)(interp, name, clientData, deleteProc); +} + +/* Slot 127 */ +void +Tcl_DeleteNamespace(nsPtr) + Tcl_Namespace * nsPtr; +{ + (tclIntStubsPtr->tcl_DeleteNamespace)(nsPtr); +} + +/* Slot 128 */ +int +Tcl_Export(interp, nsPtr, pattern, resetListFirst) + Tcl_Interp * interp; + Tcl_Namespace * nsPtr; + char * pattern; + int resetListFirst; +{ + return (tclIntStubsPtr->tcl_Export)(interp, nsPtr, pattern, resetListFirst); +} + +/* Slot 129 */ +Tcl_Command +Tcl_FindCommand(interp, name, contextNsPtr, flags) + Tcl_Interp * interp; + char * name; + Tcl_Namespace * contextNsPtr; + int flags; +{ + return (tclIntStubsPtr->tcl_FindCommand)(interp, name, contextNsPtr, flags); +} + +/* Slot 130 */ +Tcl_Namespace * +Tcl_FindNamespace(interp, name, contextNsPtr, flags) + Tcl_Interp * interp; + char * name; + Tcl_Namespace * contextNsPtr; + int flags; +{ + return (tclIntStubsPtr->tcl_FindNamespace)(interp, name, contextNsPtr, flags); +} + +/* Slot 131 */ +int +Tcl_GetInterpResolvers(interp, name, resInfo) + Tcl_Interp * interp; + char * name; + Tcl_ResolverInfo * resInfo; +{ + return (tclIntStubsPtr->tcl_GetInterpResolvers)(interp, name, resInfo); +} + +/* Slot 132 */ +int +Tcl_GetNamespaceResolvers(namespacePtr, resInfo) + Tcl_Namespace * namespacePtr; + Tcl_ResolverInfo * resInfo; +{ + return (tclIntStubsPtr->tcl_GetNamespaceResolvers)(namespacePtr, resInfo); +} + +/* Slot 133 */ +Tcl_Var +Tcl_FindNamespaceVar(interp, name, contextNsPtr, flags) + Tcl_Interp * interp; + char * name; + Tcl_Namespace * contextNsPtr; + int flags; +{ + return (tclIntStubsPtr->tcl_FindNamespaceVar)(interp, name, contextNsPtr, flags); +} + +/* Slot 134 */ +int +Tcl_ForgetImport(interp, nsPtr, pattern) + Tcl_Interp * interp; + Tcl_Namespace * nsPtr; + char * pattern; +{ + return (tclIntStubsPtr->tcl_ForgetImport)(interp, nsPtr, pattern); +} + +/* Slot 135 */ +Tcl_Command +Tcl_GetCommandFromObj(interp, objPtr) + Tcl_Interp * interp; + Tcl_Obj * objPtr; +{ + return (tclIntStubsPtr->tcl_GetCommandFromObj)(interp, objPtr); +} + +/* Slot 136 */ +void +Tcl_GetCommandFullName(interp, command, objPtr) + Tcl_Interp * interp; + Tcl_Command command; + Tcl_Obj * objPtr; +{ + (tclIntStubsPtr->tcl_GetCommandFullName)(interp, command, objPtr); +} + +/* Slot 137 */ +Tcl_Namespace * +Tcl_GetCurrentNamespace(interp) + Tcl_Interp * interp; +{ + return (tclIntStubsPtr->tcl_GetCurrentNamespace)(interp); +} + +/* Slot 138 */ +Tcl_Namespace * +Tcl_GetGlobalNamespace(interp) + Tcl_Interp * interp; +{ + return (tclIntStubsPtr->tcl_GetGlobalNamespace)(interp); +} + +/* Slot 139 */ +void +Tcl_GetVariableFullName(interp, variable, objPtr) + Tcl_Interp * interp; + Tcl_Var variable; + Tcl_Obj * objPtr; +{ + (tclIntStubsPtr->tcl_GetVariableFullName)(interp, variable, objPtr); +} + +/* Slot 140 */ +int +Tcl_Import(interp, nsPtr, pattern, allowOverwrite) + Tcl_Interp * interp; + Tcl_Namespace * nsPtr; + char * pattern; + int allowOverwrite; +{ + return (tclIntStubsPtr->tcl_Import)(interp, nsPtr, pattern, allowOverwrite); +} + +/* Slot 141 */ +void +Tcl_PopCallFrame(interp) + Tcl_Interp* interp; +{ + (tclIntStubsPtr->tcl_PopCallFrame)(interp); +} + +/* Slot 142 */ +int +Tcl_PushCallFrame(interp, framePtr, nsPtr, isProcCallFrame) + Tcl_Interp* interp; + Tcl_CallFrame * framePtr; + Tcl_Namespace * nsPtr; + int isProcCallFrame; +{ + return (tclIntStubsPtr->tcl_PushCallFrame)(interp, framePtr, nsPtr, isProcCallFrame); +} + +/* Slot 143 */ +int +Tcl_RemoveInterpResolvers(interp, name) + Tcl_Interp * interp; + char * name; +{ + return (tclIntStubsPtr->tcl_RemoveInterpResolvers)(interp, name); +} + +/* Slot 144 */ +void +Tcl_SetNamespaceResolvers(namespacePtr, cmdProc, varProc, compiledVarProc) + Tcl_Namespace * namespacePtr; + Tcl_ResolveCmdProc * cmdProc; + Tcl_ResolveVarProc * varProc; + Tcl_ResolveCompiledVarProc * compiledVarProc; +{ + (tclIntStubsPtr->tcl_SetNamespaceResolvers)(namespacePtr, cmdProc, varProc, compiledVarProc); +} + +/* Slot 145 */ +int +TclCompileBreakCmd(interp, string, lastChar, compileFlags, compileEnvPtr) + Tcl_Interp * interp; + char * string; + char * lastChar; + int compileFlags; + struct CompileEnv * compileEnvPtr; +{ + return (tclIntStubsPtr->tclCompileBreakCmd)(interp, string, lastChar, compileFlags, compileEnvPtr); +} + +/* Slot 146 */ +int +TclCompileCatchCmd(interp, string, lastChar, compileFlags, compileEnvPtr) + Tcl_Interp * interp; + char * string; + char * lastChar; + int compileFlags; + struct CompileEnv * compileEnvPtr; +{ + return (tclIntStubsPtr->tclCompileCatchCmd)(interp, string, lastChar, compileFlags, compileEnvPtr); +} + +/* Slot 147 */ +int +TclCompileContinueCmd(interp, string, lastChar, compileFlags, compileEnvPtr) + Tcl_Interp * interp; + char * string; + char * lastChar; + int compileFlags; + struct CompileEnv * compileEnvPtr; +{ + return (tclIntStubsPtr->tclCompileContinueCmd)(interp, string, lastChar, compileFlags, compileEnvPtr); +} + +/* Slot 148 */ +int +TclCompileExprCmd(interp, string, lastChar, compileFlags, compileEnvPtr) + Tcl_Interp * interp; + char * string; + char * lastChar; + int compileFlags; + struct CompileEnv * compileEnvPtr; +{ + return (tclIntStubsPtr->tclCompileExprCmd)(interp, string, lastChar, compileFlags, compileEnvPtr); +} + +/* Slot 149 */ +int +TclCompileForCmd(interp, string, lastChar, compileFlags, compileEnvPtr) + Tcl_Interp * interp; + char * string; + char * lastChar; + int compileFlags; + struct CompileEnv * compileEnvPtr; +{ + return (tclIntStubsPtr->tclCompileForCmd)(interp, string, lastChar, compileFlags, compileEnvPtr); +} + +/* Slot 150 */ +int +TclCompileForeachCmd(interp, string, lastChar, compileFlags, compileEnvPtr) + Tcl_Interp * interp; + char * string; + char * lastChar; + int compileFlags; + struct CompileEnv * compileEnvPtr; +{ + return (tclIntStubsPtr->tclCompileForeachCmd)(interp, string, lastChar, compileFlags, compileEnvPtr); +} + +/* Slot 151 */ +int +TclCompileIfCmd(interp, string, lastChar, compileFlags, compileEnvPtr) + Tcl_Interp * interp; + char * string; + char * lastChar; + int compileFlags; + struct CompileEnv * compileEnvPtr; +{ + return (tclIntStubsPtr->tclCompileIfCmd)(interp, string, lastChar, compileFlags, compileEnvPtr); +} + +/* Slot 152 */ +int +TclCompileIncrCmd(interp, string, lastChar, compileFlags, compileEnvPtr) + Tcl_Interp * interp; + char * string; + char * lastChar; + int compileFlags; + struct CompileEnv * compileEnvPtr; +{ + return (tclIntStubsPtr->tclCompileIncrCmd)(interp, string, lastChar, compileFlags, compileEnvPtr); +} + +/* Slot 153 */ +int +TclCompileSetCmd(interp, string, lastChar, compileFlags, compileEnvPtr) + Tcl_Interp * interp; + char * string; + char * lastChar; + int compileFlags; + struct CompileEnv * compileEnvPtr; +{ + return (tclIntStubsPtr->tclCompileSetCmd)(interp, string, lastChar, compileFlags, compileEnvPtr); +} + +/* Slot 154 */ +int +TclCompileWhileCmd(interp, string, lastChar, compileFlags, compileEnvPtr) + Tcl_Interp * interp; + char * string; + char * lastChar; + int compileFlags; + struct CompileEnv * compileEnvPtr; +{ + return (tclIntStubsPtr->tclCompileWhileCmd)(interp, string, lastChar, compileFlags, compileEnvPtr); +} + + +/* !END!: Do not edit above this line. */ diff --git a/generic/panic.c b/generic/tclPanic.c index f7ea508..af795e1 100644 --- a/generic/panic.c +++ b/generic/tclPanic.c @@ -1,36 +1,21 @@ /* - * panic.c -- + * tclPanic.c -- * - * Source code for the "panic" library procedure for Tcl; + * Source code for the "Tcl_Panic" library procedure for Tcl; * individual applications will probably override this with * an application-specific panic procedure. * * Copyright (c) 1988-1993 The Regents of the University of California. * Copyright (c) 1994 Sun Microsystems, Inc. + * Copyright (c) 1998-1999 by Scriptics Corporation. * * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: panic.c,v 1.4 1998/09/14 18:39:56 stanton Exp $ + * RCS: @(#) $Id: tclPanic.c,v 1.1 1999/03/03 00:38:42 stanton Exp $ */ -#include <stdio.h> -#ifdef NO_STDLIB_H -# include "../compat/stdlib.h" -#else -# include <stdlib.h> -#endif - -#define panic panicDummy -#include "tcl.h" -#undef panic - -# undef TCL_STORAGE_CLASS -# define TCL_STORAGE_CLASS DLLEXPORT - -EXTERN void panic _ANSI_ARGS_((char *format, char *arg1, - char *arg2, char *arg3, char *arg4, char *arg5, - char *arg6, char *arg7, char *arg8)); +#include "tclInt.h" /* * The panicProc variable contains a pointer to an application @@ -65,7 +50,7 @@ Tcl_SetPanicProc(proc) /* *---------------------------------------------------------------------- * - * panic -- + * Tcl_PanicVA -- * * Print an error message and kill the process. * @@ -78,17 +63,28 @@ Tcl_SetPanicProc(proc) *---------------------------------------------------------------------- */ - /* VARARGS ARGSUSED */ void -panic(format, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) +Tcl_PanicVA (format, argList) char *format; /* Format string, suitable for passing to * fprintf. */ - char *arg1, *arg2, *arg3; /* Additional arguments (variable in number) - * to pass to fprintf. */ - char *arg4, *arg5, *arg6, *arg7, *arg8; + va_list argList; /* Variable argument list. */ { + char *arg1, *arg2, *arg3, *arg4; /* Additional arguments (variable in + * number) to pass to fprintf. */ + char *arg5, *arg6, *arg7, *arg8; + + arg1 = va_arg(argList, char *); + arg2 = va_arg(argList, char *); + arg3 = va_arg(argList, char *); + arg4 = va_arg(argList, char *); + arg5 = va_arg(argList, char *); + arg6 = va_arg(argList, char *); + arg7 = va_arg(argList, char *); + arg8 = va_arg(argList, char *); + if (panicProc != NULL) { - (void) (*panicProc)(format, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8); + (void) (*panicProc)(format, arg1, arg2, arg3, arg4, + arg5, arg6, arg7, arg8); } else { (void) fprintf(stderr, format, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8); @@ -97,3 +93,31 @@ panic(format, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) abort(); } } + +/* + *---------------------------------------------------------------------- + * + * Tcl_Panic -- + * + * Print an error message and kill the process. + * + * Results: + * None. + * + * Side effects: + * The process dies, entering the debugger if possible. + * + *---------------------------------------------------------------------- + */ + + /* VARARGS ARGSUSED */ +void +Tcl_Panic TCL_VARARGS_DEF(char *,arg1) +{ + va_list argList; + char *format; + + format = TCL_VARARGS_START(char *,arg1,argList); + Tcl_PanicVA(format, argList); + va_end (argList); +} diff --git a/generic/tclPlatDecls.h b/generic/tclPlatDecls.h new file mode 100644 index 0000000..3ef035a --- /dev/null +++ b/generic/tclPlatDecls.h @@ -0,0 +1,56 @@ + +/* !BEGIN!: Do not edit below this line. */ + +/* + * Exported function declarations: + */ + +#if !defined(__WIN32__) && !defined(MAC_TCL) +/* 0 */ +EXTERN void Tcl_CreateFileHandler _ANSI_ARGS_((int fd, int mask, + Tcl_FileProc * proc, ClientData clientData)); +/* 1 */ +EXTERN void Tcl_DeleteFileHandler _ANSI_ARGS_((int fd)); +/* 2 */ +EXTERN int Tcl_GetOpenFile _ANSI_ARGS_((Tcl_Interp * interp, + char * string, int write, int checkUsage, + ClientData * filePtr)); +#endif /* UNIX */ + +typedef struct TclPlatStubs { + int magic; + struct TclPlatStubHooks *hooks; + +#if !defined(__WIN32__) && !defined(MAC_TCL) + void (*tcl_CreateFileHandler) _ANSI_ARGS_((int fd, int mask, Tcl_FileProc * proc, ClientData clientData)); /* 0 */ + void (*tcl_DeleteFileHandler) _ANSI_ARGS_((int fd)); /* 1 */ + int (*tcl_GetOpenFile) _ANSI_ARGS_((Tcl_Interp * interp, char * string, int write, int checkUsage, ClientData * filePtr)); /* 2 */ +#endif /* UNIX */ +} TclPlatStubs; + +extern TclPlatStubs *tclPlatStubsPtr; + +#if defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS) + +/* + * Inline function declarations: + */ + +#if !defined(__WIN32__) && !defined(MAC_TCL) +#ifndef Tcl_CreateFileHandler +#define Tcl_CreateFileHandler(fd, mask, proc, clientData) \ + (tclPlatStubsPtr->tcl_CreateFileHandler)(fd, mask, proc, clientData) /* 0 */ +#endif +#ifndef Tcl_DeleteFileHandler +#define Tcl_DeleteFileHandler(fd) \ + (tclPlatStubsPtr->tcl_DeleteFileHandler)(fd) /* 1 */ +#endif +#ifndef Tcl_GetOpenFile +#define Tcl_GetOpenFile(interp, string, write, checkUsage, filePtr) \ + (tclPlatStubsPtr->tcl_GetOpenFile)(interp, string, write, checkUsage, filePtr) /* 2 */ +#endif +#endif /* UNIX */ + +#endif /* defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS) */ + +/* !END!: Do not edit above this line. */ diff --git a/generic/tclPlatStubs.c b/generic/tclPlatStubs.c new file mode 100644 index 0000000..82f8b4d --- /dev/null +++ b/generic/tclPlatStubs.c @@ -0,0 +1,62 @@ +/* + * tclPlatStubs.c -- + * + * This file contains the wrapper functions for the platform independent + * unsupported Tcl API. + * + * Copyright (c) 1998-1999 by Scriptics Corporation. + * All rights reserved. + * + * RCS: @(#) $Id: tclPlatStubs.c,v 1.1 1999/03/03 00:38:42 stanton Exp $ + */ + +#include "tcl.h" +#include "tclPort.h" + +/* + * WARNING: This file is automatically generated by the tools/genStubs.tcl + * script. Any modifications to the function declarations below should be made + * in the generic/tclInt.decls script. + */ + +/* !BEGIN!: Do not edit below this line. */ + +/* + * Exported stub functions: + */ + +#if !defined(__WIN32__) && !defined(MAC_TCL) +/* Slot 0 */ +void +Tcl_CreateFileHandler(fd, mask, proc, clientData) + int fd; + int mask; + Tcl_FileProc * proc; + ClientData clientData; +{ + (tclPlatStubsPtr->tcl_CreateFileHandler)(fd, mask, proc, clientData); +} + +/* Slot 1 */ +void +Tcl_DeleteFileHandler(fd) + int fd; +{ + (tclPlatStubsPtr->tcl_DeleteFileHandler)(fd); +} + +/* Slot 2 */ +int +Tcl_GetOpenFile(interp, string, write, checkUsage, filePtr) + Tcl_Interp * interp; + char * string; + int write; + int checkUsage; + ClientData * filePtr; +{ + return (tclPlatStubsPtr->tcl_GetOpenFile)(interp, string, write, checkUsage, filePtr); +} + +#endif /* UNIX */ + +/* !END!: Do not edit above this line. */ diff --git a/generic/tclStubInit.c b/generic/tclStubInit.c new file mode 100644 index 0000000..2737f9c --- /dev/null +++ b/generic/tclStubInit.c @@ -0,0 +1,514 @@ +/* + * tclStubInit.c -- + * + * This file contains the initializers for the Tcl stub vectors. + * + * Copyright (c) 1998-1999 by Scriptics Corporation. + * + * See the file "license.terms" for information on usage and redistribution + * of this file, and for a DISCLAIMER OF ALL WARRANTIES. + * + * RCS: @(#) $Id: tclStubInit.c,v 1.1 1999/03/03 00:38:43 stanton Exp $ + */ + +#include "tclInt.h" +#include "tclPort.h" + +/* + * WARNING: The contents of this file is automatically generated by the + * tools/genStubs.tcl script. Any modifications to the function declarations + * below should be made in the generic/tcl.decls script. + */ + +/* !BEGIN!: Do not edit below this line. */ + +static TclStubHooks tclStubHooks; + +TclStubs tclStubs = { + TCL_STUB_MAGIC, + &tclStubHooks, + Tcl_AddErrorInfo, /* 0 */ + Tcl_AddObjErrorInfo, /* 1 */ + Tcl_Alloc, /* 2 */ + Tcl_AllowExceptions, /* 3 */ + Tcl_AppendAllObjTypes, /* 4 */ + Tcl_AppendElement, /* 5 */ + Tcl_AppendResult, /* 6 */ + Tcl_AppendResultVA, /* 7 */ + Tcl_AppendToObj, /* 8 */ + Tcl_AppendStringsToObj, /* 9 */ + Tcl_AppendStringsToObjVA, /* 10 */ + Tcl_AsyncCreate, /* 11 */ + Tcl_AsyncDelete, /* 12 */ + Tcl_AsyncInvoke, /* 13 */ + Tcl_AsyncMark, /* 14 */ + Tcl_AsyncReady, /* 15 */ + Tcl_BackgroundError, /* 16 */ + Tcl_Backslash, /* 17 */ + Tcl_BadChannelOption, /* 18 */ + Tcl_CallWhenDeleted, /* 19 */ + Tcl_CancelIdleCall, /* 20 */ + Tcl_Close, /* 21 */ + Tcl_CommandComplete, /* 22 */ + Tcl_Concat, /* 23 */ + Tcl_ConcatObj, /* 24 */ + Tcl_ConvertCountedElement, /* 25 */ + Tcl_ConvertElement, /* 26 */ + Tcl_ConvertToType, /* 27 */ + Tcl_CreateAlias, /* 28 */ + Tcl_CreateAliasObj, /* 29 */ + Tcl_CreateChannel, /* 30 */ + Tcl_CreateChannelHandler, /* 31 */ + Tcl_CreateCloseHandler, /* 32 */ + Tcl_CreateCommand, /* 33 */ + Tcl_CreateEventSource, /* 34 */ + Tcl_CreateExitHandler, /* 35 */ + Tcl_CreateInterp, /* 36 */ + Tcl_CreateMathFunc, /* 37 */ + Tcl_CreateObjCommand, /* 38 */ + Tcl_CreateSlave, /* 39 */ + Tcl_CreateTimerHandler, /* 40 */ + Tcl_CreateTrace, /* 41 */ + Tcl_DbCkalloc, /* 42 */ + Tcl_DbCkfree, /* 43 */ + Tcl_DbCkrealloc, /* 44 */ + Tcl_DbDecrRefCount, /* 45 */ + Tcl_DbIncrRefCount, /* 46 */ + Tcl_DbIsShared, /* 47 */ + Tcl_DbNewBooleanObj, /* 48 */ + Tcl_DbNewByteArrayObj, /* 49 */ + Tcl_DbNewDoubleObj, /* 50 */ + Tcl_DbNewListObj, /* 51 */ + Tcl_DbNewLongObj, /* 52 */ + Tcl_DbNewObj, /* 53 */ + Tcl_DbNewStringObj, /* 54 */ + Tcl_DeleteAssocData, /* 55 */ + Tcl_DeleteCommand, /* 56 */ + Tcl_DeleteCommandFromToken, /* 57 */ + Tcl_DeleteChannelHandler, /* 58 */ + Tcl_DeleteCloseHandler, /* 59 */ + Tcl_DeleteEvents, /* 60 */ + Tcl_DeleteEventSource, /* 61 */ + Tcl_DeleteExitHandler, /* 62 */ + Tcl_DeleteHashEntry, /* 63 */ + Tcl_DeleteHashTable, /* 64 */ + Tcl_DeleteInterp, /* 65 */ + Tcl_DeleteTimerHandler, /* 66 */ + Tcl_DeleteTrace, /* 67 */ + Tcl_DetachPids, /* 68 */ + Tcl_DontCallWhenDeleted, /* 69 */ + Tcl_DoOneEvent, /* 70 */ + Tcl_DoWhenIdle, /* 71 */ + Tcl_DStringAppend, /* 72 */ + Tcl_DStringAppendElement, /* 73 */ + Tcl_DStringEndSublist, /* 74 */ + Tcl_DStringFree, /* 75 */ + Tcl_DStringGetResult, /* 76 */ + Tcl_DStringInit, /* 77 */ + Tcl_DStringResult, /* 78 */ + Tcl_DStringSetLength, /* 79 */ + Tcl_DStringStartSublist, /* 80 */ + Tcl_DumpActiveMemory, /* 81 */ + Tcl_DuplicateObj, /* 82 */ + Tcl_Eof, /* 83 */ + Tcl_ErrnoId, /* 84 */ + Tcl_ErrnoMsg, /* 85 */ + Tcl_Eval, /* 86 */ + Tcl_EvalFile, /* 87 */ + Tcl_EventuallyFree, /* 88 */ + Tcl_EvalObj, /* 89 */ + Tcl_Exit, /* 90 */ + Tcl_ExposeCommand, /* 91 */ + Tcl_ExprBoolean, /* 92 */ + Tcl_ExprBooleanObj, /* 93 */ + Tcl_ExprDouble, /* 94 */ + Tcl_ExprDoubleObj, /* 95 */ + Tcl_ExprLong, /* 96 */ + Tcl_ExprLongObj, /* 97 */ + Tcl_ExprObj, /* 98 */ + Tcl_ExprString, /* 99 */ + Tcl_Finalize, /* 100 */ + Tcl_FindExecutable, /* 101 */ + Tcl_FirstHashEntry, /* 102 */ + Tcl_Flush, /* 103 */ + Tcl_Free, /* 104 */ + TclFreeObj, /* 105 */ + Tcl_FreeResult, /* 106 */ + Tcl_GetAlias, /* 107 */ + Tcl_GetAliasObj, /* 108 */ + Tcl_GetAssocData, /* 109 */ + Tcl_GetBoolean, /* 110 */ + Tcl_GetBooleanFromObj, /* 111 */ + Tcl_GetByteArrayFromObj, /* 112 */ + Tcl_GetChannel, /* 113 */ + Tcl_GetChannelBufferSize, /* 114 */ + Tcl_GetChannelHandle, /* 115 */ + Tcl_GetChannelInstanceData, /* 116 */ + Tcl_GetChannelMode, /* 117 */ + Tcl_GetChannelName, /* 118 */ + Tcl_GetChannelOption, /* 119 */ + Tcl_GetChannelType, /* 120 */ + Tcl_GetCommandInfo, /* 121 */ + Tcl_GetCommandName, /* 122 */ + Tcl_GetDouble, /* 123 */ + Tcl_GetDoubleFromObj, /* 124 */ + Tcl_GetErrno, /* 125 */ + Tcl_GetHostName, /* 126 */ + Tcl_GetIndexFromObj, /* 127 */ + Tcl_GetInt, /* 128 */ + Tcl_GetInterpPath, /* 129 */ + Tcl_GetIntFromObj, /* 130 */ + Tcl_GetLongFromObj, /* 131 */ + Tcl_GetMaster, /* 132 */ + Tcl_GetNameOfExecutable, /* 133 */ + Tcl_GetObjResult, /* 134 */ + Tcl_GetObjType, /* 135 */ + Tcl_GetPathType, /* 136 */ + Tcl_Gets, /* 137 */ + Tcl_GetsObj, /* 138 */ + Tcl_GetServiceMode, /* 139 */ + Tcl_GetSlave, /* 140 */ + Tcl_GetStdChannel, /* 141 */ + Tcl_GetStringFromObj, /* 142 */ + Tcl_GetStringResult, /* 143 */ + Tcl_GetVar, /* 144 */ + Tcl_GetVar2, /* 145 */ + Tcl_GlobalEval, /* 146 */ + Tcl_GlobalEvalObj, /* 147 */ + Tcl_HashStats, /* 148 */ + Tcl_HideCommand, /* 149 */ + Tcl_Init, /* 150 */ + Tcl_InitHashTable, /* 151 */ + Tcl_InputBlocked, /* 152 */ + Tcl_InputBuffered, /* 153 */ + Tcl_InterpDeleted, /* 154 */ + Tcl_IsSafe, /* 155 */ + Tcl_InvalidateStringRep, /* 156 */ + Tcl_JoinPath, /* 157 */ + Tcl_LinkVar, /* 158 */ + Tcl_ListObjAppendList, /* 159 */ + Tcl_ListObjAppendElement, /* 160 */ + Tcl_ListObjGetElements, /* 161 */ + Tcl_ListObjIndex, /* 162 */ + Tcl_ListObjLength, /* 163 */ + Tcl_ListObjReplace, /* 164 */ + Tcl_MakeFileChannel, /* 165 */ + Tcl_MakeSafe, /* 166 */ + Tcl_MakeTcpClientChannel, /* 167 */ + Tcl_Merge, /* 168 */ + Tcl_NewBooleanObj, /* 169 */ + Tcl_NewByteArrayObj, /* 170 */ + Tcl_NewDoubleObj, /* 171 */ + Tcl_NewIntObj, /* 172 */ + Tcl_NewListObj, /* 173 */ + Tcl_NewLongObj, /* 174 */ + Tcl_NewObj, /* 175 */ + Tcl_NewStringObj, /* 176 */ + Tcl_NextHashEntry, /* 177 */ + Tcl_NotifyChannel, /* 178 */ + Tcl_ObjGetVar2, /* 179 */ + Tcl_ObjSetVar2, /* 180 */ + Tcl_OpenCommandChannel, /* 181 */ + Tcl_OpenFileChannel, /* 182 */ + Tcl_OpenTcpClient, /* 183 */ + Tcl_OpenTcpServer, /* 184 */ + Tcl_Panic, /* 185 */ + Tcl_PanicVA, /* 186 */ + Tcl_ParseVar, /* 187 */ + Tcl_PkgPresent, /* 188 */ + Tcl_PkgPresentEx, /* 189 */ + Tcl_PkgProvide, /* 190 */ + Tcl_PkgProvideEx, /* 191 */ + Tcl_PkgRequire, /* 192 */ + Tcl_PkgRequireEx, /* 193 */ + Tcl_PosixError, /* 194 */ + Tcl_Preserve, /* 195 */ + Tcl_PrintDouble, /* 196 */ + Tcl_PutEnv, /* 197 */ + Tcl_QueueEvent, /* 198 */ + Tcl_Read, /* 199 */ + Tcl_Realloc, /* 200 */ + Tcl_ReapDetachedProcs, /* 201 */ + Tcl_RecordAndEval, /* 202 */ + Tcl_RecordAndEvalObj, /* 203 */ + Tcl_RegExpCompile, /* 204 */ + Tcl_RegExpExec, /* 205 */ + Tcl_RegExpMatch, /* 206 */ + Tcl_RegExpRange, /* 207 */ + Tcl_RegisterChannel, /* 208 */ + Tcl_RegisterObjType, /* 209 */ + Tcl_Release, /* 210 */ + Tcl_ResetResult, /* 211 */ + Tcl_ScanCountedElement, /* 212 */ + Tcl_ScanElement, /* 213 */ + Tcl_Seek, /* 214 */ + Tcl_ServiceAll, /* 215 */ + Tcl_ServiceEvent, /* 216 */ + Tcl_SetAssocData, /* 217 */ + Tcl_SetBooleanObj, /* 218 */ + Tcl_SetByteArrayLength, /* 219 */ + Tcl_SetByteArrayObj, /* 220 */ + Tcl_SetChannelBufferSize, /* 221 */ + Tcl_SetChannelOption, /* 222 */ + Tcl_SetCommandInfo, /* 223 */ + Tcl_SetDoubleObj, /* 224 */ + Tcl_SetErrno, /* 225 */ + Tcl_SetErrorCode, /* 226 */ + Tcl_SetErrorCodeVA, /* 227 */ + Tcl_SetIntObj, /* 228 */ + Tcl_SetListObj, /* 229 */ + Tcl_SetLongObj, /* 230 */ + Tcl_SetMaxBlockTime, /* 231 */ + Tcl_SetObjErrorCode, /* 232 */ + Tcl_SetObjLength, /* 233 */ + Tcl_SetObjResult, /* 234 */ + Tcl_SetPanicProc, /* 235 */ + Tcl_SetRecursionLimit, /* 236 */ + Tcl_SetResult, /* 237 */ + Tcl_SetServiceMode, /* 238 */ + Tcl_SetStdChannel, /* 239 */ + Tcl_SetStringObj, /* 240 */ + Tcl_SetTimer, /* 241 */ + Tcl_SetVar, /* 242 */ + Tcl_SetVar2, /* 243 */ + Tcl_SignalId, /* 244 */ + Tcl_SignalMsg, /* 245 */ + Tcl_Sleep, /* 246 */ + Tcl_SourceRCFile, /* 247 */ + Tcl_SplitList, /* 248 */ + Tcl_SplitPath, /* 249 */ + Tcl_StaticPackage, /* 250 */ + Tcl_StringMatch, /* 251 */ + Tcl_Tell, /* 252 */ + Tcl_TraceVar, /* 253 */ + Tcl_TraceVar2, /* 254 */ + Tcl_TranslateFileName, /* 255 */ + Tcl_Ungets, /* 256 */ + Tcl_UnlinkVar, /* 257 */ + Tcl_UnregisterChannel, /* 258 */ + Tcl_UnsetVar, /* 259 */ + Tcl_UnsetVar2, /* 260 */ + Tcl_UntraceVar, /* 261 */ + Tcl_UntraceVar2, /* 262 */ + Tcl_UpdateLinkedVar, /* 263 */ + Tcl_UpVar, /* 264 */ + Tcl_UpVar2, /* 265 */ + Tcl_ValidateAllMemory, /* 266 */ + Tcl_VarEval, /* 267 */ + Tcl_VarEvalVA, /* 268 */ + Tcl_VarTraceInfo, /* 269 */ + Tcl_VarTraceInfo2, /* 270 */ + Tcl_WaitForEvent, /* 271 */ + Tcl_WaitPid, /* 272 */ + Tcl_Write, /* 273 */ + Tcl_WrongNumArgs, /* 274 */ +}; + +extern TclStubs *tclStubsPtr = &tclStubs; + +TclIntStubs tclIntStubs = { + TCL_STUB_MAGIC, + NULL, + TclAccess, /* 0 */ + TclAccessDeleteProc, /* 1 */ + TclAccessInsertProc, /* 2 */ + TclAllocateFreeObjects, /* 3 */ + TclChdir, /* 4 */ + TclCleanupChildren, /* 5 */ + TclCleanupCommand, /* 6 */ + TclCopyAndCollapse, /* 7 */ + TclCopyChannel, /* 8 */ + TclCreatePipeline, /* 9 */ + TclCreateProc, /* 10 */ + TclDeleteCompiledLocalVars, /* 11 */ + TclDeleteVars, /* 12 */ + TclDoGlob, /* 13 */ + TclDumpMemoryInfo, /* 14 */ + TclExpandParseValue, /* 15 */ + TclExprFloatError, /* 16 */ + TclFileAttrsCmd, /* 17 */ + TclFileCopyCmd, /* 18 */ + TclFileDeleteCmd, /* 19 */ + TclFileMakeDirsCmd, /* 20 */ + TclFileRenameCmd, /* 21 */ + TclFinalizeCompExecEnv, /* 22 */ + TclFinalizeEnvironment, /* 23 */ + TclFinalizeExecEnv, /* 24 */ + TclFindElement, /* 25 */ + TclFindProc, /* 26 */ + TclFormatInt, /* 27 */ + TclFreePackageInfo, /* 28 */ + TclGetAndDetachPids, /* 29 */ + TclGetCwd, /* 30 */ + TclGetDate, /* 31 */ + TclGetDefaultStdChannel, /* 32 */ + TclGetElementOfIndexedArray, /* 33 */ + TclGetEnv, /* 34 */ + TclGetExtension, /* 35 */ + TclGetFrame, /* 36 */ + TclGetInterpProc, /* 37 */ + TclGetIntForIndex, /* 38 */ + TclGetIndexedScalar, /* 39 */ + TclGetLong, /* 40 */ + TclGetLoadedPackages, /* 41 */ + TclGetNamespaceForQualName, /* 42 */ + TclGetObjInterpProc, /* 43 */ + TclGetOpenMode, /* 44 */ + TclGetOriginalCommand, /* 45 */ + TclpGetUserHome, /* 46 */ + TclGlobalInvoke, /* 47 */ + TclGuessPackageName, /* 48 */ + TclHasSockets, /* 49 */ + TclHideUnsafeCommands, /* 50 */ + TclInExit, /* 51 */ + TclIncrElementOfIndexedArray, /* 52 */ + TclIncrIndexedScalar, /* 53 */ + TclIncrVar2, /* 54 */ + TclInitCompiledLocals, /* 55 */ + TclInitNamespaces, /* 56 */ + TclInterpInit, /* 57 */ + TclInvoke, /* 58 */ + TclInvokeObjectCommand, /* 59 */ + TclInvokeStringCommand, /* 60 */ + TclIsProc, /* 61 */ + TclLoadFile, /* 62 */ + TclLooksLikeInt, /* 63 */ + TclLookupVar, /* 64 */ + TclMatchFiles, /* 65 */ + TclNeedSpace, /* 66 */ + TclNewProcBodyObj, /* 67 */ + TclObjCommandComplete, /* 68 */ + TclObjInterpProc, /* 69 */ + TclObjInvoke, /* 70 */ + TclObjInvokeGlobal, /* 71 */ + TclOpenFileChannelDeleteProc, /* 72 */ + TclOpenFileChannelInsertProc, /* 73 */ + TclpAlloc, /* 74 */ + TclpCloseFile, /* 75 */ + TclpCopyFile, /* 76 */ + TclpCopyDirectory, /* 77 */ + TclpCreateCommandChannel, /* 78 */ + TclpCreateDirectory, /* 79 */ + TclpCreatePipe, /* 80 */ + TclpCreateProcess, /* 81 */ + TclpCreateTempFile, /* 82 */ + TclpDeleteFile, /* 83 */ + TclpFinalize, /* 84 */ + TclpFree, /* 85 */ + TclpGetClicks, /* 86 */ + TclpGetSeconds, /* 87 */ + TclpGetTime, /* 88 */ + TclpGetTimeZone, /* 89 */ + TclpGetTZName, /* 90 */ + TclpListVolumes, /* 91 */ + TclpMakeFile, /* 92 */ + TclpOpenFile, /* 93 */ + TclpOpenFileChannel, /* 94 */ + TclpRealloc, /* 95 */ + TclpRemoveDirectory, /* 96 */ + TclpRenameFile, /* 97 */ + TclParseBraces, /* 98 */ + TclParseNestedCmd, /* 99 */ + TclParseQuotes, /* 100 */ + TclPlatformInit, /* 101 */ + TclPrecTraceProc, /* 102 */ + TclPreventAliasLoop, /* 103 */ + TclPrintByteCodeObj, /* 104 */ + TclProcCleanupProc, /* 105 */ + TclProcCompileProc, /* 106 */ + TclProcDeleteProc, /* 107 */ + TclProcInterpProc, /* 108 */ + TclRenameCommand, /* 109 */ + TclResetShadowedCmdRefs, /* 110 */ + TclServiceIdle, /* 111 */ + TclSetElementOfIndexedArray, /* 112 */ + TclSetIndexedScalar, /* 113 */ + TclSetPreInitScript, /* 114 */ + TclSetupEnv, /* 115 */ + TclSockGetPort, /* 116 */ + TclSockMinimumBuffers, /* 117 */ + TclStat, /* 118 */ + TclStatDeleteProc, /* 119 */ + TclStatInsertProc, /* 120 */ + TclTeardownNamespace, /* 121 */ + TclUpdateReturnInfo, /* 122 */ + TclWordEnd, /* 123 */ + Tcl_AddInterpResolvers, /* 124 */ + Tcl_AppendExportList, /* 125 */ + Tcl_CreateNamespace, /* 126 */ + Tcl_DeleteNamespace, /* 127 */ + Tcl_Export, /* 128 */ + Tcl_FindCommand, /* 129 */ + Tcl_FindNamespace, /* 130 */ + Tcl_GetInterpResolvers, /* 131 */ + Tcl_GetNamespaceResolvers, /* 132 */ + Tcl_FindNamespaceVar, /* 133 */ + Tcl_ForgetImport, /* 134 */ + Tcl_GetCommandFromObj, /* 135 */ + Tcl_GetCommandFullName, /* 136 */ + Tcl_GetCurrentNamespace, /* 137 */ + Tcl_GetGlobalNamespace, /* 138 */ + Tcl_GetVariableFullName, /* 139 */ + Tcl_Import, /* 140 */ + Tcl_PopCallFrame, /* 141 */ + Tcl_PushCallFrame, /* 142 */ + Tcl_RemoveInterpResolvers, /* 143 */ + Tcl_SetNamespaceResolvers, /* 144 */ + TclCompileBreakCmd, /* 145 */ + TclCompileCatchCmd, /* 146 */ + TclCompileContinueCmd, /* 147 */ + TclCompileExprCmd, /* 148 */ + TclCompileForCmd, /* 149 */ + TclCompileForeachCmd, /* 150 */ + TclCompileIfCmd, /* 151 */ + TclCompileIncrCmd, /* 152 */ + TclCompileSetCmd, /* 153 */ + TclCompileWhileCmd, /* 154 */ +}; + +extern TclIntStubs *tclIntStubsPtr = &tclIntStubs; + +TclIntPlatStubs tclIntPlatStubs = { + TCL_STUB_MAGIC, + NULL, +#ifdef __WIN32__ + TclWinConvertError, /* 0 */ + TclWinConvertWSAError, /* 1 */ + TclWinGetServByName, /* 2 */ + TclWinGetSockOpt, /* 3 */ + TclWinGetTclInstance, /* 4 */ + TclWinLoadLibrary, /* 5 */ + TclWinNToHS, /* 6 */ + TclWinSetSockOpt, /* 7 */ +#endif /* __WIN32__ */ +#ifdef MAC_TCL + TclpCheckStackSpace, /* 0 */ + TclpSysAlloc, /* 1 */ + TclpSysFree, /* 2 */ + TclpSysRealloc, /* 3 */ + TclPlatformExit, /* 4 */ +#endif /* MAC_TCL */ +}; + +extern TclIntPlatStubs *tclIntPlatStubsPtr = &tclIntPlatStubs; + +TclPlatStubs tclPlatStubs = { + TCL_STUB_MAGIC, + NULL, +#if !defined(__WIN32__) && !defined(MAC_TCL) + Tcl_CreateFileHandler, /* 0 */ + Tcl_DeleteFileHandler, /* 1 */ + Tcl_GetOpenFile, /* 2 */ +#endif /* UNIX */ +}; + +extern TclPlatStubs *tclPlatStubsPtr = &tclPlatStubs; + +static TclStubHooks tclStubHooks = { + &tclPlatStubs, + &tclIntStubs, + &tclIntPlatStubs +}; + + +/* !END!: Do not edit above this line. */ diff --git a/generic/tclStubLib.c b/generic/tclStubLib.c new file mode 100644 index 0000000..0c881b0 --- /dev/null +++ b/generic/tclStubLib.c @@ -0,0 +1,104 @@ +/* + * tclStubLib.c -- + * + * Stub object that will be statically linked into extensions that wish + * to access Tcl. + * + * Copyright (c) 1998-1999 by Scriptics Corporation. + * Copyright (c) 1998 Paul Duffin. + * + * See the file "license.terms" for information on usage and redistribution + * of this file, and for a DISCLAIMER OF ALL WARRANTIES. + * + * RCS: @(#) $Id: tclStubLib.c,v 1.1 1999/03/03 00:38:43 stanton Exp $ + */ + +/* + * We need to ensure that we use the stub macros so that this file contains + * no references to any of the stub functions. This will make it possible + * to build an extension that references Tcl_InitStubs but doesn't end up + * including the rest of the stub functions. + */ + +#undef TCL_NO_INLINES + +#include "tclInt.h" +#include "tclPort.h" + +/* + * Ensure that Tcl_InitStubs is built as an exported symbol. The other stub + * functions should be built as non-exported symbols. + */ + +#undef TCL_STORAGE_CLASS +#define TCL_STORAGE_CLASS DLLEXPORT + +TclStubs *tclStubsPtr; +TclPlatStubs *tclPlatStubsPtr; + +static TclStubs * HasStubSupport _ANSI_ARGS_((Tcl_Interp *interp)); + +static TclStubs * +HasStubSupport (interp) + Tcl_Interp *interp; +{ + Interp *iPtr = (Interp *) interp; + + if (iPtr->stubTable && (iPtr->stubTable->magic == TCL_STUB_MAGIC)) { + return iPtr->stubTable; + } + interp->result = "This interpreter does not support stubs-enabled extensions."; + interp->freeProc = TCL_STATIC; + + return NULL; +} + +/* + *---------------------------------------------------------------------- + * + * Tcl_InitStubs -- + * + * Tries to initialise the stub table pointers and ensures that + * the correct version of Tcl is loaded. + * + * Results: + * The actual version of Tcl that satisfies the request, or + * NULL to indicate that an error occurred. + * + * Side effects: + * Sets the stub table pointers. + * + *---------------------------------------------------------------------- + */ + +char * +Tcl_InitStubs (interp, version, exact) + Tcl_Interp *interp; + char *version; + int exact; +{ + char *actualVersion; + TclStubs *tmp; + + if (!tclStubsPtr) { + tclStubsPtr = HasStubSupport(interp); + if (!tclStubsPtr) { + return NULL; + } + } + + actualVersion = Tcl_PkgRequireEx(interp, "Tcl", version, exact, + (ClientData *) &tmp); + if (actualVersion == NULL) { + tclStubsPtr = NULL; + return NULL; + } + + if (tclStubsPtr->hooks) { + tclPlatStubsPtr = tclStubsPtr->hooks->tclPlatStubs; + } else { + tclPlatStubsPtr = NULL; + } + + return actualVersion; +} diff --git a/generic/tclStubs.c b/generic/tclStubs.c new file mode 100644 index 0000000..523eefd --- /dev/null +++ b/generic/tclStubs.c @@ -0,0 +1,2653 @@ +/* + * tclStubs.c -- + * + * This file contains the wrapper functions for the platform independent + * public Tcl API. + * + * Copyright (c) 1998-1999 by Scriptics Corporation. + * + * See the file "license.terms" for information on usage and redistribution + * of this file, and for a DISCLAIMER OF ALL WARRANTIES. + * + * RCS: @(#) $Id: tclStubs.c,v 1.1 1999/03/03 00:38:43 stanton Exp $ + */ + +#include "tcl.h" + +/* + * Undefine function macros that will interfere with the defintions below. + */ + +#undef Tcl_DumpActiveMemory +#undef Tcl_ValidateAllMemory +#undef Tcl_Alloc +#undef Tcl_Free +#undef Tcl_Realloc + +/* + * WARNING: This file is automatically generated by the tools/genStubs.tcl + * script. Any modifications to the function declarations below should be made + * in the generic/tcl.decls script. + */ + +/* !BEGIN!: Do not edit below this line. */ + +/* + * Exported stub functions: + */ + +/* Slot 0 */ +void +Tcl_AddErrorInfo(interp, message) + Tcl_Interp * interp; + char * message; +{ + (tclStubsPtr->tcl_AddErrorInfo)(interp, message); +} + +/* Slot 1 */ +void +Tcl_AddObjErrorInfo(interp, message, length) + Tcl_Interp * interp; + char * message; + int length; +{ + (tclStubsPtr->tcl_AddObjErrorInfo)(interp, message, length); +} + +/* Slot 2 */ +char * +Tcl_Alloc(size) + unsigned int size; +{ + return (tclStubsPtr->tcl_Alloc)(size); +} + +/* Slot 3 */ +void +Tcl_AllowExceptions(interp) + Tcl_Interp * interp; +{ + (tclStubsPtr->tcl_AllowExceptions)(interp); +} + +/* Slot 4 */ +int +Tcl_AppendAllObjTypes(interp, objPtr) + Tcl_Interp * interp; + Tcl_Obj * objPtr; +{ + return (tclStubsPtr->tcl_AppendAllObjTypes)(interp, objPtr); +} + +/* Slot 5 */ +void +Tcl_AppendElement(interp, string) + Tcl_Interp * interp; + char * string; +{ + (tclStubsPtr->tcl_AppendElement)(interp, string); +} + +/* Slot 6 */ +void +Tcl_AppendResult TCL_VARARGS_DEF(Tcl_Interp *,interp) +{ + Tcl_Interp * var; + va_list argList; + + var = (Tcl_Interp *) TCL_VARARGS_START(Tcl_Interp *,interp,argList); + + (tclStubsPtr->tcl_AppendResultVA)(var, argList); + va_end(argList); +} + +/* Slot 7 */ +void +Tcl_AppendResultVA(interp, argList) + Tcl_Interp * interp; + va_list argList; +{ + (tclStubsPtr->tcl_AppendResultVA)(interp, argList); +} + +/* Slot 8 */ +void +Tcl_AppendToObj(objPtr, bytes, length) + Tcl_Obj * objPtr; + char * bytes; + int length; +{ + (tclStubsPtr->tcl_AppendToObj)(objPtr, bytes, length); +} + +/* Slot 9 */ +void +Tcl_AppendStringsToObj TCL_VARARGS_DEF(Tcl_Obj *,objPtr) +{ + Tcl_Obj * var; + va_list argList; + + var = (Tcl_Obj *) TCL_VARARGS_START(Tcl_Obj *,objPtr,argList); + + (tclStubsPtr->tcl_AppendStringsToObjVA)(var, argList); + va_end(argList); +} + +/* Slot 10 */ +void +Tcl_AppendStringsToObjVA(objPtr, argList) + Tcl_Obj * objPtr; + va_list argList; +{ + (tclStubsPtr->tcl_AppendStringsToObjVA)(objPtr, argList); +} + +/* Slot 11 */ +Tcl_AsyncHandler +Tcl_AsyncCreate(proc, clientData) + Tcl_AsyncProc * proc; + ClientData clientData; +{ + return (tclStubsPtr->tcl_AsyncCreate)(proc, clientData); +} + +/* Slot 12 */ +void +Tcl_AsyncDelete(async) + Tcl_AsyncHandler async; +{ + (tclStubsPtr->tcl_AsyncDelete)(async); +} + +/* Slot 13 */ +int +Tcl_AsyncInvoke(interp, code) + Tcl_Interp * interp; + int code; +{ + return (tclStubsPtr->tcl_AsyncInvoke)(interp, code); +} + +/* Slot 14 */ +void +Tcl_AsyncMark(async) + Tcl_AsyncHandler async; +{ + (tclStubsPtr->tcl_AsyncMark)(async); +} + +/* Slot 15 */ +int +Tcl_AsyncReady() +{ + return (tclStubsPtr->tcl_AsyncReady)(); +} + +/* Slot 16 */ +void +Tcl_BackgroundError(interp) + Tcl_Interp * interp; +{ + (tclStubsPtr->tcl_BackgroundError)(interp); +} + +/* Slot 17 */ +char +Tcl_Backslash(src, readPtr) + CONST char * src; + int * readPtr; +{ + return (tclStubsPtr->tcl_Backslash)(src, readPtr); +} + +/* Slot 18 */ +int +Tcl_BadChannelOption(interp, optionName, optionList) + Tcl_Interp * interp; + char * optionName; + char * optionList; +{ + return (tclStubsPtr->tcl_BadChannelOption)(interp, optionName, optionList); +} + +/* Slot 19 */ +void +Tcl_CallWhenDeleted(interp, proc, clientData) + Tcl_Interp * interp; + Tcl_InterpDeleteProc * proc; + ClientData clientData; +{ + (tclStubsPtr->tcl_CallWhenDeleted)(interp, proc, clientData); +} + +/* Slot 20 */ +void +Tcl_CancelIdleCall(idleProc, clientData) + Tcl_IdleProc * idleProc; + ClientData clientData; +{ + (tclStubsPtr->tcl_CancelIdleCall)(idleProc, clientData); +} + +/* Slot 21 */ +int +Tcl_Close(interp, chan) + Tcl_Interp * interp; + Tcl_Channel chan; +{ + return (tclStubsPtr->tcl_Close)(interp, chan); +} + +/* Slot 22 */ +int +Tcl_CommandComplete(cmd) + char * cmd; +{ + return (tclStubsPtr->tcl_CommandComplete)(cmd); +} + +/* Slot 23 */ +char * +Tcl_Concat(argc, argv) + int argc; + char ** argv; +{ + return (tclStubsPtr->tcl_Concat)(argc, argv); +} + +/* Slot 24 */ +Tcl_Obj * +Tcl_ConcatObj(objc, objv) + int objc; + Tcl_Obj *CONST objv[]; +{ + return (tclStubsPtr->tcl_ConcatObj)(objc, objv); +} + +/* Slot 25 */ +int +Tcl_ConvertCountedElement(src, length, dst, flags) + CONST char * src; + int length; + char * dst; + int flags; +{ + return (tclStubsPtr->tcl_ConvertCountedElement)(src, length, dst, flags); +} + +/* Slot 26 */ +int +Tcl_ConvertElement(src, dst, flags) + CONST char * src; + char * dst; + int flags; +{ + return (tclStubsPtr->tcl_ConvertElement)(src, dst, flags); +} + +/* Slot 27 */ +int +Tcl_ConvertToType(interp, objPtr, typePtr) + Tcl_Interp * interp; + Tcl_Obj * objPtr; + Tcl_ObjType * typePtr; +{ + return (tclStubsPtr->tcl_ConvertToType)(interp, objPtr, typePtr); +} + +/* Slot 28 */ +int +Tcl_CreateAlias(slave, slaveCmd, target, targetCmd, argc, argv) + Tcl_Interp * slave; + char * slaveCmd; + Tcl_Interp * target; + char * targetCmd; + int argc; + char ** argv; +{ + return (tclStubsPtr->tcl_CreateAlias)(slave, slaveCmd, target, targetCmd, argc, argv); +} + +/* Slot 29 */ +int +Tcl_CreateAliasObj(slave, slaveCmd, target, targetCmd, objc, objv) + Tcl_Interp * slave; + char * slaveCmd; + Tcl_Interp * target; + char * targetCmd; + int objc; + Tcl_Obj *CONST objv[]; +{ + return (tclStubsPtr->tcl_CreateAliasObj)(slave, slaveCmd, target, targetCmd, objc, objv); +} + +/* Slot 30 */ +Tcl_Channel +Tcl_CreateChannel(typePtr, chanName, instanceData, mask) + Tcl_ChannelType * typePtr; + char * chanName; + ClientData instanceData; + int mask; +{ + return (tclStubsPtr->tcl_CreateChannel)(typePtr, chanName, instanceData, mask); +} + +/* Slot 31 */ +void +Tcl_CreateChannelHandler(chan, mask, proc, clientData) + Tcl_Channel chan; + int mask; + Tcl_ChannelProc * proc; + ClientData clientData; +{ + (tclStubsPtr->tcl_CreateChannelHandler)(chan, mask, proc, clientData); +} + +/* Slot 32 */ +void +Tcl_CreateCloseHandler(chan, proc, clientData) + Tcl_Channel chan; + Tcl_CloseProc * proc; + ClientData clientData; +{ + (tclStubsPtr->tcl_CreateCloseHandler)(chan, proc, clientData); +} + +/* Slot 33 */ +Tcl_Command +Tcl_CreateCommand(interp, cmdName, proc, clientData, deleteProc) + Tcl_Interp * interp; + char * cmdName; + Tcl_CmdProc * proc; + ClientData clientData; + Tcl_CmdDeleteProc * deleteProc; +{ + return (tclStubsPtr->tcl_CreateCommand)(interp, cmdName, proc, clientData, deleteProc); +} + +/* Slot 34 */ +void +Tcl_CreateEventSource(setupProc, checkProc, clientData) + Tcl_EventSetupProc * setupProc; + Tcl_EventCheckProc * checkProc; + ClientData clientData; +{ + (tclStubsPtr->tcl_CreateEventSource)(setupProc, checkProc, clientData); +} + +/* Slot 35 */ +void +Tcl_CreateExitHandler(proc, clientData) + Tcl_ExitProc * proc; + ClientData clientData; +{ + (tclStubsPtr->tcl_CreateExitHandler)(proc, clientData); +} + +/* Slot 36 */ +Tcl_Interp * +Tcl_CreateInterp() +{ + return (tclStubsPtr->tcl_CreateInterp)(); +} + +/* Slot 37 */ +void +Tcl_CreateMathFunc(interp, name, numArgs, argTypes, proc, clientData) + Tcl_Interp * interp; + char * name; + int numArgs; + Tcl_ValueType * argTypes; + Tcl_MathProc * proc; + ClientData clientData; +{ + (tclStubsPtr->tcl_CreateMathFunc)(interp, name, numArgs, argTypes, proc, clientData); +} + +/* Slot 38 */ +Tcl_Command +Tcl_CreateObjCommand(interp, cmdName, proc, clientData, deleteProc) + Tcl_Interp * interp; + char * cmdName; + Tcl_ObjCmdProc * proc; + ClientData clientData; + Tcl_CmdDeleteProc * deleteProc; +{ + return (tclStubsPtr->tcl_CreateObjCommand)(interp, cmdName, proc, clientData, deleteProc); +} + +/* Slot 39 */ +Tcl_Interp * +Tcl_CreateSlave(interp, slaveName, isSafe) + Tcl_Interp * interp; + char * slaveName; + int isSafe; +{ + return (tclStubsPtr->tcl_CreateSlave)(interp, slaveName, isSafe); +} + +/* Slot 40 */ +Tcl_TimerToken +Tcl_CreateTimerHandler(milliseconds, proc, clientData) + int milliseconds; + Tcl_TimerProc * proc; + ClientData clientData; +{ + return (tclStubsPtr->tcl_CreateTimerHandler)(milliseconds, proc, clientData); +} + +/* Slot 41 */ +Tcl_Trace +Tcl_CreateTrace(interp, level, proc, clientData) + Tcl_Interp * interp; + int level; + Tcl_CmdTraceProc * proc; + ClientData clientData; +{ + return (tclStubsPtr->tcl_CreateTrace)(interp, level, proc, clientData); +} + +/* Slot 42 */ +char * +Tcl_DbCkalloc(size, file, line) + unsigned int size; + char * file; + int line; +{ + return (tclStubsPtr->tcl_DbCkalloc)(size, file, line); +} + +/* Slot 43 */ +int +Tcl_DbCkfree(ptr, file, line) + char * ptr; + char * file; + int line; +{ + return (tclStubsPtr->tcl_DbCkfree)(ptr, file, line); +} + +/* Slot 44 */ +char * +Tcl_DbCkrealloc(ptr, size, file, line) + char * ptr; + unsigned int size; + char * file; + int line; +{ + return (tclStubsPtr->tcl_DbCkrealloc)(ptr, size, file, line); +} + +/* Slot 45 */ +void +Tcl_DbDecrRefCount(objPtr, file, line) + Tcl_Obj * objPtr; + char * file; + int line; +{ + (tclStubsPtr->tcl_DbDecrRefCount)(objPtr, file, line); +} + +/* Slot 46 */ +void +Tcl_DbIncrRefCount(objPtr, file, line) + Tcl_Obj * objPtr; + char * file; + int line; +{ + (tclStubsPtr->tcl_DbIncrRefCount)(objPtr, file, line); +} + +/* Slot 47 */ +int +Tcl_DbIsShared(objPtr, file, line) + Tcl_Obj * objPtr; + char * file; + int line; +{ + return (tclStubsPtr->tcl_DbIsShared)(objPtr, file, line); +} + +/* Slot 48 */ +Tcl_Obj * +Tcl_DbNewBooleanObj(boolValue, file, line) + int boolValue; + char * file; + int line; +{ + return (tclStubsPtr->tcl_DbNewBooleanObj)(boolValue, file, line); +} + +/* Slot 49 */ +Tcl_Obj * +Tcl_DbNewByteArrayObj(bytes, length, file, line) + unsigned char * bytes; + int length; + char * file; + int line; +{ + return (tclStubsPtr->tcl_DbNewByteArrayObj)(bytes, length, file, line); +} + +/* Slot 50 */ +Tcl_Obj * +Tcl_DbNewDoubleObj(doubleValue, file, line) + double doubleValue; + char * file; + int line; +{ + return (tclStubsPtr->tcl_DbNewDoubleObj)(doubleValue, file, line); +} + +/* Slot 51 */ +Tcl_Obj * +Tcl_DbNewListObj(objc, objv, file, line) + int objc; + Tcl_Obj *CONST objv[]; + char * file; + int line; +{ + return (tclStubsPtr->tcl_DbNewListObj)(objc, objv, file, line); +} + +/* Slot 52 */ +Tcl_Obj * +Tcl_DbNewLongObj(longValue, file, line) + long longValue; + char * file; + int line; +{ + return (tclStubsPtr->tcl_DbNewLongObj)(longValue, file, line); +} + +/* Slot 53 */ +Tcl_Obj * +Tcl_DbNewObj(file, line) + char * file; + int line; +{ + return (tclStubsPtr->tcl_DbNewObj)(file, line); +} + +/* Slot 54 */ +Tcl_Obj * +Tcl_DbNewStringObj(bytes, length, file, line) + char * bytes; + int length; + char * file; + int line; +{ + return (tclStubsPtr->tcl_DbNewStringObj)(bytes, length, file, line); +} + +/* Slot 55 */ +void +Tcl_DeleteAssocData(interp, name) + Tcl_Interp * interp; + char * name; +{ + (tclStubsPtr->tcl_DeleteAssocData)(interp, name); +} + +/* Slot 56 */ +int +Tcl_DeleteCommand(interp, cmdName) + Tcl_Interp * interp; + char * cmdName; +{ + return (tclStubsPtr->tcl_DeleteCommand)(interp, cmdName); +} + +/* Slot 57 */ +int +Tcl_DeleteCommandFromToken(interp, command) + Tcl_Interp * interp; + Tcl_Command command; +{ + return (tclStubsPtr->tcl_DeleteCommandFromToken)(interp, command); +} + +/* Slot 58 */ +void +Tcl_DeleteChannelHandler(chan, proc, clientData) + Tcl_Channel chan; + Tcl_ChannelProc * proc; + ClientData clientData; +{ + (tclStubsPtr->tcl_DeleteChannelHandler)(chan, proc, clientData); +} + +/* Slot 59 */ +void +Tcl_DeleteCloseHandler(chan, proc, clientData) + Tcl_Channel chan; + Tcl_CloseProc * proc; + ClientData clientData; +{ + (tclStubsPtr->tcl_DeleteCloseHandler)(chan, proc, clientData); +} + +/* Slot 60 */ +void +Tcl_DeleteEvents(proc, clientData) + Tcl_EventDeleteProc * proc; + ClientData clientData; +{ + (tclStubsPtr->tcl_DeleteEvents)(proc, clientData); +} + +/* Slot 61 */ +void +Tcl_DeleteEventSource(setupProc, checkProc, clientData) + Tcl_EventSetupProc * setupProc; + Tcl_EventCheckProc * checkProc; + ClientData clientData; +{ + (tclStubsPtr->tcl_DeleteEventSource)(setupProc, checkProc, clientData); +} + +/* Slot 62 */ +void +Tcl_DeleteExitHandler(proc, clientData) + Tcl_ExitProc * proc; + ClientData clientData; +{ + (tclStubsPtr->tcl_DeleteExitHandler)(proc, clientData); +} + +/* Slot 63 */ +void +Tcl_DeleteHashEntry(entryPtr) + Tcl_HashEntry * entryPtr; +{ + (tclStubsPtr->tcl_DeleteHashEntry)(entryPtr); +} + +/* Slot 64 */ +void +Tcl_DeleteHashTable(tablePtr) + Tcl_HashTable * tablePtr; +{ + (tclStubsPtr->tcl_DeleteHashTable)(tablePtr); +} + +/* Slot 65 */ +void +Tcl_DeleteInterp(interp) + Tcl_Interp * interp; +{ + (tclStubsPtr->tcl_DeleteInterp)(interp); +} + +/* Slot 66 */ +void +Tcl_DeleteTimerHandler(token) + Tcl_TimerToken token; +{ + (tclStubsPtr->tcl_DeleteTimerHandler)(token); +} + +/* Slot 67 */ +void +Tcl_DeleteTrace(interp, trace) + Tcl_Interp * interp; + Tcl_Trace trace; +{ + (tclStubsPtr->tcl_DeleteTrace)(interp, trace); +} + +/* Slot 68 */ +void +Tcl_DetachPids(numPids, pidPtr) + int numPids; + Tcl_Pid * pidPtr; +{ + (tclStubsPtr->tcl_DetachPids)(numPids, pidPtr); +} + +/* Slot 69 */ +void +Tcl_DontCallWhenDeleted(interp, proc, clientData) + Tcl_Interp * interp; + Tcl_InterpDeleteProc * proc; + ClientData clientData; +{ + (tclStubsPtr->tcl_DontCallWhenDeleted)(interp, proc, clientData); +} + +/* Slot 70 */ +int +Tcl_DoOneEvent(flags) + int flags; +{ + return (tclStubsPtr->tcl_DoOneEvent)(flags); +} + +/* Slot 71 */ +void +Tcl_DoWhenIdle(proc, clientData) + Tcl_IdleProc * proc; + ClientData clientData; +{ + (tclStubsPtr->tcl_DoWhenIdle)(proc, clientData); +} + +/* Slot 72 */ +char * +Tcl_DStringAppend(dsPtr, string, length) + Tcl_DString * dsPtr; + CONST char * string; + int length; +{ + return (tclStubsPtr->tcl_DStringAppend)(dsPtr, string, length); +} + +/* Slot 73 */ +char * +Tcl_DStringAppendElement(dsPtr, string) + Tcl_DString * dsPtr; + CONST char * string; +{ + return (tclStubsPtr->tcl_DStringAppendElement)(dsPtr, string); +} + +/* Slot 74 */ +void +Tcl_DStringEndSublist(dsPtr) + Tcl_DString * dsPtr; +{ + (tclStubsPtr->tcl_DStringEndSublist)(dsPtr); +} + +/* Slot 75 */ +void +Tcl_DStringFree(dsPtr) + Tcl_DString * dsPtr; +{ + (tclStubsPtr->tcl_DStringFree)(dsPtr); +} + +/* Slot 76 */ +void +Tcl_DStringGetResult(interp, dsPtr) + Tcl_Interp * interp; + Tcl_DString * dsPtr; +{ + (tclStubsPtr->tcl_DStringGetResult)(interp, dsPtr); +} + +/* Slot 77 */ +void +Tcl_DStringInit(dsPtr) + Tcl_DString * dsPtr; +{ + (tclStubsPtr->tcl_DStringInit)(dsPtr); +} + +/* Slot 78 */ +void +Tcl_DStringResult(interp, dsPtr) + Tcl_Interp * interp; + Tcl_DString * dsPtr; +{ + (tclStubsPtr->tcl_DStringResult)(interp, dsPtr); +} + +/* Slot 79 */ +void +Tcl_DStringSetLength(dsPtr, length) + Tcl_DString * dsPtr; + int length; +{ + (tclStubsPtr->tcl_DStringSetLength)(dsPtr, length); +} + +/* Slot 80 */ +void +Tcl_DStringStartSublist(dsPtr) + Tcl_DString * dsPtr; +{ + (tclStubsPtr->tcl_DStringStartSublist)(dsPtr); +} + +/* Slot 81 */ +int +Tcl_DumpActiveMemory(fileName) + char * fileName; +{ + return (tclStubsPtr->tcl_DumpActiveMemory)(fileName); +} + +/* Slot 82 */ +Tcl_Obj * +Tcl_DuplicateObj(objPtr) + Tcl_Obj * objPtr; +{ + return (tclStubsPtr->tcl_DuplicateObj)(objPtr); +} + +/* Slot 83 */ +int +Tcl_Eof(chan) + Tcl_Channel chan; +{ + return (tclStubsPtr->tcl_Eof)(chan); +} + +/* Slot 84 */ +char * +Tcl_ErrnoId() +{ + return (tclStubsPtr->tcl_ErrnoId)(); +} + +/* Slot 85 */ +char * +Tcl_ErrnoMsg(err) + int err; +{ + return (tclStubsPtr->tcl_ErrnoMsg)(err); +} + +/* Slot 86 */ +int +Tcl_Eval(interp, string) + Tcl_Interp * interp; + char * string; +{ + return (tclStubsPtr->tcl_Eval)(interp, string); +} + +/* Slot 87 */ +int +Tcl_EvalFile(interp, fileName) + Tcl_Interp * interp; + char * fileName; +{ + return (tclStubsPtr->tcl_EvalFile)(interp, fileName); +} + +/* Slot 88 */ +void +Tcl_EventuallyFree(clientData, freeProc) + ClientData clientData; + Tcl_FreeProc * freeProc; +{ + (tclStubsPtr->tcl_EventuallyFree)(clientData, freeProc); +} + +/* Slot 89 */ +int +Tcl_EvalObj(interp, objPtr) + Tcl_Interp * interp; + Tcl_Obj * objPtr; +{ + return (tclStubsPtr->tcl_EvalObj)(interp, objPtr); +} + +/* Slot 90 */ +void +Tcl_Exit(status) + int status; +{ + (tclStubsPtr->tcl_Exit)(status); +} + +/* Slot 91 */ +int +Tcl_ExposeCommand(interp, hiddenCmdToken, cmdName) + Tcl_Interp * interp; + char * hiddenCmdToken; + char * cmdName; +{ + return (tclStubsPtr->tcl_ExposeCommand)(interp, hiddenCmdToken, cmdName); +} + +/* Slot 92 */ +int +Tcl_ExprBoolean(interp, string, ptr) + Tcl_Interp * interp; + char * string; + int * ptr; +{ + return (tclStubsPtr->tcl_ExprBoolean)(interp, string, ptr); +} + +/* Slot 93 */ +int +Tcl_ExprBooleanObj(interp, objPtr, ptr) + Tcl_Interp * interp; + Tcl_Obj * objPtr; + int * ptr; +{ + return (tclStubsPtr->tcl_ExprBooleanObj)(interp, objPtr, ptr); +} + +/* Slot 94 */ +int +Tcl_ExprDouble(interp, string, ptr) + Tcl_Interp * interp; + char * string; + double * ptr; +{ + return (tclStubsPtr->tcl_ExprDouble)(interp, string, ptr); +} + +/* Slot 95 */ +int +Tcl_ExprDoubleObj(interp, objPtr, ptr) + Tcl_Interp * interp; + Tcl_Obj * objPtr; + double * ptr; +{ + return (tclStubsPtr->tcl_ExprDoubleObj)(interp, objPtr, ptr); +} + +/* Slot 96 */ +int +Tcl_ExprLong(interp, string, ptr) + Tcl_Interp * interp; + char * string; + long * ptr; +{ + return (tclStubsPtr->tcl_ExprLong)(interp, string, ptr); +} + +/* Slot 97 */ +int +Tcl_ExprLongObj(interp, objPtr, ptr) + Tcl_Interp * interp; + Tcl_Obj * objPtr; + long * ptr; +{ + return (tclStubsPtr->tcl_ExprLongObj)(interp, objPtr, ptr); +} + +/* Slot 98 */ +int +Tcl_ExprObj(interp, objPtr, resultPtrPtr) + Tcl_Interp * interp; + Tcl_Obj * objPtr; + Tcl_Obj ** resultPtrPtr; +{ + return (tclStubsPtr->tcl_ExprObj)(interp, objPtr, resultPtrPtr); +} + +/* Slot 99 */ +int +Tcl_ExprString(interp, string) + Tcl_Interp * interp; + char * string; +{ + return (tclStubsPtr->tcl_ExprString)(interp, string); +} + +/* Slot 100 */ +void +Tcl_Finalize() +{ + (tclStubsPtr->tcl_Finalize)(); +} + +/* Slot 101 */ +void +Tcl_FindExecutable(argv0) + char * argv0; +{ + (tclStubsPtr->tcl_FindExecutable)(argv0); +} + +/* Slot 102 */ +Tcl_HashEntry * +Tcl_FirstHashEntry(tablePtr, searchPtr) + Tcl_HashTable * tablePtr; + Tcl_HashSearch * searchPtr; +{ + return (tclStubsPtr->tcl_FirstHashEntry)(tablePtr, searchPtr); +} + +/* Slot 103 */ +int +Tcl_Flush(chan) + Tcl_Channel chan; +{ + return (tclStubsPtr->tcl_Flush)(chan); +} + +/* Slot 104 */ +void +Tcl_Free(ptr) + char * ptr; +{ + (tclStubsPtr->tcl_Free)(ptr); +} + +/* Slot 105 */ +void +TclFreeObj(objPtr) + Tcl_Obj * objPtr; +{ + (tclStubsPtr->tclFreeObj)(objPtr); +} + +/* Slot 106 */ +void +Tcl_FreeResult(interp) + Tcl_Interp * interp; +{ + (tclStubsPtr->tcl_FreeResult)(interp); +} + +/* Slot 107 */ +int +Tcl_GetAlias(interp, slaveCmd, targetInterpPtr, targetCmdPtr, argcPtr, argvPtr) + Tcl_Interp * interp; + char * slaveCmd; + Tcl_Interp ** targetInterpPtr; + char ** targetCmdPtr; + int * argcPtr; + char *** argvPtr; +{ + return (tclStubsPtr->tcl_GetAlias)(interp, slaveCmd, targetInterpPtr, targetCmdPtr, argcPtr, argvPtr); +} + +/* Slot 108 */ +int +Tcl_GetAliasObj(interp, slaveCmd, targetInterpPtr, targetCmdPtr, objcPtr, objv) + Tcl_Interp * interp; + char * slaveCmd; + Tcl_Interp ** targetInterpPtr; + char ** targetCmdPtr; + int * objcPtr; + Tcl_Obj *** objv; +{ + return (tclStubsPtr->tcl_GetAliasObj)(interp, slaveCmd, targetInterpPtr, targetCmdPtr, objcPtr, objv); +} + +/* Slot 109 */ +ClientData +Tcl_GetAssocData(interp, name, procPtr) + Tcl_Interp * interp; + char * name; + Tcl_InterpDeleteProc ** procPtr; +{ + return (tclStubsPtr->tcl_GetAssocData)(interp, name, procPtr); +} + +/* Slot 110 */ +int +Tcl_GetBoolean(interp, string, boolPtr) + Tcl_Interp * interp; + char * string; + int * boolPtr; +{ + return (tclStubsPtr->tcl_GetBoolean)(interp, string, boolPtr); +} + +/* Slot 111 */ +int +Tcl_GetBooleanFromObj(interp, objPtr, boolPtr) + Tcl_Interp * interp; + Tcl_Obj * objPtr; + int * boolPtr; +{ + return (tclStubsPtr->tcl_GetBooleanFromObj)(interp, objPtr, boolPtr); +} + +/* Slot 112 */ +unsigned char * +Tcl_GetByteArrayFromObj(objPtr, lengthPtr) + Tcl_Obj * objPtr; + int * lengthPtr; +{ + return (tclStubsPtr->tcl_GetByteArrayFromObj)(objPtr, lengthPtr); +} + +/* Slot 113 */ +Tcl_Channel +Tcl_GetChannel(interp, chanName, modePtr) + Tcl_Interp * interp; + char * chanName; + int * modePtr; +{ + return (tclStubsPtr->tcl_GetChannel)(interp, chanName, modePtr); +} + +/* Slot 114 */ +int +Tcl_GetChannelBufferSize(chan) + Tcl_Channel chan; +{ + return (tclStubsPtr->tcl_GetChannelBufferSize)(chan); +} + +/* Slot 115 */ +int +Tcl_GetChannelHandle(chan, direction, handlePtr) + Tcl_Channel chan; + int direction; + ClientData * handlePtr; +{ + return (tclStubsPtr->tcl_GetChannelHandle)(chan, direction, handlePtr); +} + +/* Slot 116 */ +ClientData +Tcl_GetChannelInstanceData(chan) + Tcl_Channel chan; +{ + return (tclStubsPtr->tcl_GetChannelInstanceData)(chan); +} + +/* Slot 117 */ +int +Tcl_GetChannelMode(chan) + Tcl_Channel chan; +{ + return (tclStubsPtr->tcl_GetChannelMode)(chan); +} + +/* Slot 118 */ +char * +Tcl_GetChannelName(chan) + Tcl_Channel chan; +{ + return (tclStubsPtr->tcl_GetChannelName)(chan); +} + +/* Slot 119 */ +int +Tcl_GetChannelOption(interp, chan, optionName, dsPtr) + Tcl_Interp * interp; + Tcl_Channel chan; + char * optionName; + Tcl_DString * dsPtr; +{ + return (tclStubsPtr->tcl_GetChannelOption)(interp, chan, optionName, dsPtr); +} + +/* Slot 120 */ +Tcl_ChannelType * +Tcl_GetChannelType(chan) + Tcl_Channel chan; +{ + return (tclStubsPtr->tcl_GetChannelType)(chan); +} + +/* Slot 121 */ +int +Tcl_GetCommandInfo(interp, cmdName, infoPtr) + Tcl_Interp * interp; + char * cmdName; + Tcl_CmdInfo * infoPtr; +{ + return (tclStubsPtr->tcl_GetCommandInfo)(interp, cmdName, infoPtr); +} + +/* Slot 122 */ +char * +Tcl_GetCommandName(interp, command) + Tcl_Interp * interp; + Tcl_Command command; +{ + return (tclStubsPtr->tcl_GetCommandName)(interp, command); +} + +/* Slot 123 */ +int +Tcl_GetDouble(interp, string, doublePtr) + Tcl_Interp * interp; + char * string; + double * doublePtr; +{ + return (tclStubsPtr->tcl_GetDouble)(interp, string, doublePtr); +} + +/* Slot 124 */ +int +Tcl_GetDoubleFromObj(interp, objPtr, doublePtr) + Tcl_Interp * interp; + Tcl_Obj * objPtr; + double * doublePtr; +{ + return (tclStubsPtr->tcl_GetDoubleFromObj)(interp, objPtr, doublePtr); +} + +/* Slot 125 */ +int +Tcl_GetErrno() +{ + return (tclStubsPtr->tcl_GetErrno)(); +} + +/* Slot 126 */ +char * +Tcl_GetHostName() +{ + return (tclStubsPtr->tcl_GetHostName)(); +} + +/* Slot 127 */ +int +Tcl_GetIndexFromObj(interp, objPtr, tablePtr, msg, flags, indexPtr) + Tcl_Interp * interp; + Tcl_Obj * objPtr; + char ** tablePtr; + char * msg; + int flags; + int * indexPtr; +{ + return (tclStubsPtr->tcl_GetIndexFromObj)(interp, objPtr, tablePtr, msg, flags, indexPtr); +} + +/* Slot 128 */ +int +Tcl_GetInt(interp, string, intPtr) + Tcl_Interp * interp; + char * string; + int * intPtr; +{ + return (tclStubsPtr->tcl_GetInt)(interp, string, intPtr); +} + +/* Slot 129 */ +int +Tcl_GetInterpPath(askInterp, slaveInterp) + Tcl_Interp * askInterp; + Tcl_Interp * slaveInterp; +{ + return (tclStubsPtr->tcl_GetInterpPath)(askInterp, slaveInterp); +} + +/* Slot 130 */ +int +Tcl_GetIntFromObj(interp, objPtr, intPtr) + Tcl_Interp * interp; + Tcl_Obj * objPtr; + int * intPtr; +{ + return (tclStubsPtr->tcl_GetIntFromObj)(interp, objPtr, intPtr); +} + +/* Slot 131 */ +int +Tcl_GetLongFromObj(interp, objPtr, longPtr) + Tcl_Interp * interp; + Tcl_Obj * objPtr; + long * longPtr; +{ + return (tclStubsPtr->tcl_GetLongFromObj)(interp, objPtr, longPtr); +} + +/* Slot 132 */ +Tcl_Interp * +Tcl_GetMaster(interp) + Tcl_Interp * interp; +{ + return (tclStubsPtr->tcl_GetMaster)(interp); +} + +/* Slot 133 */ +CONST char * +Tcl_GetNameOfExecutable() +{ + return (tclStubsPtr->tcl_GetNameOfExecutable)(); +} + +/* Slot 134 */ +Tcl_Obj * +Tcl_GetObjResult(interp) + Tcl_Interp * interp; +{ + return (tclStubsPtr->tcl_GetObjResult)(interp); +} + +/* Slot 135 */ +Tcl_ObjType * +Tcl_GetObjType(typeName) + char * typeName; +{ + return (tclStubsPtr->tcl_GetObjType)(typeName); +} + +/* Slot 136 */ +Tcl_PathType +Tcl_GetPathType(path) + char * path; +{ + return (tclStubsPtr->tcl_GetPathType)(path); +} + +/* Slot 137 */ +int +Tcl_Gets(chan, dsPtr) + Tcl_Channel chan; + Tcl_DString * dsPtr; +{ + return (tclStubsPtr->tcl_Gets)(chan, dsPtr); +} + +/* Slot 138 */ +int +Tcl_GetsObj(chan, objPtr) + Tcl_Channel chan; + Tcl_Obj * objPtr; +{ + return (tclStubsPtr->tcl_GetsObj)(chan, objPtr); +} + +/* Slot 139 */ +int +Tcl_GetServiceMode() +{ + return (tclStubsPtr->tcl_GetServiceMode)(); +} + +/* Slot 140 */ +Tcl_Interp * +Tcl_GetSlave(interp, slaveName) + Tcl_Interp * interp; + char * slaveName; +{ + return (tclStubsPtr->tcl_GetSlave)(interp, slaveName); +} + +/* Slot 141 */ +Tcl_Channel +Tcl_GetStdChannel(type) + int type; +{ + return (tclStubsPtr->tcl_GetStdChannel)(type); +} + +/* Slot 142 */ +char * +Tcl_GetStringFromObj(objPtr, lengthPtr) + Tcl_Obj * objPtr; + int * lengthPtr; +{ + return (tclStubsPtr->tcl_GetStringFromObj)(objPtr, lengthPtr); +} + +/* Slot 143 */ +char * +Tcl_GetStringResult(interp) + Tcl_Interp * interp; +{ + return (tclStubsPtr->tcl_GetStringResult)(interp); +} + +/* Slot 144 */ +char * +Tcl_GetVar(interp, varName, flags) + Tcl_Interp * interp; + char * varName; + int flags; +{ + return (tclStubsPtr->tcl_GetVar)(interp, varName, flags); +} + +/* Slot 145 */ +char * +Tcl_GetVar2(interp, part1, part2, flags) + Tcl_Interp * interp; + char * part1; + char * part2; + int flags; +{ + return (tclStubsPtr->tcl_GetVar2)(interp, part1, part2, flags); +} + +/* Slot 146 */ +int +Tcl_GlobalEval(interp, command) + Tcl_Interp * interp; + char * command; +{ + return (tclStubsPtr->tcl_GlobalEval)(interp, command); +} + +/* Slot 147 */ +int +Tcl_GlobalEvalObj(interp, objPtr) + Tcl_Interp * interp; + Tcl_Obj * objPtr; +{ + return (tclStubsPtr->tcl_GlobalEvalObj)(interp, objPtr); +} + +/* Slot 148 */ +char * +Tcl_HashStats(tablePtr) + Tcl_HashTable * tablePtr; +{ + return (tclStubsPtr->tcl_HashStats)(tablePtr); +} + +/* Slot 149 */ +int +Tcl_HideCommand(interp, cmdName, hiddenCmdToken) + Tcl_Interp * interp; + char * cmdName; + char * hiddenCmdToken; +{ + return (tclStubsPtr->tcl_HideCommand)(interp, cmdName, hiddenCmdToken); +} + +/* Slot 150 */ +int +Tcl_Init(interp) + Tcl_Interp * interp; +{ + return (tclStubsPtr->tcl_Init)(interp); +} + +/* Slot 151 */ +void +Tcl_InitHashTable(tablePtr, keyType) + Tcl_HashTable * tablePtr; + int keyType; +{ + (tclStubsPtr->tcl_InitHashTable)(tablePtr, keyType); +} + +/* Slot 152 */ +int +Tcl_InputBlocked(chan) + Tcl_Channel chan; +{ + return (tclStubsPtr->tcl_InputBlocked)(chan); +} + +/* Slot 153 */ +int +Tcl_InputBuffered(chan) + Tcl_Channel chan; +{ + return (tclStubsPtr->tcl_InputBuffered)(chan); +} + +/* Slot 154 */ +int +Tcl_InterpDeleted(interp) + Tcl_Interp * interp; +{ + return (tclStubsPtr->tcl_InterpDeleted)(interp); +} + +/* Slot 155 */ +int +Tcl_IsSafe(interp) + Tcl_Interp * interp; +{ + return (tclStubsPtr->tcl_IsSafe)(interp); +} + +/* Slot 156 */ +void +Tcl_InvalidateStringRep(objPtr) + Tcl_Obj * objPtr; +{ + (tclStubsPtr->tcl_InvalidateStringRep)(objPtr); +} + +/* Slot 157 */ +char * +Tcl_JoinPath(argc, argv, resultPtr) + int argc; + char ** argv; + Tcl_DString * resultPtr; +{ + return (tclStubsPtr->tcl_JoinPath)(argc, argv, resultPtr); +} + +/* Slot 158 */ +int +Tcl_LinkVar(interp, varName, addr, type) + Tcl_Interp * interp; + char * varName; + char * addr; + int type; +{ + return (tclStubsPtr->tcl_LinkVar)(interp, varName, addr, type); +} + +/* Slot 159 */ +int +Tcl_ListObjAppendList(interp, listPtr, elemListPtr) + Tcl_Interp * interp; + Tcl_Obj * listPtr; + Tcl_Obj * elemListPtr; +{ + return (tclStubsPtr->tcl_ListObjAppendList)(interp, listPtr, elemListPtr); +} + +/* Slot 160 */ +int +Tcl_ListObjAppendElement(interp, listPtr, objPtr) + Tcl_Interp * interp; + Tcl_Obj * listPtr; + Tcl_Obj * objPtr; +{ + return (tclStubsPtr->tcl_ListObjAppendElement)(interp, listPtr, objPtr); +} + +/* Slot 161 */ +int +Tcl_ListObjGetElements(interp, listPtr, objcPtr, objvPtr) + Tcl_Interp * interp; + Tcl_Obj * listPtr; + int * objcPtr; + Tcl_Obj *** objvPtr; +{ + return (tclStubsPtr->tcl_ListObjGetElements)(interp, listPtr, objcPtr, objvPtr); +} + +/* Slot 162 */ +int +Tcl_ListObjIndex(interp, listPtr, index, objPtrPtr) + Tcl_Interp * interp; + Tcl_Obj * listPtr; + int index; + Tcl_Obj ** objPtrPtr; +{ + return (tclStubsPtr->tcl_ListObjIndex)(interp, listPtr, index, objPtrPtr); +} + +/* Slot 163 */ +int +Tcl_ListObjLength(interp, listPtr, intPtr) + Tcl_Interp * interp; + Tcl_Obj * listPtr; + int * intPtr; +{ + return (tclStubsPtr->tcl_ListObjLength)(interp, listPtr, intPtr); +} + +/* Slot 164 */ +int +Tcl_ListObjReplace(interp, listPtr, first, count, objc, objv) + Tcl_Interp * interp; + Tcl_Obj * listPtr; + int first; + int count; + int objc; + Tcl_Obj *CONST objv[]; +{ + return (tclStubsPtr->tcl_ListObjReplace)(interp, listPtr, first, count, objc, objv); +} + +/* Slot 165 */ +Tcl_Channel +Tcl_MakeFileChannel(handle, mode) + ClientData handle; + int mode; +{ + return (tclStubsPtr->tcl_MakeFileChannel)(handle, mode); +} + +/* Slot 166 */ +int +Tcl_MakeSafe(interp) + Tcl_Interp * interp; +{ + return (tclStubsPtr->tcl_MakeSafe)(interp); +} + +/* Slot 167 */ +Tcl_Channel +Tcl_MakeTcpClientChannel(tcpSocket) + ClientData tcpSocket; +{ + return (tclStubsPtr->tcl_MakeTcpClientChannel)(tcpSocket); +} + +/* Slot 168 */ +char * +Tcl_Merge(argc, argv) + int argc; + char ** argv; +{ + return (tclStubsPtr->tcl_Merge)(argc, argv); +} + +/* Slot 169 */ +Tcl_Obj * +Tcl_NewBooleanObj(boolValue) + int boolValue; +{ + return (tclStubsPtr->tcl_NewBooleanObj)(boolValue); +} + +/* Slot 170 */ +Tcl_Obj * +Tcl_NewByteArrayObj(bytes, length) + unsigned char * bytes; + int length; +{ + return (tclStubsPtr->tcl_NewByteArrayObj)(bytes, length); +} + +/* Slot 171 */ +Tcl_Obj * +Tcl_NewDoubleObj(doubleValue) + double doubleValue; +{ + return (tclStubsPtr->tcl_NewDoubleObj)(doubleValue); +} + +/* Slot 172 */ +Tcl_Obj * +Tcl_NewIntObj(intValue) + int intValue; +{ + return (tclStubsPtr->tcl_NewIntObj)(intValue); +} + +/* Slot 173 */ +Tcl_Obj * +Tcl_NewListObj(objc, objv) + int objc; + Tcl_Obj *CONST objv[]; +{ + return (tclStubsPtr->tcl_NewListObj)(objc, objv); +} + +/* Slot 174 */ +Tcl_Obj * +Tcl_NewLongObj(longValue) + long longValue; +{ + return (tclStubsPtr->tcl_NewLongObj)(longValue); +} + +/* Slot 175 */ +Tcl_Obj * +Tcl_NewObj() +{ + return (tclStubsPtr->tcl_NewObj)(); +} + +/* Slot 176 */ +Tcl_Obj * +Tcl_NewStringObj(bytes, length) + char * bytes; + int length; +{ + return (tclStubsPtr->tcl_NewStringObj)(bytes, length); +} + +/* Slot 177 */ +Tcl_HashEntry * +Tcl_NextHashEntry(searchPtr) + Tcl_HashSearch * searchPtr; +{ + return (tclStubsPtr->tcl_NextHashEntry)(searchPtr); +} + +/* Slot 178 */ +void +Tcl_NotifyChannel(channel, mask) + Tcl_Channel channel; + int mask; +{ + (tclStubsPtr->tcl_NotifyChannel)(channel, mask); +} + +/* Slot 179 */ +Tcl_Obj * +Tcl_ObjGetVar2(interp, part1Ptr, part2Ptr, flags) + Tcl_Interp * interp; + Tcl_Obj * part1Ptr; + Tcl_Obj * part2Ptr; + int flags; +{ + return (tclStubsPtr->tcl_ObjGetVar2)(interp, part1Ptr, part2Ptr, flags); +} + +/* Slot 180 */ +Tcl_Obj * +Tcl_ObjSetVar2(interp, part1Ptr, part2Ptr, newValuePtr, flags) + Tcl_Interp * interp; + Tcl_Obj * part1Ptr; + Tcl_Obj * part2Ptr; + Tcl_Obj * newValuePtr; + int flags; +{ + return (tclStubsPtr->tcl_ObjSetVar2)(interp, part1Ptr, part2Ptr, newValuePtr, flags); +} + +/* Slot 181 */ +Tcl_Channel +Tcl_OpenCommandChannel(interp, argc, argv, flags) + Tcl_Interp * interp; + int argc; + char ** argv; + int flags; +{ + return (tclStubsPtr->tcl_OpenCommandChannel)(interp, argc, argv, flags); +} + +/* Slot 182 */ +Tcl_Channel +Tcl_OpenFileChannel(interp, fileName, modeString, permissions) + Tcl_Interp * interp; + char * fileName; + char * modeString; + int permissions; +{ + return (tclStubsPtr->tcl_OpenFileChannel)(interp, fileName, modeString, permissions); +} + +/* Slot 183 */ +Tcl_Channel +Tcl_OpenTcpClient(interp, port, address, myaddr, myport, async) + Tcl_Interp * interp; + int port; + char * address; + char * myaddr; + int myport; + int async; +{ + return (tclStubsPtr->tcl_OpenTcpClient)(interp, port, address, myaddr, myport, async); +} + +/* Slot 184 */ +Tcl_Channel +Tcl_OpenTcpServer(interp, port, host, acceptProc, callbackData) + Tcl_Interp * interp; + int port; + char * host; + Tcl_TcpAcceptProc * acceptProc; + ClientData callbackData; +{ + return (tclStubsPtr->tcl_OpenTcpServer)(interp, port, host, acceptProc, callbackData); +} + +/* Slot 185 */ +void +Tcl_Panic TCL_VARARGS_DEF(char *,format) +{ + char * var; + va_list argList; + + var = (char *) TCL_VARARGS_START(char *,format,argList); + + (tclStubsPtr->tcl_PanicVA)(var, argList); + va_end(argList); +} + +/* Slot 186 */ +void +Tcl_PanicVA(format, argList) + char * format; + va_list argList; +{ + (tclStubsPtr->tcl_PanicVA)(format, argList); +} + +/* Slot 187 */ +char * +Tcl_ParseVar(interp, string, termPtr) + Tcl_Interp * interp; + char * string; + char ** termPtr; +{ + return (tclStubsPtr->tcl_ParseVar)(interp, string, termPtr); +} + +/* Slot 188 */ +char * +Tcl_PkgPresent(interp, name, version, exact) + Tcl_Interp * interp; + char * name; + char * version; + int exact; +{ + return (tclStubsPtr->tcl_PkgPresent)(interp, name, version, exact); +} + +/* Slot 189 */ +char * +Tcl_PkgPresentEx(interp, name, version, exact, clientDataPtr) + Tcl_Interp * interp; + char * name; + char * version; + int exact; + ClientData * clientDataPtr; +{ + return (tclStubsPtr->tcl_PkgPresentEx)(interp, name, version, exact, clientDataPtr); +} + +/* Slot 190 */ +int +Tcl_PkgProvide(interp, name, version) + Tcl_Interp * interp; + char * name; + char * version; +{ + return (tclStubsPtr->tcl_PkgProvide)(interp, name, version); +} + +/* Slot 191 */ +int +Tcl_PkgProvideEx(interp, name, version, clientData) + Tcl_Interp * interp; + char * name; + char * version; + ClientData clientData; +{ + return (tclStubsPtr->tcl_PkgProvideEx)(interp, name, version, clientData); +} + +/* Slot 192 */ +char * +Tcl_PkgRequire(interp, name, version, exact) + Tcl_Interp * interp; + char * name; + char * version; + int exact; +{ + return (tclStubsPtr->tcl_PkgRequire)(interp, name, version, exact); +} + +/* Slot 193 */ +char * +Tcl_PkgRequireEx(interp, name, version, exact, clientDataPtr) + Tcl_Interp * interp; + char * name; + char * version; + int exact; + ClientData * clientDataPtr; +{ + return (tclStubsPtr->tcl_PkgRequireEx)(interp, name, version, exact, clientDataPtr); +} + +/* Slot 194 */ +char * +Tcl_PosixError(interp) + Tcl_Interp * interp; +{ + return (tclStubsPtr->tcl_PosixError)(interp); +} + +/* Slot 195 */ +void +Tcl_Preserve(data) + ClientData data; +{ + (tclStubsPtr->tcl_Preserve)(data); +} + +/* Slot 196 */ +void +Tcl_PrintDouble(interp, value, dst) + Tcl_Interp * interp; + double value; + char * dst; +{ + (tclStubsPtr->tcl_PrintDouble)(interp, value, dst); +} + +/* Slot 197 */ +int +Tcl_PutEnv(string) + CONST char * string; +{ + return (tclStubsPtr->tcl_PutEnv)(string); +} + +/* Slot 198 */ +void +Tcl_QueueEvent(evPtr, position) + Tcl_Event * evPtr; + Tcl_QueuePosition position; +{ + (tclStubsPtr->tcl_QueueEvent)(evPtr, position); +} + +/* Slot 199 */ +int +Tcl_Read(chan, bufPtr, toRead) + Tcl_Channel chan; + char * bufPtr; + int toRead; +{ + return (tclStubsPtr->tcl_Read)(chan, bufPtr, toRead); +} + +/* Slot 200 */ +char * +Tcl_Realloc(ptr, size) + char * ptr; + unsigned int size; +{ + return (tclStubsPtr->tcl_Realloc)(ptr, size); +} + +/* Slot 201 */ +void +Tcl_ReapDetachedProcs() +{ + (tclStubsPtr->tcl_ReapDetachedProcs)(); +} + +/* Slot 202 */ +int +Tcl_RecordAndEval(interp, cmd, flags) + Tcl_Interp * interp; + char * cmd; + int flags; +{ + return (tclStubsPtr->tcl_RecordAndEval)(interp, cmd, flags); +} + +/* Slot 203 */ +int +Tcl_RecordAndEvalObj(interp, cmdPtr, flags) + Tcl_Interp * interp; + Tcl_Obj * cmdPtr; + int flags; +{ + return (tclStubsPtr->tcl_RecordAndEvalObj)(interp, cmdPtr, flags); +} + +/* Slot 204 */ +Tcl_RegExp +Tcl_RegExpCompile(interp, string) + Tcl_Interp * interp; + char * string; +{ + return (tclStubsPtr->tcl_RegExpCompile)(interp, string); +} + +/* Slot 205 */ +int +Tcl_RegExpExec(interp, regexp, string, start) + Tcl_Interp * interp; + Tcl_RegExp regexp; + char * string; + char * start; +{ + return (tclStubsPtr->tcl_RegExpExec)(interp, regexp, string, start); +} + +/* Slot 206 */ +int +Tcl_RegExpMatch(interp, string, pattern) + Tcl_Interp * interp; + char * string; + char * pattern; +{ + return (tclStubsPtr->tcl_RegExpMatch)(interp, string, pattern); +} + +/* Slot 207 */ +void +Tcl_RegExpRange(regexp, index, startPtr, endPtr) + Tcl_RegExp regexp; + int index; + char ** startPtr; + char ** endPtr; +{ + (tclStubsPtr->tcl_RegExpRange)(regexp, index, startPtr, endPtr); +} + +/* Slot 208 */ +void +Tcl_RegisterChannel(interp, chan) + Tcl_Interp * interp; + Tcl_Channel chan; +{ + (tclStubsPtr->tcl_RegisterChannel)(interp, chan); +} + +/* Slot 209 */ +void +Tcl_RegisterObjType(typePtr) + Tcl_ObjType * typePtr; +{ + (tclStubsPtr->tcl_RegisterObjType)(typePtr); +} + +/* Slot 210 */ +void +Tcl_Release(clientData) + ClientData clientData; +{ + (tclStubsPtr->tcl_Release)(clientData); +} + +/* Slot 211 */ +void +Tcl_ResetResult(interp) + Tcl_Interp * interp; +{ + (tclStubsPtr->tcl_ResetResult)(interp); +} + +/* Slot 212 */ +int +Tcl_ScanCountedElement(string, length, flagPtr) + CONST char * string; + int length; + int * flagPtr; +{ + return (tclStubsPtr->tcl_ScanCountedElement)(string, length, flagPtr); +} + +/* Slot 213 */ +int +Tcl_ScanElement(string, flagPtr) + CONST char * string; + int * flagPtr; +{ + return (tclStubsPtr->tcl_ScanElement)(string, flagPtr); +} + +/* Slot 214 */ +int +Tcl_Seek(chan, offset, mode) + Tcl_Channel chan; + int offset; + int mode; +{ + return (tclStubsPtr->tcl_Seek)(chan, offset, mode); +} + +/* Slot 215 */ +int +Tcl_ServiceAll() +{ + return (tclStubsPtr->tcl_ServiceAll)(); +} + +/* Slot 216 */ +int +Tcl_ServiceEvent(flags) + int flags; +{ + return (tclStubsPtr->tcl_ServiceEvent)(flags); +} + +/* Slot 217 */ +void +Tcl_SetAssocData(interp, name, proc, clientData) + Tcl_Interp * interp; + char * name; + Tcl_InterpDeleteProc * proc; + ClientData clientData; +{ + (tclStubsPtr->tcl_SetAssocData)(interp, name, proc, clientData); +} + +/* Slot 218 */ +void +Tcl_SetBooleanObj(objPtr, boolValue) + Tcl_Obj * objPtr; + int boolValue; +{ + (tclStubsPtr->tcl_SetBooleanObj)(objPtr, boolValue); +} + +/* Slot 219 */ +unsigned char * +Tcl_SetByteArrayLength(objPtr, length) + Tcl_Obj * objPtr; + int length; +{ + return (tclStubsPtr->tcl_SetByteArrayLength)(objPtr, length); +} + +/* Slot 220 */ +void +Tcl_SetByteArrayObj(objPtr, bytes, length) + Tcl_Obj * objPtr; + unsigned char * bytes; + int length; +{ + (tclStubsPtr->tcl_SetByteArrayObj)(objPtr, bytes, length); +} + +/* Slot 221 */ +void +Tcl_SetChannelBufferSize(chan, sz) + Tcl_Channel chan; + int sz; +{ + (tclStubsPtr->tcl_SetChannelBufferSize)(chan, sz); +} + +/* Slot 222 */ +int +Tcl_SetChannelOption(interp, chan, optionName, newValue) + Tcl_Interp * interp; + Tcl_Channel chan; + char * optionName; + char * newValue; +{ + return (tclStubsPtr->tcl_SetChannelOption)(interp, chan, optionName, newValue); +} + +/* Slot 223 */ +int +Tcl_SetCommandInfo(interp, cmdName, infoPtr) + Tcl_Interp * interp; + char * cmdName; + Tcl_CmdInfo * infoPtr; +{ + return (tclStubsPtr->tcl_SetCommandInfo)(interp, cmdName, infoPtr); +} + +/* Slot 224 */ +void +Tcl_SetDoubleObj(objPtr, doubleValue) + Tcl_Obj * objPtr; + double doubleValue; +{ + (tclStubsPtr->tcl_SetDoubleObj)(objPtr, doubleValue); +} + +/* Slot 225 */ +void +Tcl_SetErrno(err) + int err; +{ + (tclStubsPtr->tcl_SetErrno)(err); +} + +/* Slot 226 */ +void +Tcl_SetErrorCode TCL_VARARGS_DEF(Tcl_Interp *,interp) +{ + Tcl_Interp * var; + va_list argList; + + var = (Tcl_Interp *) TCL_VARARGS_START(Tcl_Interp *,interp,argList); + + (tclStubsPtr->tcl_SetErrorCodeVA)(var, argList); + va_end(argList); +} + +/* Slot 227 */ +void +Tcl_SetErrorCodeVA(interp, argList) + Tcl_Interp * interp; + va_list argList; +{ + (tclStubsPtr->tcl_SetErrorCodeVA)(interp, argList); +} + +/* Slot 228 */ +void +Tcl_SetIntObj(objPtr, intValue) + Tcl_Obj * objPtr; + int intValue; +{ + (tclStubsPtr->tcl_SetIntObj)(objPtr, intValue); +} + +/* Slot 229 */ +void +Tcl_SetListObj(objPtr, objc, objv) + Tcl_Obj * objPtr; + int objc; + Tcl_Obj *CONST objv[]; +{ + (tclStubsPtr->tcl_SetListObj)(objPtr, objc, objv); +} + +/* Slot 230 */ +void +Tcl_SetLongObj(objPtr, longValue) + Tcl_Obj * objPtr; + long longValue; +{ + (tclStubsPtr->tcl_SetLongObj)(objPtr, longValue); +} + +/* Slot 231 */ +void +Tcl_SetMaxBlockTime(timePtr) + Tcl_Time * timePtr; +{ + (tclStubsPtr->tcl_SetMaxBlockTime)(timePtr); +} + +/* Slot 232 */ +void +Tcl_SetObjErrorCode(interp, errorObjPtr) + Tcl_Interp * interp; + Tcl_Obj * errorObjPtr; +{ + (tclStubsPtr->tcl_SetObjErrorCode)(interp, errorObjPtr); +} + +/* Slot 233 */ +void +Tcl_SetObjLength(objPtr, length) + Tcl_Obj * objPtr; + int length; +{ + (tclStubsPtr->tcl_SetObjLength)(objPtr, length); +} + +/* Slot 234 */ +void +Tcl_SetObjResult(interp, resultObjPtr) + Tcl_Interp * interp; + Tcl_Obj * resultObjPtr; +{ + (tclStubsPtr->tcl_SetObjResult)(interp, resultObjPtr); +} + +/* Slot 235 */ +void +Tcl_SetPanicProc(panicProc) + Tcl_PanicProc * panicProc; +{ + (tclStubsPtr->tcl_SetPanicProc)(panicProc); +} + +/* Slot 236 */ +int +Tcl_SetRecursionLimit(interp, depth) + Tcl_Interp * interp; + int depth; +{ + return (tclStubsPtr->tcl_SetRecursionLimit)(interp, depth); +} + +/* Slot 237 */ +void +Tcl_SetResult(interp, string, freeProc) + Tcl_Interp * interp; + char * string; + Tcl_FreeProc * freeProc; +{ + (tclStubsPtr->tcl_SetResult)(interp, string, freeProc); +} + +/* Slot 238 */ +int +Tcl_SetServiceMode(mode) + int mode; +{ + return (tclStubsPtr->tcl_SetServiceMode)(mode); +} + +/* Slot 239 */ +void +Tcl_SetStdChannel(channel, type) + Tcl_Channel channel; + int type; +{ + (tclStubsPtr->tcl_SetStdChannel)(channel, type); +} + +/* Slot 240 */ +void +Tcl_SetStringObj(objPtr, bytes, length) + Tcl_Obj * objPtr; + char * bytes; + int length; +{ + (tclStubsPtr->tcl_SetStringObj)(objPtr, bytes, length); +} + +/* Slot 241 */ +void +Tcl_SetTimer(timePtr) + Tcl_Time * timePtr; +{ + (tclStubsPtr->tcl_SetTimer)(timePtr); +} + +/* Slot 242 */ +char * +Tcl_SetVar(interp, varName, newValue, flags) + Tcl_Interp * interp; + char * varName; + char * newValue; + int flags; +{ + return (tclStubsPtr->tcl_SetVar)(interp, varName, newValue, flags); +} + +/* Slot 243 */ +char * +Tcl_SetVar2(interp, part1, part2, newValue, flags) + Tcl_Interp * interp; + char * part1; + char * part2; + char * newValue; + int flags; +{ + return (tclStubsPtr->tcl_SetVar2)(interp, part1, part2, newValue, flags); +} + +/* Slot 244 */ +char * +Tcl_SignalId(sig) + int sig; +{ + return (tclStubsPtr->tcl_SignalId)(sig); +} + +/* Slot 245 */ +char * +Tcl_SignalMsg(sig) + int sig; +{ + return (tclStubsPtr->tcl_SignalMsg)(sig); +} + +/* Slot 246 */ +void +Tcl_Sleep(ms) + int ms; +{ + (tclStubsPtr->tcl_Sleep)(ms); +} + +/* Slot 247 */ +void +Tcl_SourceRCFile(interp) + Tcl_Interp * interp; +{ + (tclStubsPtr->tcl_SourceRCFile)(interp); +} + +/* Slot 248 */ +int +Tcl_SplitList(interp, list, argcPtr, argvPtr) + Tcl_Interp * interp; + char * list; + int * argcPtr; + char *** argvPtr; +{ + return (tclStubsPtr->tcl_SplitList)(interp, list, argcPtr, argvPtr); +} + +/* Slot 249 */ +void +Tcl_SplitPath(path, argcPtr, argvPtr) + char * path; + int * argcPtr; + char *** argvPtr; +{ + (tclStubsPtr->tcl_SplitPath)(path, argcPtr, argvPtr); +} + +/* Slot 250 */ +void +Tcl_StaticPackage(interp, pkgName, initProc, safeInitProc) + Tcl_Interp * interp; + char * pkgName; + Tcl_PackageInitProc * initProc; + Tcl_PackageInitProc * safeInitProc; +{ + (tclStubsPtr->tcl_StaticPackage)(interp, pkgName, initProc, safeInitProc); +} + +/* Slot 251 */ +int +Tcl_StringMatch(string, pattern) + char * string; + char * pattern; +{ + return (tclStubsPtr->tcl_StringMatch)(string, pattern); +} + +/* Slot 252 */ +int +Tcl_Tell(chan) + Tcl_Channel chan; +{ + return (tclStubsPtr->tcl_Tell)(chan); +} + +/* Slot 253 */ +int +Tcl_TraceVar(interp, varName, flags, proc, clientData) + Tcl_Interp * interp; + char * varName; + int flags; + Tcl_VarTraceProc * proc; + ClientData clientData; +{ + return (tclStubsPtr->tcl_TraceVar)(interp, varName, flags, proc, clientData); +} + +/* Slot 254 */ +int +Tcl_TraceVar2(interp, part1, part2, flags, proc, clientData) + Tcl_Interp * interp; + char * part1; + char * part2; + int flags; + Tcl_VarTraceProc * proc; + ClientData clientData; +{ + return (tclStubsPtr->tcl_TraceVar2)(interp, part1, part2, flags, proc, clientData); +} + +/* Slot 255 */ +char * +Tcl_TranslateFileName(interp, name, bufferPtr) + Tcl_Interp * interp; + char * name; + Tcl_DString * bufferPtr; +{ + return (tclStubsPtr->tcl_TranslateFileName)(interp, name, bufferPtr); +} + +/* Slot 256 */ +int +Tcl_Ungets(chan, str, len, atHead) + Tcl_Channel chan; + char * str; + int len; + int atHead; +{ + return (tclStubsPtr->tcl_Ungets)(chan, str, len, atHead); +} + +/* Slot 257 */ +void +Tcl_UnlinkVar(interp, varName) + Tcl_Interp * interp; + char * varName; +{ + (tclStubsPtr->tcl_UnlinkVar)(interp, varName); +} + +/* Slot 258 */ +int +Tcl_UnregisterChannel(interp, chan) + Tcl_Interp * interp; + Tcl_Channel chan; +{ + return (tclStubsPtr->tcl_UnregisterChannel)(interp, chan); +} + +/* Slot 259 */ +int +Tcl_UnsetVar(interp, varName, flags) + Tcl_Interp * interp; + char * varName; + int flags; +{ + return (tclStubsPtr->tcl_UnsetVar)(interp, varName, flags); +} + +/* Slot 260 */ +int +Tcl_UnsetVar2(interp, part1, part2, flags) + Tcl_Interp * interp; + char * part1; + char * part2; + int flags; +{ + return (tclStubsPtr->tcl_UnsetVar2)(interp, part1, part2, flags); +} + +/* Slot 261 */ +void +Tcl_UntraceVar(interp, varName, flags, proc, clientData) + Tcl_Interp * interp; + char * varName; + int flags; + Tcl_VarTraceProc * proc; + ClientData clientData; +{ + (tclStubsPtr->tcl_UntraceVar)(interp, varName, flags, proc, clientData); +} + +/* Slot 262 */ +void +Tcl_UntraceVar2(interp, part1, part2, flags, proc, clientData) + Tcl_Interp * interp; + char * part1; + char * part2; + int flags; + Tcl_VarTraceProc * proc; + ClientData clientData; +{ + (tclStubsPtr->tcl_UntraceVar2)(interp, part1, part2, flags, proc, clientData); +} + +/* Slot 263 */ +void +Tcl_UpdateLinkedVar(interp, varName) + Tcl_Interp * interp; + char * varName; +{ + (tclStubsPtr->tcl_UpdateLinkedVar)(interp, varName); +} + +/* Slot 264 */ +int +Tcl_UpVar(interp, frameName, varName, localName, flags) + Tcl_Interp * interp; + char * frameName; + char * varName; + char * localName; + int flags; +{ + return (tclStubsPtr->tcl_UpVar)(interp, frameName, varName, localName, flags); +} + +/* Slot 265 */ +int +Tcl_UpVar2(interp, frameName, part1, part2, localName, flags) + Tcl_Interp * interp; + char * frameName; + char * part1; + char * part2; + char * localName; + int flags; +{ + return (tclStubsPtr->tcl_UpVar2)(interp, frameName, part1, part2, localName, flags); +} + +/* Slot 266 */ +void +Tcl_ValidateAllMemory(file, line) + char * file; + int line; +{ + (tclStubsPtr->tcl_ValidateAllMemory)(file, line); +} + +/* Slot 267 */ +int +Tcl_VarEval TCL_VARARGS_DEF(Tcl_Interp *,interp) +{ + Tcl_Interp * var; + va_list argList; + int resultValue; + + var = (Tcl_Interp *) TCL_VARARGS_START(Tcl_Interp *,interp,argList); + + resultValue = (tclStubsPtr->tcl_VarEvalVA)(var, argList); + va_end(argList); +return resultValue; +} + +/* Slot 268 */ +int +Tcl_VarEvalVA(interp, argList) + Tcl_Interp * interp; + va_list argList; +{ + return (tclStubsPtr->tcl_VarEvalVA)(interp, argList); +} + +/* Slot 269 */ +ClientData +Tcl_VarTraceInfo(interp, varName, flags, procPtr, prevClientData) + Tcl_Interp * interp; + char * varName; + int flags; + Tcl_VarTraceProc * procPtr; + ClientData prevClientData; +{ + return (tclStubsPtr->tcl_VarTraceInfo)(interp, varName, flags, procPtr, prevClientData); +} + +/* Slot 270 */ +ClientData +Tcl_VarTraceInfo2(interp, part1, part2, flags, procPtr, prevClientData) + Tcl_Interp * interp; + char * part1; + char * part2; + int flags; + Tcl_VarTraceProc * procPtr; + ClientData prevClientData; +{ + return (tclStubsPtr->tcl_VarTraceInfo2)(interp, part1, part2, flags, procPtr, prevClientData); +} + +/* Slot 271 */ +int +Tcl_WaitForEvent(timePtr) + Tcl_Time * timePtr; +{ + return (tclStubsPtr->tcl_WaitForEvent)(timePtr); +} + +/* Slot 272 */ +Tcl_Pid +Tcl_WaitPid(pid, statPtr, options) + Tcl_Pid pid; + int * statPtr; + int options; +{ + return (tclStubsPtr->tcl_WaitPid)(pid, statPtr, options); +} + +/* Slot 273 */ +int +Tcl_Write(chan, s, slen) + Tcl_Channel chan; + char * s; + int slen; +{ + return (tclStubsPtr->tcl_Write)(chan, s, slen); +} + +/* Slot 274 */ +void +Tcl_WrongNumArgs(interp, objc, objv, message) + Tcl_Interp * interp; + int objc; + Tcl_Obj *CONST objv[]; + char * message; +{ + (tclStubsPtr->tcl_WrongNumArgs)(interp, objc, objv, message); +} + + +/* !END!: Do not edit above this line. */ diff --git a/tools/genStubs.tcl b/tools/genStubs.tcl new file mode 100644 index 0000000..38b958f --- /dev/null +++ b/tools/genStubs.tcl @@ -0,0 +1,891 @@ +# genStubs.tcl -- +# +# This script generates a set of stub files for a given +# interface. +# +# +# Copyright (c) 1998-1999 by Scriptics Corporation. +# See the file "license.terms" for information on usage and redistribution +# of this file, and for a DISCLAIMER OF ALL WARRANTIES. +# +# RCS: @(#) $Id: genStubs.tcl,v 1.1 1999/03/03 00:38:45 stanton Exp $ + +namespace eval genStubs { + # libraryName -- + # + # The name of the entire library. This value is used to compute + # the USE_*_STUB_PROCS macro and the name of the init file. + + variable libraryName "UNKNOWN" + + # interfaces -- + # + # An array indexed by interface name that is used to maintain + # the set of valid interfaces. The value is empty. + + array set interfaces {} + + # curName -- + # + # The name of the interface currently being defined. + + variable curName "UNKNOWN" + + # hooks -- + # + # An array indexed by interface name that contains the set of + # subinterfaces that should be defined for a given interface. + + array set hooks {} + + # stubs -- + # + # This three dimensional array is indexed first by interface name, + # second by platform name, and third by a numeric offset or the + # constant "lastNum". The lastNum entry contains the largest + # numeric offset used for a given interface/platform combo. Each + # numeric offset contains the C function specification that + # should be used for the given entry in the stub table. The spec + # consists of a list in the form returned by parseDecl. + + array set stubs {} + + # outDir -- + # + # The directory where the generated files should be placed. + + variable outDir . +} + +# genStubs::library -- +# +# This function is used in the declarations file to set the name +# of the library that the interfaces are associated with (e.g. "tcl"). +# This value will be used to define the inline conditional macro. +# +# Arguments: +# name The library name. +# +# Results: +# None. + +proc genStubs::library {name} { + variable libraryName $name +} + +# genStubs::interface -- +# +# This function is used in the declarations file to set the name +# of the interface currently being defined. +# +# Arguments: +# name The name of the interface. +# +# Results: +# None. + +proc genStubs::interface {name} { + variable curName $name + variable interfaces + + set interfaces($name) {} + return +} + +# genStubs::hooks -- +# +# This function defines the subinterface hooks for the current +# interface. +# +# Arguments: +# names The ordered list of interfaces that are reachable through the +# hook vector. +# +# Results: +# None. + +proc genStubs::hooks {names} { + variable curName + variable hooks + + set hooks($curName) $names + return +} + +# genStubs::declare -- +# +# This function is used in the declarations file to declare a new +# interface entry. +# +# Arguments: +# index The index number of the interface. +# platform The platform the interface belongs to. Should be one +# of generic, win, unix, or mac. +# decl The C function declaration, or {} for an undefined +# entry. +# +# Results: +# None. + +proc genStubs::declare {args} { + variable stubs + variable curName + + if {[llength $args] != 3} { + puts stderr "wrong # args: declare $args" + } + lassign $args index platform decl + + # Check for duplicate declarations, then add the declaration and + # bump the lastNum counter if necessary. + + if {[info exists stubs($curName,$platform,$index)]} { + puts stderr "Duplicate entry: declare $args" + } + regsub -all "\[ \t\n\]+" [string trim $decl] " " decl + set decl [parseDecl $decl] + if {$decl != ""} { + set stubs($curName,$platform,$index) $decl + if {![info exists stubs($curName,$platform,lastNum)] \ + || ($index > $stubs($curName,$platform,lastNum))} { + set stubs($curName,$platform,lastNum) $index + } + } + return +} + +# genStubs::rewriteFile -- +# +# This function replaces the machine generated portion of the +# specified file with new contents. It looks for the !BEGIN! and +# !END! comments to determine where to place the new text. +# +# Arguments: +# file The name of the file to modify. +# text The new text to place in the file. +# +# Results: +# None. + +proc genStubs::rewriteFile {file text} { + if {![file exist $file]} { + puts stderr "Cannot find file: $file" + return + } + set in [open ${file} r] + set out [open ${file}.new w] + + while {![eof $in]} { + set line [gets $in] + if {[regexp {!BEGIN!} $line]} { + break + } + puts $out $line + } + puts $out "/* !BEGIN!: Do not edit below this line. */" + puts $out $text + while {![eof $in]} { + set line [gets $in] + if {[regexp {!END!} $line]} { + break + } + } + puts $out "/* !END!: Do not edit above this line. */" + puts -nonewline $out [read $in] + close $in + close $out + file rename -force ${file}.new ${file} + return +} + +# genStubs::addPlatformGuard -- +# +# Wrap a string inside a platform #ifdef. +# +# Arguments: +# plat Platform to test. +# +# Results: +# Returns the original text inside an appropriate #ifdef. + +proc genStubs::addPlatformGuard {plat text} { + switch $plat { + win { + return "#ifdef __WIN32__\n${text}#endif /* __WIN32__ */\n" + } + unix { + return "#if !defined(__WIN32__) && !defined(MAC_TCL)\n${text}#endif /* UNIX */\n" + } + mac { + return "#ifdef MAC_TCL\n${text}#endif /* MAC_TCL */\n" + } + } + return "$text" +} + +# genStubs::emitSlots -- +# +# Generate the stub table slots for the given interface. If there +# are no platform specific slots, then one table is generated for +# all platforms, otherwise one table is generated for each platform. +# +# Arguments: +# name The name of the interface being emitted. +# textVar The variable to use for output. +# +# Results: +# None. + +proc genStubs::emitSlots {name textVar} { + variable stubs + upvar $textVar text + + set lastNum -1 + if {[info exists stubs($name,generic,lastNum)]} { + set lastNum $stubs($name,generic,lastNum) + } + set output 0 + foreach plat {win unix mac} { + if {[info exists stubs($name,$plat,lastNum)]} { + set num $stubs($name,$plat,lastNum) + if {$num < $lastNum} { + set num $lastNum + } + set temp "" + for {set i 0} {$i <= $num} {incr i} { + if {[info exists stubs($name,$plat,$i)]} { + if {[info exists stubs($name,generic,$i)]} { + puts stderr "platform entry duplicates generic entry: $i" + } + append temp [makeSlot $stubs($name,$plat,$i) $i] + } elseif {[info exists stubs($name,generic,$i)]} { + append temp [makeSlot $stubs($name,generic,$i) $i] + } else { + append temp " void *reserved$i;\n" + } + } + append text [addPlatformGuard $plat $temp] + set output 1 + } + } + if {!$output} { + for {set i 0} {$i <= $lastNum} {incr i} { + if {[info exists stubs($name,generic,$i)]} { + append text [makeSlot $stubs($name,generic,$i) $i] + } else { + append text " void *reserved$i;\n" + } + } + } + return +} + +# genStubs::parseDecl -- +# +# Parse a C function declaration into its component parts. +# +# Arguments: +# decl The function declaration. +# +# Results: +# Returns a list of the form {returnType name args}. The args +# element consists of a list of type/name pairs, or a single +# element "void". If the function declaration is malformed +# then an error is displayed and the return value is {}. + +proc genStubs::parseDecl {decl} { + if {![regexp {^(.*)\((.*)\)$} $decl all prefix args]} { + puts stderr "Malformed declaration: $decl" + return + } + set prefix [string trim $prefix] + if {![regexp {^(.+[ ][*]*)([^ *]+)$} $prefix all rtype fname]} { + puts stderr "Bad return type: $decl" + return + } + set rtype [string trim $rtype] + foreach arg [split $args ,] { + lappend argList [string trim $arg] + } + if {![string compare [lindex $argList end] "..."]} { + if {[llength $argList] != 2} { + puts stderr "Only one argument is allowed in varargs form: $decl" + } + set arg [parseArg [lindex $argList 0]] + if {$arg == "" || ([llength $arg] != 2)} { + puts stderr "Bad argument: '[lindex $argList 0]' in '$decl'" + return + } + set args [list TCL_VARARGS $arg] + } else { + set args {} + foreach arg $argList { + set argInfo [parseArg $arg] + if {![string compare $argInfo "void"]} { + lappend args "void" + break + } elseif {[llength $argInfo] == 2 || [llength $argInfo] == 3} { + lappend args $argInfo + } else { + puts stderr "Bad argument: '$arg' in '$decl'" + return + } + } + } + return [list $rtype $fname $args] +} + +# genStubs::parseArg -- +# +# This function parses a function argument into a type and name. +# +# Arguments: +# arg The argument to parse. +# +# Results: +# Returns a list of type and name with an optional third array +# indicator. If the argument is malformed, returns "". + +proc genStubs::parseArg {arg} { + if {![regexp {^(.+[ ][*]*)([^][ *]+)(\[\])?$} $arg all type name array]} { + if {$arg == "void"} { + return $arg + } else { + return + } + } + set result [list [string trim $type] $name] + if {$array != ""} { + lappend result $array + } + return $result +} + +# genStubs::makeDecl -- +# +# Generate the prototype for a function. +# +# Arguments: +# name The interface name. +# decl The function declaration. +# index The slot index for this function. +# +# Results: +# Returns the formatted declaration string. + +proc genStubs::makeDecl {name decl index} { + lassign $decl rtype fname args + + append text "/* $index */\n" + set line "EXTERN $rtype" + set count [expr {2 - ([string length $line] / 8)}] + append line [string range "\t\t\t" 0 $count] + set pad [expr {24 - [string length $line]}] + if {$pad <= 0} { + append line " " + set pad 0 + } + append line "$fname _ANSI_ARGS_(" + + set arg1 [lindex $args 0] + switch -exact $arg1 { + void { + append line "(void)" + } + TCL_VARARGS { + set arg [lindex $args 1] + append line "TCL_VARARGS([lindex $arg 0],[lindex $arg 1])" + } + default { + set sep "(" + foreach arg $args { + append line $sep + set next {} + append next [lindex $arg 0] " " [lindex $arg 1] \ + [lindex $arg 2] + if {[string length $line] + [string length $next] \ + + $pad > 76} { + append text $line \n + set line "\t\t\t\t" + set pad 28 + } + append line $next + set sep ", " + } + append line ")" + } + } + append text $line + + append text ");\n" + return $text +} + +# genStubs::makeMacro -- +# +# Generate the inline macro for a function. +# +# Arguments: +# name The interface name. +# decl The function declaration. +# index The slot index for this function. +# +# Results: +# Returns the formatted macro definition. + +proc genStubs::makeMacro {name decl index} { + lassign $decl rtype fname args + + set lfname [string tolower [string index $fname 0]] + append lfname [string range $fname 1 end] + + set text "#ifndef $fname\n#define $fname" + set arg1 [lindex $args 0] + set argList "" + switch -exact $arg1 { + void { + set argList "()" + } + TCL_VARARGS { + } + default { + set sep "(" + foreach arg $args { + append argList $sep [lindex $arg 1] + set sep ", " + } + append argList ")" + } + } + append text $argList " \\\n\t(${name}StubsPtr->$lfname)$argList" + append text " /* $index */\n#endif\n" + return $text +} + +# genStubs::makeStub -- +# +# Emits a stub function definition. +# +# Arguments: +# name The interface name. +# decl The function declaration. +# index The slot index for this function. +# +# Results: +# Returns the formatted stub function definition. + +proc genStubs::makeStub {name decl index} { + lassign $decl rtype fname args + + set lfname [string tolower [string index $fname 0]] + append lfname [string range $fname 1 end] + + append text "/* Slot $index */\n" $rtype "\n" $fname + + set arg1 [lindex $args 0] + + if {![string compare $arg1 "TCL_VARARGS"]} { + lassign [lindex $args 1] type argName + append text " TCL_VARARGS_DEF($type,$argName)\n\{\n" + append text " " $type " var;\n va_list argList;\n" + if {[string compare $rtype "void"]} { + append text " " $rtype " resultValue;\n" + } + append text "\n var = (" $type ") TCL_VARARGS_START(" \ + $type "," $argName ",argList);\n\n " + if {[string compare $rtype "void"]} { + append text "resultValue = " + } + append text "(" $name "StubsPtr->" $lfname "VA)(var, argList);\n" + append text " va_end(argList);\n" + if {[string compare $rtype "void"]} { + append text "return resultValue;\n" + } + append text "\}\n\n" + return $text + } + + if {![string compare $arg1 "void"]} { + set argList "()" + set argDecls "" + } else { + set argList "" + set sep "(" + foreach arg $args { + append argList $sep [lindex $arg 1] + append argDecls " " [lindex $arg 0] " " \ + [lindex $arg 1] [lindex $arg 2] ";\n" + set sep ", " + } + append argList ")" + } + append text $argList "\n" $argDecls "{\n " + if {[string compare $rtype "void"]} { + append text "return " + } + append text "(" $name "StubsPtr->" $lfname ")" $argList ";\n}\n\n" + return $text +} + +# genStubs::makeSlot -- +# +# Generate the stub table entry for a function. +# +# Arguments: +# decl The function declaration. +# index The slot index for this function. +# +# Results: +# Returns the formatted table entry. + +proc genStubs::makeSlot {decl index} { + lassign $decl rtype fname args + + set lfname [string tolower [string index $fname 0]] + append lfname [string range $fname 1 end] + + set text " " + append text $rtype " (*" $lfname ") _ANSI_ARGS_(" + + set arg1 [lindex $args 0] + switch -exact $arg1 { + void { + append text "(void)" + } + TCL_VARARGS { + set arg [lindex $args 1] + append text "TCL_VARARGS([lindex $arg 0],[lindex $arg 1])" + } + default { + set sep "(" + foreach arg $args { + append text $sep [lindex $arg 0] " " [lindex $arg 1] \ + [lindex $arg 2] + set sep ", " + } + append text ")" + } + } + + append text "); /* $index */\n" + return $text +} + +# genStubs::forAllStubs -- +# +# This function iterates over all of the platforms and invokes +# a callback for each slot. The result of the callback is then +# placed inside appropriate platform guards. +# +# Arguments: +# name The interface name. +# slotProc The proc to invoke to handle the slot. It will +# have the interface name, the declaration, and +# the index appended. +# textVar The variable to use for output. +# +# Results: +# None. + +proc genStubs::forAllStubs {name slotProc textVar} { + variable stubs + upvar $textVar text + + foreach plat {generic win unix mac} { + if {[info exists stubs($name,$plat,lastNum)]} { + set lastNum $stubs($name,$plat,lastNum) + set temp {} + for {set i 0} {$i <= $lastNum} {incr i} { + if {![info exists stubs($name,$plat,$i)]} { + append temp "/* Slot $i is reserved */\n" + } else { + append temp [$slotProc $name $stubs($name,$plat,$i) $i] + } + } + append text [addPlatformGuard $plat $temp] + } + } +} + +# genStubs::emitDeclarations -- +# +# This function emits the function declarations for this interface. +# +# Arguments: +# name The interface name. +# textVar The variable to use for output. +# +# Results: +# None. + +proc genStubs::emitDeclarations {name textVar} { + variable stubs + upvar $textVar text + + append text "\n/*\n * Exported function declarations:\n */\n\n" + forAllStubs $name makeDecl text + return +} + +# genStubs::emitMacros -- +# +# This function emits the inline macros for an interface. +# +# Arguments: +# name The name of the interface being emitted. +# textVar The variable to use for output. +# +# Results: +# None. + +proc genStubs::emitMacros {name textVar} { + variable stubs + variable libraryName + upvar $textVar text + + set upName [string toupper $libraryName] + append text "\n#if defined(USE_${upName}_STUBS) && !defined(USE_${upName}_STUB_PROCS)\n" + append text "\n/*\n * Inline function declarations:\n */\n\n" + + forAllStubs $name makeMacro text + + append text "\n#endif /* defined(USE_${upName}_STUBS) && !defined(USE_${upName}_STUB_PROCS) */\n" + return +} + +# genStubs::emitHeader -- +# +# This function emits the body of the <name>Decls.h file for +# the specified interface. +# +# Arguments: +# name The name of the interface being emitted. +# +# Results: +# None. + +proc genStubs::emitHeader {name} { + variable outDir + variable hooks + + set capName [string toupper [string index $name 0]] + append capName [string range $name 1 end] + + emitDeclarations $name text + + if {[info exists hooks($name)]} { + append text "\ntypedef struct ${capName}StubHooks {\n" + foreach hook $hooks($name) { + set capHook [string toupper [string index $hook 0]] + append capHook [string range $hook 1 end] + append text " struct ${capHook}Stubs *${hook}Stubs;\n" + } + append text "} ${capName}StubHooks;\n" + } + append text "\ntypedef struct ${capName}Stubs {\n" + append text " int magic;\n" + append text " struct ${capName}StubHooks *hooks;\n\n" + + emitSlots $name text + + append text "} ${capName}Stubs;\n" + + append text "\nextern ${capName}Stubs *${name}StubsPtr;\n" + + emitMacros $name text + + rewriteFile [file join $outDir ${name}Decls.h] $text + return +} + +# genStubs::emitStubs -- +# +# This function emits the body of the <name>Stubs.c file for +# the specified interface. +# +# Arguments: +# name The name of the interface being emitted. +# +# Results: +# None. + +proc genStubs::emitStubs {name} { + variable outDir + + append text "\n/*\n * Exported stub functions:\n */\n\n" + forAllStubs $name makeStub text + + rewriteFile [file join $outDir ${name}Stubs.c] $text + return +} + +# genStubs::makeInit -- +# +# Generate the table initializers for an interface. +# +# Arguments: +# name The name of the interface to initialize. +# textVar The variable to use for output. +# +# Results: +# Returns the formatted output. + +proc genStubs::makeInit {name textVar} { + variable stubs + variable hooks + upvar $textVar text + + set capName [string toupper [string index $name 0]] + append capName [string range $name 1 end] + + if {[info exists hooks($name)]} { + append text "\nstatic ${capName}StubHooks ${name}StubHooks;\n" + } + append text "\n${capName}Stubs ${name}Stubs = \{\n" + append text " TCL_STUB_MAGIC,\n" + if {[info exists hooks($name)]} { + append text " &${name}StubHooks,\n" + } else { + append text " NULL,\n" + } + + set lastNum -1 + if {[info exists stubs($name,generic,lastNum)]} { + set lastNum $stubs($name,generic,lastNum) + } + set output 0 + foreach plat {win unix mac} { + if {[info exists stubs($name,$plat,lastNum)]} { + set num $stubs($name,$plat,lastNum) + if {$num < $lastNum} { + set num $lastNum + } + set temp "" + for {set i 0} {$i <= $num} {incr i} { + append temp " " + if {[info exists stubs($name,$plat,$i)]} { + if {[info exists stubs($name,generic,$i)]} { + puts stderr "platform entry duplicates generic entry: $i" + } + append temp [lindex $stubs($name,$plat,$i) 1] + } elseif {[info exists stubs($name,generic,$i)]} { + append temp [lindex $stubs($name,generic,$i) 1] + } else { + append temp "NULL" + } + append temp ", /* $i */\n" + } + append text [addPlatformGuard $plat $temp] + set output 1 + } + } + if {!$output} { + for {set i 0} {$i <= $lastNum} {incr i} { + append text " " + if {[info exists stubs($name,generic,$i)]} { + append text [lindex $stubs($name,generic,$i) 1] + } else { + append text "NULL" + } + append text ", /* $i */\n" + } + } + append text "\};\n\n" + append text "extern ${capName}Stubs *${name}StubsPtr = &${name}Stubs;\n" + return +} + +# genStubs::emitInit -- +# +# This function emits the body of the <name>StubInit.c file for +# the specified interface. +# +# Arguments: +# name The name of the interface being emitted. +# +# Results: +# None. + +proc genStubs::emitInit {} { + variable hooks + variable outDir + variable libraryName + variable interfaces + + foreach name [lsort [array names interfaces]] { + makeInit $name text + } + + + foreach name [array names hooks] { + set capName [string toupper [string index $name 0]] + append capName [string range $name 1 end] + + append text "\nstatic ${capName}StubHooks ${name}StubHooks = \{\n" + set sep " " + foreach sub $hooks($name) { + append text $sep "&${sub}Stubs" + set sep ",\n " + } + append text "\n\};\n\n" + } + + rewriteFile [file join $outDir ${libraryName}StubInit.c] $text +} + +# genStubs::init -- +# +# This is the main entry point. +# +# Arguments: +# None. +# +# Results: +# None. + +proc genStubs::init {} { + global argv + variable outDir + variable interfaces + + if {[llength $argv] < 2} { + puts stderr "usage: $argv0 outDir declFile ?declFile...?" + exit 1 + } + + set outDir [lindex $argv 0] + + foreach file [lrange $argv 1 end] { + source $file + } + + foreach name [lsort [array names interfaces]] { + puts "Emitting $name" + emitHeader $name + emitStubs $name + } + + emitInit +} + +# lassign -- +# +# This function emulates the TclX lassign command. +# +# Arguments: +# valueList A list containing the values to be assigned. +# args The list of variables to be assigned. +# +# Results: +# Returns any values that were not assigned to variables. + +proc lassign {valueList args} { + if {[llength $args] == 0} { + error "wrong # args: lassign list varname ?varname..?" + } + + uplevel [list foreach $args $valueList {break}] + return [lrange $valueList [llength $args] end] +} + +genStubs::init |