tcl.h   tcl.h 
/* /*
* tcl.h -- * tcl.h --
* *
* This header file describes the externally-visible facilities * This header file describes the externally-visible facilities
* of the Tcl interpreter. * of the Tcl interpreter.
* *
* Copyright (c) 1987-1994 The Regents of the University of California. * Copyright (c) 1987-1994 The Regents of the University of California.
* Copyright (c) 1993-1996 Lucent Technologies. * Copyright (c) 1993-1996 Lucent Technologies.
* Copyright (c) 1994-1998 Sun Microsystems, Inc. * Copyright (c) 1994-1998 Sun Microsystems, Inc.
* Copyright (c) 1998-1999 by Scriptics Corporation. * Copyright (c) 1998-2000 by Scriptics Corporation.
* *
* See the file "license.terms" for information on usage and redistribution * See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES. * of this file, and for a DISCLAIMER OF ALL WARRANTIES.
* *
* RCS: @(#) $Id: tcl.h,v 1.63 2000/02/08 10:05:40 hobbs Exp $ * RCS: @(#) $Id: tcl.h,v 1.70 2000/04/19 08:32:44 hobbs Exp $
*/ */
#ifndef _TCL #ifndef _TCL
#define _TCL #define _TCL
/* /*
* For C++ compilers, use extern "C" * For C++ compilers, use extern "C"
*/ */
#ifdef __cplusplus #ifdef __cplusplus
skipping to change at line 52 skipping to change at line 52
* unix/configure.in (2 LOC Major, 2 LOC minor, 1 LOC patch) * unix/configure.in (2 LOC Major, 2 LOC minor, 1 LOC patch)
* win/configure.in (as above) * win/configure.in (as above)
* win/tcl.m4 (not patchlevel) * win/tcl.m4 (not patchlevel)
* win/makefile.vc (not patchlevel) 2 LOC * win/makefile.vc (not patchlevel) 2 LOC
* win/pkgIndex.tcl (not patchlevel, for tclregNN.dll) * win/pkgIndex.tcl (not patchlevel, for tclregNN.dll)
* README (sections 0 and 2) * README (sections 0 and 2)
* mac/README (2 LOC, not patchlevel) * mac/README (2 LOC, not patchlevel)
* win/README.binary (sections 0-4) * win/README.binary (sections 0-4)
* win/README (not patchlevel) (sections 0 and 2) * win/README (not patchlevel) (sections 0 and 2)
* unix/README (not patchlevel) (part (h)) * unix/README (not patchlevel) (part (h))
* unix/tcl.spec (2 LOC Major/Minor, 1 LOC patch)
* tests/basic.test (not patchlevel) (version checks) * tests/basic.test (not patchlevel) (version checks)
* tools/tcl.hpj.in (not patchlevel, for windows installer) * tools/tcl.hpj.in (not patchlevel, for windows installer)
* tools/tcl.wse.in (for windows installer) * tools/tcl.wse.in (for windows installer)
* tools/tclSplash.bmp (not patchlevel) * tools/tclSplash.bmp (not patchlevel)
*/ */
#define TCL_MAJOR_VERSION 8 #define TCL_MAJOR_VERSION 8
#define TCL_MINOR_VERSION 3 #define TCL_MINOR_VERSION 3
#define TCL_RELEASE_LEVEL TCL_FINAL_RELEASE #define TCL_RELEASE_LEVEL TCL_FINAL_RELEASE
#define TCL_RELEASE_SERIAL 0 #define TCL_RELEASE_SERIAL 1
#define TCL_VERSION "8.3" #define TCL_VERSION "8.3"
#define TCL_PATCH_LEVEL "8.3.0" #define TCL_PATCH_LEVEL "8.3.1"
/* /*
* The following definitions set up the proper options for Windows * The following definitions set up the proper options for Windows
* compilers. We use this method because there is no autoconf equivalent. * compilers. We use this method because there is no autoconf equivalent.
*/ */
#ifndef __WIN32__ #ifndef __WIN32__
# if defined(_WIN32) || defined(WIN32) # if defined(_WIN32) || defined(WIN32)
# define __WIN32__ # define __WIN32__
# endif # endif
skipping to change at line 166 skipping to change at line 167
#endif #endif
/* /*
* Macros that eliminate the overhead of the thread synchronization * Macros that eliminate the overhead of the thread synchronization
* functions when compiling without thread support. * functions when compiling without thread support.
*/ */
#ifndef TCL_THREADS #ifndef TCL_THREADS
#define Tcl_MutexLock(mutexPtr) #define Tcl_MutexLock(mutexPtr)
#define Tcl_MutexUnlock(mutexPtr) #define Tcl_MutexUnlock(mutexPtr)
#define Tcl_MutexFinalize(mutexPtr)
#define Tcl_ConditionNotify(condPtr) #define Tcl_ConditionNotify(condPtr)
#define Tcl_ConditionWait(condPtr, mutexPtr, timePtr) #define Tcl_ConditionWait(condPtr, mutexPtr, timePtr)
#define Tcl_ConditionFinalize(condPtr)
#endif /* TCL_THREADS */ #endif /* TCL_THREADS */
/* /*
* A special definition used to allow this header file to be included * A special definition used to allow this header file to be included
* in resource files so that they can get obtain version information from * in resource files so that they can get obtain version information from
* this file. Resource compilers don't like all the C stuff, like typedefs * this file. Resource compilers don't like all the C stuff, like typedefs
* and procedure declarations, that occur below. * and procedure declarations, that occur below.
*/ */
#ifndef RESOURCE_INCLUDED #ifndef RESOURCE_INCLUDED
skipping to change at line 388 skipping to change at line 391
typedef struct Tcl_Mutex_ *Tcl_Mutex; typedef struct Tcl_Mutex_ *Tcl_Mutex;
typedef struct Tcl_Pid_ *Tcl_Pid; typedef struct Tcl_Pid_ *Tcl_Pid;
typedef struct Tcl_RegExp_ *Tcl_RegExp; typedef struct Tcl_RegExp_ *Tcl_RegExp;
typedef struct Tcl_ThreadDataKey_ *Tcl_ThreadDataKey; typedef struct Tcl_ThreadDataKey_ *Tcl_ThreadDataKey;
typedef struct Tcl_ThreadId_ *Tcl_ThreadId; typedef struct Tcl_ThreadId_ *Tcl_ThreadId;
typedef struct Tcl_TimerToken_ *Tcl_TimerToken; typedef struct Tcl_TimerToken_ *Tcl_TimerToken;
typedef struct Tcl_Trace_ *Tcl_Trace; typedef struct Tcl_Trace_ *Tcl_Trace;
typedef struct Tcl_Var_ *Tcl_Var; typedef struct Tcl_Var_ *Tcl_Var;
/* /*
* Definition of the interface to procedures implementing threads.
* A procedure following this definition is given to each call of
* 'Tcl_CreateThread' and will be called as the main fuction of
* the new thread created by that call.
*/
#ifdef MAC_TCL
typedef pascal void *(Tcl_ThreadCreateProc) _ANSI_ARGS_((ClientData clientD
ata));
#elif defined __WIN32__
typedef unsigned (__stdcall Tcl_ThreadCreateProc) _ANSI_ARGS_((ClientData c
lientData));
#else
typedef void (Tcl_ThreadCreateProc) _ANSI_ARGS_((ClientData clientData));
#endif
/*
* Threading function return types used for abstracting away platform
* differences when writing a Tcl_ThreadCreateProc. See the NewThread
* function in generic/tclThreadTest.c for it's usage.
*/
#ifdef MAC_TCL
# define Tcl_ThreadCreateType pascal void *
# define TCL_THREAD_CREATE_RETURN return NULL
#elif defined __WIN32__
# define Tcl_ThreadCreateType unsigned __stdcall
# define TCL_THREAD_CREATE_RETURN return 0
#else
# define Tcl_ThreadCreateType void
# define TCL_THREAD_CREATE_RETURN
#endif
/*
* Definition of values for default stacksize and the possible flags to be
* given to Tcl_CreateThread.
*/
#define TCL_THREAD_STACK_DEFAULT (0) /* Use default size for stack */
#define TCL_THREAD_NOFLAGS (0000) /* Standard flags, default behaviou
r */
#define TCL_THREAD_JOINABLE (0001) /* Mark the thread as joinable */
/*
* Flag values passed to Tcl_GetRegExpFromObj. * Flag values passed to Tcl_GetRegExpFromObj.
*/ */
#define TCL_REG_BASIC 000000 /* BREs (convenience) */ #define TCL_REG_BASIC 000000 /* BREs (convenience) */
#define TCL_REG_EXTENDED 000001 /* EREs */ #define TCL_REG_EXTENDED 000001 /* EREs */
#define TCL_REG_ADVF 000002 /* advanced features in EREs */ #define TCL_REG_ADVF 000002 /* advanced features in EREs */
#define TCL_REG_ADVANCED 000003 /* AREs (which are also EREs ) */ #define TCL_REG_ADVANCED 000003 /* AREs (which are also EREs ) */
#define TCL_REG_QUOTE 000004 /* no special characters, no ne */ #define TCL_REG_QUOTE 000004 /* no special characters, no ne */
#define TCL_REG_NOCASE 000010 /* ignore case */ #define TCL_REG_NOCASE 000010 /* ignore case */
#define TCL_REG_NOSUB 000020 /* don't care about subexpre ssions */ #define TCL_REG_NOSUB 000020 /* don't care about subexpre ssions */
 End of changes. 8 change blocks. 
