summaryrefslogtreecommitdiffstats
path: root/generic/tclPlatDecls.h
diff options
context:
space:
mode:
authorstanton <stanton>1999-03-03 00:38:35 (GMT)
committerstanton <stanton>1999-03-03 00:38:35 (GMT)
commit531a666d600bbb937c43e9ec3a90e230548710a4 (patch)
tree76e694a9fbdd6ed515de6186a840d8cd40cee06e /generic/tclPlatDecls.h
parent8f97fc1f429811f069993f10d6adaff739b6c805 (diff)
downloadtcl-531a666d600bbb937c43e9ec3a90e230548710a4.zip
tcl-531a666d600bbb937c43e9ec3a90e230548710a4.tar.gz
tcl-531a666d600bbb937c43e9ec3a90e230548710a4.tar.bz2
* unix/Makefile.in:
* unix/configure.in: * unix/ldAix: Enhanced AIX shared library support. * win/tclWinSock.c: Removed a bunch of extraneous PASCAL FAR attributes from internal functions. * win/tclWinReg.c: Changed registry package to use stubs mechanism so it no longer depends on the specific version of Tcl. * doc/AddErrInfo.3: * doc/Eval.3: * doc/PkgRequire.3: * doc/SetResult.3: * doc/StringObj.3: * generic/tcl.h: * generic/tclBasic.c: * generic/tclPanic.c: * generic/tclStringObj.c: * generic/tclUtil.c: * unix/mkLinks: Added va_list versions of all VARARGS functions so they can be invoked from the stub functions. * doc/package.n: * doc/PkgRequire.3: * generic/tclPkg.c: Added Tcl_PkgProvideEx, Tcl_RequireEx, Tcl_PresentEx, and Tcl_PkgPresent. Added "package present" command. * generic/tclFileName.c: * mac/tclMacFile.c: * mac/tclMacShLib.exp: * unix/tclUnixFile.c: * win/tclWinFile.c: Changed so TclGetUserHome is defined on all platforms, even though it is currently a noop on mac and windows, and renamed it to TclpGetUserHome. * generic/tclCkalloc.c: Added stub versions of memory checking functions when compiling without TCL_MEM_DEBUG. * doc/ByteArrObj.3: * generic/tcl.h: * generic/tclBinary.c: * generic/tclObj.c: Ported the 8.1 ByteArray type back to 8.0. * generic/tcl.decls: * generic/tcl.h: * generic/tclBasic.c: * generic/tclDecls.h: * generic/tclInt.decls: * generic/tclInt.h: * generic/tclIntDecls.h: * generic/tclIntPlatDecls.h: * generic/tclIntPlatStubs.c: * generic/tclIntStubs.c: * generic/tclPlatDecls.h: * generic/tclPlatStubs.c: * generic/tclStubInit.c: * generic/tclStubLib.c: * generic/tclStubs.c: * tools/genStubs.tcl: * unix/configure.in: * unix/Makefile.in: * unix/tclConfig.sh.in: * win/makefile.vc: * win/tclWinPort.h: Added Tcl stubs implementation. There are now two new macros USE_TCL_STUBS and USE_TCL_STUB_PROCS that enable use of stubs and disable stub macros respectively. All of the public and private function declarations from tcl.h and tclInt.h have moved into the *.decls files and the *Stubs.c and *Decls.h files are generated using the genStubs.tcl script. * generic/tclPanic.c: * generic/panic.c: renamed panic to Tcl_Panic, added macro for backwards compatibility, renamed file to tclPanic.c
Diffstat (limited to 'generic/tclPlatDecls.h')
-rw-r--r--generic/tclPlatDecls.h56
1 files changed, 56 insertions, 0 deletions
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. */