4 lines changed or deleted 50 lines changed or added


 tclDecls.h   tclDecls.h 
/* /*
* tclDecls.h -- * tclDecls.h --
* *
* Declarations of functions in the platform independent public Tcl API . * Declarations of functions in the platform independent public Tcl API .
* *
* Copyright (c) 1998-1999 by Scriptics Corporation. * Copyright (c) 1998-1999 by Scriptics Corporation.
* *
* See the file "license.terms" for information on usage and redistribution * See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES. * of this file, and for a DISCLAIMER OF ALL WARRANTIES.
* *
* RCS: @(#) $Id: tclDecls.h,v 1.31 2000/02/08 10:05:41 hobbs Exp $ * RCS: @(#) $Id: tclDecls.h,v 1.34 2000/04/09 16:04:17 kupries Exp $
*/ */
#ifndef _TCLDECLS #ifndef _TCLDECLS
#define _TCLDECLS #define _TCLDECLS
/* /*
* WARNING: This file is automatically generated by the tools/genStubs.tcl * WARNING: This file is automatically generated by the tools/genStubs.tcl
* script. Any modifications to the function declarations below should be made * script. Any modifications to the function declarations below should be made
* in the generic/tcl.decls script. * in the generic/tcl.decls script.
*/ */
skipping to change at line 1221 skipping to change at line 1221
EXTERN Tcl_Mutex * Tcl_GetAllocMutex _ANSI_ARGS_((void)); EXTERN Tcl_Mutex * Tcl_GetAllocMutex _ANSI_ARGS_((void));
/* 388 */ /* 388 */
EXTERN int Tcl_GetChannelNames _ANSI_ARGS_((Tcl_Interp * interp )); EXTERN int Tcl_GetChannelNames _ANSI_ARGS_((Tcl_Interp * interp ));
/* 389 */ /* 389 */
EXTERN int Tcl_GetChannelNamesEx _ANSI_ARGS_(( EXTERN int Tcl_GetChannelNamesEx _ANSI_ARGS_((
Tcl_Interp * interp, char * pattern)); Tcl_Interp * interp, char * pattern));
/* 390 */ /* 390 */
EXTERN int Tcl_ProcObjCmd _ANSI_ARGS_((ClientData clientData, EXTERN int Tcl_ProcObjCmd _ANSI_ARGS_((ClientData clientData,
Tcl_Interp * interp, int objc, Tcl_Interp * interp, int objc,
Tcl_Obj *CONST objv[])); Tcl_Obj *CONST objv[]));
/* 391 */
EXTERN void Tcl_ConditionFinalize _ANSI_ARGS_((
Tcl_Condition * condPtr));
/* 392 */
EXTERN void Tcl_MutexFinalize _ANSI_ARGS_((Tcl_Mutex * mutex));
/* 393 */
EXTERN int Tcl_CreateThread _ANSI_ARGS_((Tcl_ThreadId * idPtr,
Tcl_ThreadCreateProc proc,
ClientData clientData, int stackSize,
int flags));
typedef struct TclStubHooks { typedef struct TclStubHooks {
struct TclPlatStubs *tclPlatStubs; struct TclPlatStubs *tclPlatStubs;
struct TclIntStubs *tclIntStubs; struct TclIntStubs *tclIntStubs;
struct TclIntPlatStubs *tclIntPlatStubs; struct TclIntPlatStubs *tclIntPlatStubs;
} TclStubHooks; } TclStubHooks;
typedef struct TclStubs { typedef struct TclStubs {
int magic; int magic;
struct TclStubHooks *hooks; struct TclStubHooks *hooks;
skipping to change at line 1679 skipping to change at line 1689
Tcl_UniChar (*tcl_GetUniChar) _ANSI_ARGS_((Tcl_Obj * objPtr, int index) ); /* 381 */ Tcl_UniChar (*tcl_GetUniChar) _ANSI_ARGS_((Tcl_Obj * objPtr, int index) ); /* 381 */
Tcl_UniChar * (*tcl_GetUnicode) _ANSI_ARGS_((Tcl_Obj * objPtr)); /* 382 */ Tcl_UniChar * (*tcl_GetUnicode) _ANSI_ARGS_((Tcl_Obj * objPtr)); /* 382 */
Tcl_Obj * (*tcl_GetRange) _ANSI_ARGS_((Tcl_Obj * objPtr, int first, int last)); /* 383 */ Tcl_Obj * (*tcl_GetRange) _ANSI_ARGS_((Tcl_Obj * objPtr, int first, int last)); /* 383 */
void (*tcl_AppendUnicodeToObj) _ANSI_ARGS_((Tcl_Obj * objPtr, Tcl_UniCh ar * unicode, int length)); /* 384 */ void (*tcl_AppendUnicodeToObj) _ANSI_ARGS_((Tcl_Obj * objPtr, Tcl_UniCh ar * unicode, int length)); /* 384 */
int (*tcl_RegExpMatchObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * s tringObj, Tcl_Obj * patternObj)); /* 385 */ int (*tcl_RegExpMatchObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * s tringObj, Tcl_Obj * patternObj)); /* 385 */
void (*tcl_SetNotifier) _ANSI_ARGS_((Tcl_NotifierProcs * notifierProcPt r)); /* 386 */ void (*tcl_SetNotifier) _ANSI_ARGS_((Tcl_NotifierProcs * notifierProcPt r)); /* 386 */
Tcl_Mutex * (*tcl_GetAllocMutex) _ANSI_ARGS_((void)); /* 387 */ Tcl_Mutex * (*tcl_GetAllocMutex) _ANSI_ARGS_((void)); /* 387 */
int (*tcl_GetChannelNames) _ANSI_ARGS_((Tcl_Interp * interp)); /* 388 * / int (*tcl_GetChannelNames) _ANSI_ARGS_((Tcl_Interp * interp)); /* 388 * /
int (*tcl_GetChannelNamesEx) _ANSI_ARGS_((Tcl_Interp * interp, char * p attern)); /* 389 */ int (*tcl_GetChannelNamesEx) _ANSI_ARGS_((Tcl_Interp * interp, char * p attern)); /* 389 */
int (*tcl_ProcObjCmd) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 390 */ int (*tcl_ProcObjCmd) _ANSI_ARGS_((ClientData clientData, Tcl_Interp * interp, int objc, Tcl_Obj *CONST objv[])); /* 390 */
void (*tcl_ConditionFinalize) _ANSI_ARGS_((Tcl_Condition * condPtr)); /
* 391 */
void (*tcl_MutexFinalize) _ANSI_ARGS_((Tcl_Mutex * mutex)); /* 392 */
int (*tcl_CreateThread) _ANSI_ARGS_((Tcl_ThreadId * idPtr, Tcl_ThreadCr
eateProc proc, ClientData clientData, int stackSize, int flags)); /* 393 */
} TclStubs; } TclStubs;
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
extern TclStubs *tclStubsPtr; extern TclStubs *tclStubsPtr;
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
skipping to change at line 3288 skipping to change at line 3301
(tclStubsPtr->tcl_GetChannelNames) /* 388 */ (tclStubsPtr->tcl_GetChannelNames) /* 388 */
#endif #endif
#ifndef Tcl_GetChannelNamesEx #ifndef Tcl_GetChannelNamesEx
#define Tcl_GetChannelNamesEx \ #define Tcl_GetChannelNamesEx \
(tclStubsPtr->tcl_GetChannelNamesEx) /* 389 */ (tclStubsPtr->tcl_GetChannelNamesEx) /* 389 */
#endif #endif
#ifndef Tcl_ProcObjCmd #ifndef Tcl_ProcObjCmd
#define Tcl_ProcObjCmd \ #define Tcl_ProcObjCmd \
(tclStubsPtr->tcl_ProcObjCmd) /* 390 */ (tclStubsPtr->tcl_ProcObjCmd) /* 390 */
#endif #endif
#ifndef Tcl_ConditionFinalize
#define Tcl_ConditionFinalize \
(tclStubsPtr->tcl_ConditionFinalize) /* 391 */
#endif
#ifndef Tcl_MutexFinalize
#define Tcl_MutexFinalize \
(tclStubsPtr->tcl_MutexFinalize) /* 392 */
#endif
#ifndef Tcl_CreateThread
#define Tcl_CreateThread \
(tclStubsPtr->tcl_CreateThread) /* 393 */
#endif
#endif /* defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS) */ #endif /* defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS) */
/* !END!: Do not edit above this line. */ /* !END!: Do not edit above this line. */
#endif /* _TCLDECLS */ #endif /* _TCLDECLS */
 End of changes. 4 change blocks. 
1 lines changed or deleted 28 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/