1# tcl.decls -- 2# 3# This file contains the declarations for all supported public 4# functions that are exported by the Tcl library via the stubs table. 5# This file is used to generate the tclDecls.h, tclPlatDecls.h, 6# tclStub.c, and tclPlatStub.c files. 7# 8# 9# Copyright (c) 1998-1999 by Scriptics Corporation. 10# Copyright (c) 2001, 2002 by Kevin B. Kenny. All rights reserved. 11# See the file "license.terms" for information on usage and redistribution 12# of this file, and for a DISCLAIMER OF ALL WARRANTIES. 13# 14# RCS: @(#) $Id: tcl.decls,v 1.94.2.4 2006/09/22 01:26:22 andreas_kupries Exp $ 15 16library tcl 17 18# Define the tcl interface with several sub interfaces: 19# tclPlat - platform specific public 20# tclInt - generic private 21# tclPlatInt - platform specific private 22 23interface tcl 24hooks {tclPlat tclInt tclIntPlat} 25 26# Declare each of the functions in the public Tcl interface. Note that 27# the an index should never be reused for a different function in order 28# to preserve backwards compatibility. 29 30declare 0 generic { 31 int Tcl_PkgProvideEx(Tcl_Interp* interp, CONST char* name, 32 CONST char* version, ClientData clientData) 33} 34declare 1 generic { 35 CONST84_RETURN char * Tcl_PkgRequireEx(Tcl_Interp *interp, CONST char *name, 36 CONST char *version, int exact, ClientData *clientDataPtr) 37} 38declare 2 generic { 39 void Tcl_Panic(CONST char *format, ...) 40} 41declare 3 generic { 42 char * Tcl_Alloc(unsigned int size) 43} 44declare 4 generic { 45 void Tcl_Free(char *ptr) 46} 47declare 5 generic { 48 char * Tcl_Realloc(char *ptr, unsigned int size) 49} 50declare 6 generic { 51 char * Tcl_DbCkalloc(unsigned int size, CONST char *file, int line) 52} 53declare 7 generic { 54 int Tcl_DbCkfree(char *ptr, CONST char *file, int line) 55} 56declare 8 generic { 57 char * Tcl_DbCkrealloc(char *ptr, unsigned int size, 58 CONST char *file, int line) 59} 60 61# Tcl_CreateFileHandler and Tcl_DeleteFileHandler are only available on unix, 62# but they are part of the old generic interface, so we include them here for 63# compatibility reasons. 64 65declare 9 unix { 66 void Tcl_CreateFileHandler(int fd, int mask, Tcl_FileProc *proc, 67 ClientData clientData) 68} 69declare 10 unix { 70 void Tcl_DeleteFileHandler(int fd) 71} 72 73declare 11 generic { 74 void Tcl_SetTimer(Tcl_Time *timePtr) 75} 76declare 12 generic { 77 void Tcl_Sleep(int ms) 78} 79declare 13 generic { 80 int Tcl_WaitForEvent(Tcl_Time *timePtr) 81} 82declare 14 generic { 83 int Tcl_AppendAllObjTypes(Tcl_Interp *interp, Tcl_Obj *objPtr) 84} 85declare 15 generic { 86 void Tcl_AppendStringsToObj(Tcl_Obj *objPtr, ...) 87} 88declare 16 generic { 89 void Tcl_AppendToObj(Tcl_Obj* objPtr, CONST char* bytes, int length) 90} 91declare 17 generic { 92 Tcl_Obj * Tcl_ConcatObj(int objc, Tcl_Obj *CONST objv[]) 93} 94declare 18 generic { 95 int Tcl_ConvertToType(Tcl_Interp *interp, Tcl_Obj *objPtr, 96 Tcl_ObjType *typePtr) 97} 98declare 19 generic { 99 void Tcl_DbDecrRefCount(Tcl_Obj *objPtr, CONST char *file, int line) 100} 101declare 20 generic { 102 void Tcl_DbIncrRefCount(Tcl_Obj *objPtr, CONST char *file, int line) 103} 104declare 21 generic { 105 int Tcl_DbIsShared(Tcl_Obj *objPtr, CONST char *file, int line) 106} 107declare 22 generic { 108 Tcl_Obj * Tcl_DbNewBooleanObj(int boolValue, CONST char *file, int line) 109} 110declare 23 generic { 111 Tcl_Obj * Tcl_DbNewByteArrayObj(CONST unsigned char *bytes, int length, 112 CONST char *file, int line) 113} 114declare 24 generic { 115 Tcl_Obj * Tcl_DbNewDoubleObj(double doubleValue, 116 CONST char *file, int line) 117} 118declare 25 generic { 119 Tcl_Obj * Tcl_DbNewListObj(int objc, Tcl_Obj *CONST *objv, 120 CONST char *file, int line) 121} 122declare 26 generic { 123 Tcl_Obj * Tcl_DbNewLongObj(long longValue, CONST char *file, int line) 124} 125declare 27 generic { 126 Tcl_Obj * Tcl_DbNewObj(CONST char *file, int line) 127} 128declare 28 generic { 129 Tcl_Obj * Tcl_DbNewStringObj(CONST char *bytes, int length, 130 CONST char *file, int line) 131} 132declare 29 generic { 133 Tcl_Obj * Tcl_DuplicateObj(Tcl_Obj *objPtr) 134} 135declare 30 generic { 136 void TclFreeObj(Tcl_Obj *objPtr) 137} 138declare 31 generic { 139 int Tcl_GetBoolean(Tcl_Interp *interp, CONST char *str, int *boolPtr) 140} 141declare 32 generic { 142 int Tcl_GetBooleanFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr, 143 int *boolPtr) 144} 145declare 33 generic { 146 unsigned char * Tcl_GetByteArrayFromObj(Tcl_Obj *objPtr, int *lengthPtr) 147} 148declare 34 generic { 149 int Tcl_GetDouble(Tcl_Interp *interp, CONST char *str, double *doublePtr) 150} 151declare 35 generic { 152 int Tcl_GetDoubleFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr, 153 double *doublePtr) 154} 155declare 36 generic { 156 int Tcl_GetIndexFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr, 157 CONST84 char **tablePtr, CONST char *msg, int flags, int *indexPtr) 158} 159declare 37 generic { 160 int Tcl_GetInt(Tcl_Interp *interp, CONST char *str, int *intPtr) 161} 162declare 38 generic { 163 int Tcl_GetIntFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr, int *intPtr) 164} 165declare 39 generic { 166 int Tcl_GetLongFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr, long *longPtr) 167} 168declare 40 generic { 169 Tcl_ObjType * Tcl_GetObjType(CONST char *typeName) 170} 171declare 41 generic { 172 char * Tcl_GetStringFromObj(Tcl_Obj *objPtr, int *lengthPtr) 173} 174declare 42 generic { 175 void Tcl_InvalidateStringRep(Tcl_Obj *objPtr) 176} 177declare 43 generic { 178 int Tcl_ListObjAppendList(Tcl_Interp *interp, Tcl_Obj *listPtr, 179 Tcl_Obj *elemListPtr) 180} 181declare 44 generic { 182 int Tcl_ListObjAppendElement(Tcl_Interp *interp, Tcl_Obj *listPtr, 183 Tcl_Obj *objPtr) 184} 185declare 45 generic { 186 int Tcl_ListObjGetElements(Tcl_Interp *interp, Tcl_Obj *listPtr, 187 int *objcPtr, Tcl_Obj ***objvPtr) 188} 189declare 46 generic { 190 int Tcl_ListObjIndex(Tcl_Interp *interp, Tcl_Obj *listPtr, int index, 191 Tcl_Obj **objPtrPtr) 192} 193declare 47 generic { 194 int Tcl_ListObjLength(Tcl_Interp *interp, Tcl_Obj *listPtr, 195 int *lengthPtr) 196} 197declare 48 generic { 198 int Tcl_ListObjReplace(Tcl_Interp *interp, Tcl_Obj *listPtr, int first, 199 int count, int objc, Tcl_Obj *CONST objv[]) 200} 201declare 49 generic { 202 Tcl_Obj *Tcl_NewBooleanObj(int boolValue) 203} 204declare 50 generic { 205 Tcl_Obj *Tcl_NewByteArrayObj(CONST unsigned char* bytes, int length) 206} 207declare 51 generic { 208 Tcl_Obj * Tcl_NewDoubleObj(double doubleValue) 209} 210declare 52 generic { 211 Tcl_Obj * Tcl_NewIntObj(int intValue) 212} 213declare 53 generic { 214 Tcl_Obj * Tcl_NewListObj(int objc, Tcl_Obj *CONST objv[]) 215} 216declare 54 generic { 217 Tcl_Obj * Tcl_NewLongObj(long longValue) 218} 219declare 55 generic { 220 Tcl_Obj * Tcl_NewObj(void) 221} 222declare 56 generic { 223 Tcl_Obj *Tcl_NewStringObj(CONST char *bytes, int length) 224} 225declare 57 generic { 226 void Tcl_SetBooleanObj(Tcl_Obj *objPtr, int boolValue) 227} 228declare 58 generic { 229 unsigned char * Tcl_SetByteArrayLength(Tcl_Obj *objPtr, int length) 230} 231declare 59 generic { 232 void Tcl_SetByteArrayObj(Tcl_Obj *objPtr, CONST unsigned char *bytes, 233 int length) 234} 235declare 60 generic { 236 void Tcl_SetDoubleObj(Tcl_Obj *objPtr, double doubleValue) 237} 238declare 61 generic { 239 void Tcl_SetIntObj(Tcl_Obj *objPtr, int intValue) 240} 241declare 62 generic { 242 void Tcl_SetListObj(Tcl_Obj *objPtr, int objc, Tcl_Obj *CONST objv[]) 243} 244declare 63 generic { 245 void Tcl_SetLongObj(Tcl_Obj *objPtr, long longValue) 246} 247declare 64 generic { 248 void Tcl_SetObjLength(Tcl_Obj *objPtr, int length) 249} 250declare 65 generic { 251 void Tcl_SetStringObj(Tcl_Obj* objPtr, CONST char* bytes, int length) 252} 253declare 66 generic { 254 void Tcl_AddErrorInfo(Tcl_Interp *interp, CONST char *message) 255} 256declare 67 generic { 257 void Tcl_AddObjErrorInfo(Tcl_Interp *interp, CONST char *message, 258 int length) 259} 260declare 68 generic { 261 void Tcl_AllowExceptions(Tcl_Interp *interp) 262} 263declare 69 generic { 264 void Tcl_AppendElement(Tcl_Interp *interp, CONST char *string) 265} 266declare 70 generic { 267 void Tcl_AppendResult(Tcl_Interp *interp, ...) 268} 269declare 71 generic { 270 Tcl_AsyncHandler Tcl_AsyncCreate(Tcl_AsyncProc *proc, 271 ClientData clientData) 272} 273declare 72 generic { 274 void Tcl_AsyncDelete(Tcl_AsyncHandler async) 275} 276declare 73 generic { 277 int Tcl_AsyncInvoke(Tcl_Interp *interp, int code) 278} 279declare 74 generic { 280 void Tcl_AsyncMark(Tcl_AsyncHandler async) 281} 282declare 75 generic { 283 int Tcl_AsyncReady(void) 284} 285declare 76 generic { 286 void Tcl_BackgroundError(Tcl_Interp *interp) 287} 288declare 77 generic { 289 char Tcl_Backslash(CONST char *src, int *readPtr) 290} 291declare 78 generic { 292 int Tcl_BadChannelOption(Tcl_Interp *interp, CONST char *optionName, 293 CONST char *optionList) 294} 295declare 79 generic { 296 void Tcl_CallWhenDeleted(Tcl_Interp *interp, Tcl_InterpDeleteProc *proc, 297 ClientData clientData) 298} 299declare 80 generic { 300 void Tcl_CancelIdleCall(Tcl_IdleProc *idleProc, ClientData clientData) 301} 302declare 81 generic { 303 int Tcl_Close(Tcl_Interp *interp, Tcl_Channel chan) 304} 305declare 82 generic { 306 int Tcl_CommandComplete(CONST char *cmd) 307} 308declare 83 generic { 309 char * Tcl_Concat(int argc, CONST84 char * CONST *argv) 310} 311declare 84 generic { 312 int Tcl_ConvertElement(CONST char *src, char *dst, int flags) 313} 314declare 85 generic { 315 int Tcl_ConvertCountedElement(CONST char *src, int length, char *dst, 316 int flags) 317} 318declare 86 generic { 319 int Tcl_CreateAlias(Tcl_Interp *slave, CONST char *slaveCmd, 320 Tcl_Interp *target, CONST char *targetCmd, int argc, 321 CONST84 char * CONST *argv) 322} 323declare 87 generic { 324 int Tcl_CreateAliasObj(Tcl_Interp *slave, CONST char *slaveCmd, 325 Tcl_Interp *target, CONST char *targetCmd, int objc, 326 Tcl_Obj *CONST objv[]) 327} 328declare 88 generic { 329 Tcl_Channel Tcl_CreateChannel(Tcl_ChannelType *typePtr, 330 CONST char *chanName, ClientData instanceData, int mask) 331} 332declare 89 generic { 333 void Tcl_CreateChannelHandler(Tcl_Channel chan, int mask, 334 Tcl_ChannelProc *proc, ClientData clientData) 335} 336declare 90 generic { 337 void Tcl_CreateCloseHandler(Tcl_Channel chan, Tcl_CloseProc *proc, 338 ClientData clientData) 339} 340declare 91 generic { 341 Tcl_Command Tcl_CreateCommand(Tcl_Interp *interp, CONST char *cmdName, 342 Tcl_CmdProc *proc, ClientData clientData, 343 Tcl_CmdDeleteProc *deleteProc) 344} 345declare 92 generic { 346 void Tcl_CreateEventSource(Tcl_EventSetupProc *setupProc, 347 Tcl_EventCheckProc *checkProc, ClientData clientData) 348} 349declare 93 generic { 350 void Tcl_CreateExitHandler(Tcl_ExitProc *proc, ClientData clientData) 351} 352declare 94 generic { 353 Tcl_Interp * Tcl_CreateInterp(void) 354} 355declare 95 generic { 356 void Tcl_CreateMathFunc(Tcl_Interp *interp, CONST char *name, 357 int numArgs, Tcl_ValueType *argTypes, 358 Tcl_MathProc *proc, ClientData clientData) 359} 360declare 96 generic { 361 Tcl_Command Tcl_CreateObjCommand(Tcl_Interp *interp, 362 CONST char *cmdName, 363 Tcl_ObjCmdProc *proc, ClientData clientData, 364 Tcl_CmdDeleteProc *deleteProc) 365} 366declare 97 generic { 367 Tcl_Interp * Tcl_CreateSlave(Tcl_Interp *interp, CONST char *slaveName, 368 int isSafe) 369} 370declare 98 generic { 371 Tcl_TimerToken Tcl_CreateTimerHandler(int milliseconds, 372 Tcl_TimerProc *proc, ClientData clientData) 373} 374declare 99 generic { 375 Tcl_Trace Tcl_CreateTrace(Tcl_Interp *interp, int level, 376 Tcl_CmdTraceProc *proc, ClientData clientData) 377} 378declare 100 generic { 379 void Tcl_DeleteAssocData(Tcl_Interp *interp, CONST char *name) 380} 381declare 101 generic { 382 void Tcl_DeleteChannelHandler(Tcl_Channel chan, Tcl_ChannelProc *proc, 383 ClientData clientData) 384} 385declare 102 generic { 386 void Tcl_DeleteCloseHandler(Tcl_Channel chan, Tcl_CloseProc *proc, 387 ClientData clientData) 388} 389declare 103 generic { 390 int Tcl_DeleteCommand(Tcl_Interp *interp, CONST char *cmdName) 391} 392declare 104 generic { 393 int Tcl_DeleteCommandFromToken(Tcl_Interp *interp, Tcl_Command command) 394} 395declare 105 generic { 396 void Tcl_DeleteEvents(Tcl_EventDeleteProc *proc, ClientData clientData) 397} 398declare 106 generic { 399 void Tcl_DeleteEventSource(Tcl_EventSetupProc *setupProc, 400 Tcl_EventCheckProc *checkProc, ClientData clientData) 401} 402declare 107 generic { 403 void Tcl_DeleteExitHandler(Tcl_ExitProc *proc, ClientData clientData) 404} 405declare 108 generic { 406 void Tcl_DeleteHashEntry(Tcl_HashEntry *entryPtr) 407} 408declare 109 generic { 409 void Tcl_DeleteHashTable(Tcl_HashTable *tablePtr) 410} 411declare 110 generic { 412 void Tcl_DeleteInterp(Tcl_Interp *interp) 413} 414declare 111 {unix win} { 415 void Tcl_DetachPids(int numPids, Tcl_Pid *pidPtr) 416} 417declare 112 generic { 418 void Tcl_DeleteTimerHandler(Tcl_TimerToken token) 419} 420declare 113 generic { 421 void Tcl_DeleteTrace(Tcl_Interp *interp, Tcl_Trace trace) 422} 423declare 114 generic { 424 void Tcl_DontCallWhenDeleted(Tcl_Interp *interp, 425 Tcl_InterpDeleteProc *proc, ClientData clientData) 426} 427declare 115 generic { 428 int Tcl_DoOneEvent(int flags) 429} 430declare 116 generic { 431 void Tcl_DoWhenIdle(Tcl_IdleProc *proc, ClientData clientData) 432} 433declare 117 generic { 434 char * Tcl_DStringAppend(Tcl_DString *dsPtr, CONST char *str, int length) 435} 436declare 118 generic { 437 char * Tcl_DStringAppendElement(Tcl_DString *dsPtr, CONST char *string) 438} 439declare 119 generic { 440 void Tcl_DStringEndSublist(Tcl_DString *dsPtr) 441} 442declare 120 generic { 443 void Tcl_DStringFree(Tcl_DString *dsPtr) 444} 445declare 121 generic { 446 void Tcl_DStringGetResult(Tcl_Interp *interp, Tcl_DString *dsPtr) 447} 448declare 122 generic { 449 void Tcl_DStringInit(Tcl_DString *dsPtr) 450} 451declare 123 generic { 452 void Tcl_DStringResult(Tcl_Interp *interp, Tcl_DString *dsPtr) 453} 454declare 124 generic { 455 void Tcl_DStringSetLength(Tcl_DString *dsPtr, int length) 456} 457declare 125 generic { 458 void Tcl_DStringStartSublist(Tcl_DString *dsPtr) 459} 460declare 126 generic { 461 int Tcl_Eof(Tcl_Channel chan) 462} 463declare 127 generic { 464 CONST84_RETURN char * Tcl_ErrnoId(void) 465} 466declare 128 generic { 467 CONST84_RETURN char * Tcl_ErrnoMsg(int err) 468} 469declare 129 generic { 470 int Tcl_Eval(Tcl_Interp *interp, CONST char *string) 471} 472# This is obsolete, use Tcl_FSEvalFile 473declare 130 generic { 474 int Tcl_EvalFile(Tcl_Interp *interp, CONST char *fileName) 475} 476declare 131 generic { 477 int Tcl_EvalObj(Tcl_Interp *interp, Tcl_Obj *objPtr) 478} 479declare 132 generic { 480 void Tcl_EventuallyFree(ClientData clientData, Tcl_FreeProc *freeProc) 481} 482declare 133 generic { 483 void Tcl_Exit(int status) 484} 485declare 134 generic { 486 int Tcl_ExposeCommand(Tcl_Interp *interp, CONST char *hiddenCmdToken, 487 CONST char *cmdName) 488} 489declare 135 generic { 490 int Tcl_ExprBoolean(Tcl_Interp *interp, CONST char *str, int *ptr) 491} 492declare 136 generic { 493 int Tcl_ExprBooleanObj(Tcl_Interp *interp, Tcl_Obj *objPtr, int *ptr) 494} 495declare 137 generic { 496 int Tcl_ExprDouble(Tcl_Interp *interp, CONST char *str, double *ptr) 497} 498declare 138 generic { 499 int Tcl_ExprDoubleObj(Tcl_Interp *interp, Tcl_Obj *objPtr, double *ptr) 500} 501declare 139 generic { 502 int Tcl_ExprLong(Tcl_Interp *interp, CONST char *str, long *ptr) 503} 504declare 140 generic { 505 int Tcl_ExprLongObj(Tcl_Interp *interp, Tcl_Obj *objPtr, long *ptr) 506} 507declare 141 generic { 508 int Tcl_ExprObj(Tcl_Interp *interp, Tcl_Obj *objPtr, 509 Tcl_Obj **resultPtrPtr) 510} 511declare 142 generic { 512 int Tcl_ExprString(Tcl_Interp *interp, CONST char *string) 513} 514declare 143 generic { 515 void Tcl_Finalize(void) 516} 517declare 144 generic { 518 void Tcl_FindExecutable(CONST char *argv0) 519} 520declare 145 generic { 521 Tcl_HashEntry * Tcl_FirstHashEntry(Tcl_HashTable *tablePtr, 522 Tcl_HashSearch *searchPtr) 523} 524declare 146 generic { 525 int Tcl_Flush(Tcl_Channel chan) 526} 527declare 147 generic { 528 void Tcl_FreeResult(Tcl_Interp *interp) 529} 530declare 148 generic { 531 int Tcl_GetAlias(Tcl_Interp *interp, CONST char *slaveCmd, 532 Tcl_Interp **targetInterpPtr, CONST84 char **targetCmdPtr, 533 int *argcPtr, CONST84 char ***argvPtr) 534} 535declare 149 generic { 536 int Tcl_GetAliasObj(Tcl_Interp *interp, CONST char *slaveCmd, 537 Tcl_Interp **targetInterpPtr, CONST84 char **targetCmdPtr, 538 int *objcPtr, Tcl_Obj ***objv) 539} 540declare 150 generic { 541 ClientData Tcl_GetAssocData(Tcl_Interp *interp, CONST char *name, 542 Tcl_InterpDeleteProc **procPtr) 543} 544declare 151 generic { 545 Tcl_Channel Tcl_GetChannel(Tcl_Interp *interp, CONST char *chanName, 546 int *modePtr) 547} 548declare 152 generic { 549 int Tcl_GetChannelBufferSize(Tcl_Channel chan) 550} 551declare 153 generic { 552 int Tcl_GetChannelHandle(Tcl_Channel chan, int direction, 553 ClientData *handlePtr) 554} 555declare 154 generic { 556 ClientData Tcl_GetChannelInstanceData(Tcl_Channel chan) 557} 558declare 155 generic { 559 int Tcl_GetChannelMode(Tcl_Channel chan) 560} 561declare 156 generic { 562 CONST84_RETURN char * Tcl_GetChannelName(Tcl_Channel chan) 563} 564declare 157 generic { 565 int Tcl_GetChannelOption(Tcl_Interp *interp, Tcl_Channel chan, 566 CONST char *optionName, Tcl_DString *dsPtr) 567} 568declare 158 generic { 569 Tcl_ChannelType * Tcl_GetChannelType(Tcl_Channel chan) 570} 571declare 159 generic { 572 int Tcl_GetCommandInfo(Tcl_Interp *interp, CONST char *cmdName, 573 Tcl_CmdInfo *infoPtr) 574} 575declare 160 generic { 576 CONST84_RETURN char * Tcl_GetCommandName(Tcl_Interp *interp, 577 Tcl_Command command) 578} 579declare 161 generic { 580 int Tcl_GetErrno(void) 581} 582declare 162 generic { 583 CONST84_RETURN char * Tcl_GetHostName(void) 584} 585declare 163 generic { 586 int Tcl_GetInterpPath(Tcl_Interp *askInterp, Tcl_Interp *slaveInterp) 587} 588declare 164 generic { 589 Tcl_Interp * Tcl_GetMaster(Tcl_Interp *interp) 590} 591declare 165 generic { 592 CONST char * Tcl_GetNameOfExecutable(void) 593} 594declare 166 generic { 595 Tcl_Obj * Tcl_GetObjResult(Tcl_Interp *interp) 596} 597 598# Tcl_GetOpenFile is only available on unix, but it is a part of the old 599# generic interface, so we inlcude it here for compatibility reasons. 600 601declare 167 unix { 602 int Tcl_GetOpenFile(Tcl_Interp *interp, CONST char *str, int forWriting, 603 int checkUsage, ClientData *filePtr) 604} 605# Obsolete. Should now use Tcl_FSGetPathType which is objectified 606# and therefore usually faster. 607declare 168 generic { 608 Tcl_PathType Tcl_GetPathType(CONST char *path) 609} 610declare 169 generic { 611 int Tcl_Gets(Tcl_Channel chan, Tcl_DString *dsPtr) 612} 613declare 170 generic { 614 int Tcl_GetsObj(Tcl_Channel chan, Tcl_Obj *objPtr) 615} 616declare 171 generic { 617 int Tcl_GetServiceMode(void) 618} 619declare 172 generic { 620 Tcl_Interp * Tcl_GetSlave(Tcl_Interp *interp, CONST char *slaveName) 621} 622declare 173 generic { 623 Tcl_Channel Tcl_GetStdChannel(int type) 624} 625declare 174 generic { 626 CONST84_RETURN char * Tcl_GetStringResult(Tcl_Interp *interp) 627} 628declare 175 generic { 629 CONST84_RETURN char * Tcl_GetVar(Tcl_Interp *interp, CONST char *varName, 630 int flags) 631} 632declare 176 generic { 633 CONST84_RETURN char * Tcl_GetVar2(Tcl_Interp *interp, CONST char *part1, 634 CONST char *part2, int flags) 635} 636declare 177 generic { 637 int Tcl_GlobalEval(Tcl_Interp *interp, CONST char *command) 638} 639declare 178 generic { 640 int Tcl_GlobalEvalObj(Tcl_Interp *interp, Tcl_Obj *objPtr) 641} 642declare 179 generic { 643 int Tcl_HideCommand(Tcl_Interp *interp, CONST char *cmdName, 644 CONST char *hiddenCmdToken) 645} 646declare 180 generic { 647 int Tcl_Init(Tcl_Interp *interp) 648} 649declare 181 generic { 650 void Tcl_InitHashTable(Tcl_HashTable *tablePtr, int keyType) 651} 652declare 182 generic { 653 int Tcl_InputBlocked(Tcl_Channel chan) 654} 655declare 183 generic { 656 int Tcl_InputBuffered(Tcl_Channel chan) 657} 658declare 184 generic { 659 int Tcl_InterpDeleted(Tcl_Interp *interp) 660} 661declare 185 generic { 662 int Tcl_IsSafe(Tcl_Interp *interp) 663} 664# Obsolete, use Tcl_FSJoinPath 665declare 186 generic { 666 char * Tcl_JoinPath(int argc, CONST84 char * CONST *argv, 667 Tcl_DString *resultPtr) 668} 669declare 187 generic { 670 int Tcl_LinkVar(Tcl_Interp *interp, CONST char *varName, char *addr, 671 int type) 672} 673 674# This slot is reserved for use by the plus patch: 675# declare 188 generic { 676# Tcl_MainLoop 677# } 678 679declare 189 generic { 680 Tcl_Channel Tcl_MakeFileChannel(ClientData handle, int mode) 681} 682declare 190 generic { 683 int Tcl_MakeSafe(Tcl_Interp *interp) 684} 685declare 191 generic { 686 Tcl_Channel Tcl_MakeTcpClientChannel(ClientData tcpSocket) 687} 688declare 192 generic { 689 char * Tcl_Merge(int argc, CONST84 char * CONST *argv) 690} 691declare 193 generic { 692 Tcl_HashEntry * Tcl_NextHashEntry(Tcl_HashSearch *searchPtr) 693} 694declare 194 generic { 695 void Tcl_NotifyChannel(Tcl_Channel channel, int mask) 696} 697declare 195 generic { 698 Tcl_Obj * Tcl_ObjGetVar2(Tcl_Interp *interp, Tcl_Obj *part1Ptr, 699 Tcl_Obj *part2Ptr, int flags) 700} 701declare 196 generic { 702 Tcl_Obj * Tcl_ObjSetVar2(Tcl_Interp *interp, Tcl_Obj *part1Ptr, 703 Tcl_Obj *part2Ptr, Tcl_Obj *newValuePtr, int flags) 704} 705declare 197 {unix win} { 706 Tcl_Channel Tcl_OpenCommandChannel(Tcl_Interp *interp, int argc, 707 CONST84 char **argv, int flags) 708} 709# This is obsolete, use Tcl_FSOpenFileChannel 710declare 198 generic { 711 Tcl_Channel Tcl_OpenFileChannel(Tcl_Interp *interp, CONST char *fileName, 712 CONST char *modeString, int permissions) 713} 714declare 199 generic { 715 Tcl_Channel Tcl_OpenTcpClient(Tcl_Interp *interp, int port, 716 CONST char *address, CONST char *myaddr, int myport, int async) 717} 718declare 200 generic { 719 Tcl_Channel Tcl_OpenTcpServer(Tcl_Interp *interp, int port, 720 CONST char *host, Tcl_TcpAcceptProc *acceptProc, 721 ClientData callbackData) 722} 723declare 201 generic { 724 void Tcl_Preserve(ClientData data) 725} 726declare 202 generic { 727 void Tcl_PrintDouble(Tcl_Interp *interp, double value, char *dst) 728} 729declare 203 generic { 730 int Tcl_PutEnv(CONST char *string) 731} 732declare 204 generic { 733 CONST84_RETURN char * Tcl_PosixError(Tcl_Interp *interp) 734} 735declare 205 generic { 736 void Tcl_QueueEvent(Tcl_Event *evPtr, Tcl_QueuePosition position) 737} 738declare 206 generic { 739 int Tcl_Read(Tcl_Channel chan, char *bufPtr, int toRead) 740} 741declare 207 {unix win} { 742 void Tcl_ReapDetachedProcs(void) 743} 744declare 208 generic { 745 int Tcl_RecordAndEval(Tcl_Interp *interp, CONST char *cmd, int flags) 746} 747declare 209 generic { 748 int Tcl_RecordAndEvalObj(Tcl_Interp *interp, Tcl_Obj *cmdPtr, int flags) 749} 750declare 210 generic { 751 void Tcl_RegisterChannel(Tcl_Interp *interp, Tcl_Channel chan) 752} 753declare 211 generic { 754 void Tcl_RegisterObjType(Tcl_ObjType *typePtr) 755} 756declare 212 generic { 757 Tcl_RegExp Tcl_RegExpCompile(Tcl_Interp *interp, CONST char *string) 758} 759declare 213 generic { 760 int Tcl_RegExpExec(Tcl_Interp *interp, Tcl_RegExp regexp, 761 CONST char *str, CONST char *start) 762} 763declare 214 generic { 764 int Tcl_RegExpMatch(Tcl_Interp *interp, CONST char *str, 765 CONST char *pattern) 766} 767declare 215 generic { 768 void Tcl_RegExpRange(Tcl_RegExp regexp, int index, 769 CONST84 char **startPtr, CONST84 char **endPtr) 770} 771declare 216 generic { 772 void Tcl_Release(ClientData clientData) 773} 774declare 217 generic { 775 void Tcl_ResetResult(Tcl_Interp *interp) 776} 777declare 218 generic { 778 int Tcl_ScanElement(CONST char *str, int *flagPtr) 779} 780declare 219 generic { 781 int Tcl_ScanCountedElement(CONST char *str, int length, int *flagPtr) 782} 783# Obsolete 784declare 220 generic { 785 int Tcl_SeekOld(Tcl_Channel chan, int offset, int mode) 786} 787declare 221 generic { 788 int Tcl_ServiceAll(void) 789} 790declare 222 generic { 791 int Tcl_ServiceEvent(int flags) 792} 793declare 223 generic { 794 void Tcl_SetAssocData(Tcl_Interp *interp, CONST char *name, 795 Tcl_InterpDeleteProc *proc, ClientData clientData) 796} 797declare 224 generic { 798 void Tcl_SetChannelBufferSize(Tcl_Channel chan, int sz) 799} 800declare 225 generic { 801 int Tcl_SetChannelOption(Tcl_Interp *interp, Tcl_Channel chan, 802 CONST char *optionName, CONST char *newValue) 803} 804declare 226 generic { 805 int Tcl_SetCommandInfo(Tcl_Interp *interp, CONST char *cmdName, 806 CONST Tcl_CmdInfo *infoPtr) 807} 808declare 227 generic { 809 void Tcl_SetErrno(int err) 810} 811declare 228 generic { 812 void Tcl_SetErrorCode(Tcl_Interp *interp, ...) 813} 814declare 229 generic { 815 void Tcl_SetMaxBlockTime(Tcl_Time *timePtr) 816} 817declare 230 generic { 818 void Tcl_SetPanicProc(Tcl_PanicProc *panicProc) 819} 820declare 231 generic { 821 int Tcl_SetRecursionLimit(Tcl_Interp *interp, int depth) 822} 823declare 232 generic { 824 void Tcl_SetResult(Tcl_Interp *interp, char *str, 825 Tcl_FreeProc *freeProc) 826} 827declare 233 generic { 828 int Tcl_SetServiceMode(int mode) 829} 830declare 234 generic { 831 void Tcl_SetObjErrorCode(Tcl_Interp *interp, Tcl_Obj *errorObjPtr) 832} 833declare 235 generic { 834 void Tcl_SetObjResult(Tcl_Interp *interp, Tcl_Obj *resultObjPtr) 835} 836declare 236 generic { 837 void Tcl_SetStdChannel(Tcl_Channel channel, int type) 838} 839declare 237 generic { 840 CONST84_RETURN char * Tcl_SetVar(Tcl_Interp *interp, CONST char *varName, 841 CONST char *newValue, int flags) 842} 843declare 238 generic { 844 CONST84_RETURN char * Tcl_SetVar2(Tcl_Interp *interp, CONST char *part1, 845 CONST char *part2, CONST char *newValue, int flags) 846} 847declare 239 generic { 848 CONST84_RETURN char * Tcl_SignalId(int sig) 849} 850declare 240 generic { 851 CONST84_RETURN char * Tcl_SignalMsg(int sig) 852} 853declare 241 generic { 854 void Tcl_SourceRCFile(Tcl_Interp *interp) 855} 856declare 242 generic { 857 int Tcl_SplitList(Tcl_Interp *interp, CONST char *listStr, int *argcPtr, 858 CONST84 char ***argvPtr) 859} 860# Obsolete, use Tcl_FSSplitPath 861declare 243 generic { 862 void Tcl_SplitPath(CONST char *path, int *argcPtr, CONST84 char ***argvPtr) 863} 864declare 244 generic { 865 void Tcl_StaticPackage(Tcl_Interp *interp, CONST char *pkgName, 866 Tcl_PackageInitProc *initProc, Tcl_PackageInitProc *safeInitProc) 867} 868declare 245 generic { 869 int Tcl_StringMatch(CONST char *str, CONST char *pattern) 870} 871# Obsolete 872declare 246 generic { 873 int Tcl_TellOld(Tcl_Channel chan) 874} 875declare 247 generic { 876 int Tcl_TraceVar(Tcl_Interp *interp, CONST char *varName, int flags, 877 Tcl_VarTraceProc *proc, ClientData clientData) 878} 879declare 248 generic { 880 int Tcl_TraceVar2(Tcl_Interp *interp, CONST char *part1, CONST char *part2, 881 int flags, Tcl_VarTraceProc *proc, ClientData clientData) 882} 883declare 249 generic { 884 char * Tcl_TranslateFileName(Tcl_Interp *interp, CONST char *name, 885 Tcl_DString *bufferPtr) 886} 887declare 250 generic { 888 int Tcl_Ungets(Tcl_Channel chan, CONST char *str, int len, int atHead) 889} 890declare 251 generic { 891 void Tcl_UnlinkVar(Tcl_Interp *interp, CONST char *varName) 892} 893declare 252 generic { 894 int Tcl_UnregisterChannel(Tcl_Interp *interp, Tcl_Channel chan) 895} 896declare 253 generic { 897 int Tcl_UnsetVar(Tcl_Interp *interp, CONST char *varName, int flags) 898} 899declare 254 generic { 900 int Tcl_UnsetVar2(Tcl_Interp *interp, CONST char *part1, CONST char *part2, 901 int flags) 902} 903declare 255 generic { 904 void Tcl_UntraceVar(Tcl_Interp *interp, CONST char *varName, int flags, 905 Tcl_VarTraceProc *proc, ClientData clientData) 906} 907declare 256 generic { 908 void Tcl_UntraceVar2(Tcl_Interp *interp, CONST char *part1, 909 CONST char *part2, int flags, Tcl_VarTraceProc *proc, 910 ClientData clientData) 911} 912declare 257 generic { 913 void Tcl_UpdateLinkedVar(Tcl_Interp *interp, CONST char *varName) 914} 915declare 258 generic { 916 int Tcl_UpVar(Tcl_Interp *interp, CONST char *frameName, 917 CONST char *varName, CONST char *localName, int flags) 918} 919declare 259 generic { 920 int Tcl_UpVar2(Tcl_Interp *interp, CONST char *frameName, CONST char *part1, 921 CONST char *part2, CONST char *localName, int flags) 922} 923declare 260 generic { 924 int Tcl_VarEval(Tcl_Interp *interp, ...) 925} 926declare 261 generic { 927 ClientData Tcl_VarTraceInfo(Tcl_Interp *interp, CONST char *varName, 928 int flags, Tcl_VarTraceProc *procPtr, ClientData prevClientData) 929} 930declare 262 generic { 931 ClientData Tcl_VarTraceInfo2(Tcl_Interp *interp, CONST char *part1, 932 CONST char *part2, int flags, Tcl_VarTraceProc *procPtr, 933 ClientData prevClientData) 934} 935declare 263 generic { 936 int Tcl_Write(Tcl_Channel chan, CONST char *s, int slen) 937} 938declare 264 generic { 939 void Tcl_WrongNumArgs(Tcl_Interp *interp, int objc, 940 Tcl_Obj *CONST objv[], CONST char *message) 941} 942declare 265 generic { 943 int Tcl_DumpActiveMemory(CONST char *fileName) 944} 945declare 266 generic { 946 void Tcl_ValidateAllMemory(CONST char *file, int line) 947} 948 949declare 267 generic { 950 void Tcl_AppendResultVA(Tcl_Interp *interp, va_list argList) 951} 952declare 268 generic { 953 void Tcl_AppendStringsToObjVA(Tcl_Obj *objPtr, va_list argList) 954} 955declare 269 generic { 956 CONST84_RETURN char * Tcl_HashStats(Tcl_HashTable *tablePtr) 957} 958declare 270 generic { 959 CONST84_RETURN char * Tcl_ParseVar(Tcl_Interp *interp, CONST char *str, 960 CONST84 char **termPtr) 961} 962declare 271 generic { 963 CONST84_RETURN char * Tcl_PkgPresent(Tcl_Interp *interp, CONST char *name, 964 CONST char *version, int exact) 965} 966declare 272 generic { 967 CONST84_RETURN char * Tcl_PkgPresentEx(Tcl_Interp *interp, CONST char *name, 968 CONST char *version, int exact, ClientData *clientDataPtr) 969} 970declare 273 generic { 971 int Tcl_PkgProvide(Tcl_Interp *interp, CONST char *name, 972 CONST char *version) 973} 974 975# TIP #268: The internally used new Require function is in slot 976# 573. Assuming TCL_TIP268 was activated. 977 978declare 274 generic { 979 CONST84_RETURN char * Tcl_PkgRequire(Tcl_Interp *interp, CONST char *name, 980 CONST char *version, int exact) 981} 982declare 275 generic { 983 void Tcl_SetErrorCodeVA(Tcl_Interp *interp, va_list argList) 984} 985declare 276 generic { 986 int Tcl_VarEvalVA(Tcl_Interp *interp, va_list argList) 987} 988declare 277 generic { 989 Tcl_Pid Tcl_WaitPid(Tcl_Pid pid, int *statPtr, int options) 990} 991declare 278 generic { 992 void Tcl_PanicVA(CONST char *format, va_list argList) 993} 994declare 279 generic { 995 void Tcl_GetVersion(int *major, int *minor, int *patchLevel, int *type) 996} 997declare 280 generic { 998 void Tcl_InitMemory(Tcl_Interp *interp) 999} 1000 1001# Andreas Kupries <a.kupries@westend.com>, 03/21/1999 1002# "Trf-Patch for filtering channels" 1003# 1004# C-Level API for (un)stacking of channels. This allows the introduction 1005# of filtering channels with relatively little changes to the core. 1006# This patch was created in cooperation with Jan Nijtmans j.nijtmans@chello.nl 1007# and is therefore part of his plus-patches too. 1008# 1009# It would have been possible to place the following definitions according 1010# to the alphabetical order used elsewhere in this file, but I decided 1011# against that to ease the maintenance of the patch across new tcl versions 1012# (patch usually has no problems to integrate the patch file for the last 1013# version into the new one). 1014 1015declare 281 generic { 1016 Tcl_Channel Tcl_StackChannel(Tcl_Interp *interp, Tcl_ChannelType *typePtr, 1017 ClientData instanceData, int mask, Tcl_Channel prevChan) 1018} 1019declare 282 generic { 1020 int Tcl_UnstackChannel(Tcl_Interp *interp, Tcl_Channel chan) 1021} 1022declare 283 generic { 1023 Tcl_Channel Tcl_GetStackedChannel(Tcl_Channel chan) 1024} 1025 1026# 284 was reserved, but added in 8.4a2 1027declare 284 generic { 1028 void Tcl_SetMainLoop(Tcl_MainLoopProc *proc) 1029} 1030 1031# Reserved for future use (8.0.x vs. 8.1) 1032# declare 285 generic { 1033# } 1034 1035 1036# Added in 8.1: 1037 1038declare 286 generic { 1039 void Tcl_AppendObjToObj(Tcl_Obj *objPtr, Tcl_Obj *appendObjPtr) 1040} 1041declare 287 generic { 1042 Tcl_Encoding Tcl_CreateEncoding(Tcl_EncodingType *typePtr) 1043} 1044declare 288 generic { 1045 void Tcl_CreateThreadExitHandler(Tcl_ExitProc *proc, ClientData clientData) 1046} 1047declare 289 generic { 1048 void Tcl_DeleteThreadExitHandler(Tcl_ExitProc *proc, ClientData clientData) 1049} 1050declare 290 generic { 1051 void Tcl_DiscardResult(Tcl_SavedResult *statePtr) 1052} 1053declare 291 generic { 1054 int Tcl_EvalEx(Tcl_Interp *interp, CONST char *script, int numBytes, 1055 int flags) 1056} 1057declare 292 generic { 1058 int Tcl_EvalObjv(Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[], 1059 int flags) 1060} 1061declare 293 generic { 1062 int Tcl_EvalObjEx(Tcl_Interp *interp, Tcl_Obj *objPtr, int flags) 1063} 1064declare 294 generic { 1065 void Tcl_ExitThread(int status) 1066} 1067declare 295 generic { 1068 int Tcl_ExternalToUtf(Tcl_Interp *interp, Tcl_Encoding encoding, 1069 CONST char *src, int srcLen, int flags, 1070 Tcl_EncodingState *statePtr, char *dst, int dstLen, 1071 int *srcReadPtr, int *dstWrotePtr, int *dstCharsPtr) 1072} 1073declare 296 generic { 1074 char * Tcl_ExternalToUtfDString(Tcl_Encoding encoding, 1075 CONST char *src, int srcLen, Tcl_DString *dsPtr) 1076} 1077declare 297 generic { 1078 void Tcl_FinalizeThread(void) 1079} 1080declare 298 generic { 1081 void Tcl_FinalizeNotifier(ClientData clientData) 1082} 1083declare 299 generic { 1084 void Tcl_FreeEncoding(Tcl_Encoding encoding) 1085} 1086declare 300 generic { 1087 Tcl_ThreadId Tcl_GetCurrentThread(void) 1088} 1089declare 301 generic { 1090 Tcl_Encoding Tcl_GetEncoding(Tcl_Interp *interp, CONST char *name) 1091} 1092declare 302 generic { 1093 CONST84_RETURN char * Tcl_GetEncodingName(Tcl_Encoding encoding) 1094} 1095declare 303 generic { 1096 void Tcl_GetEncodingNames(Tcl_Interp *interp) 1097} 1098declare 304 generic { 1099 int Tcl_GetIndexFromObjStruct(Tcl_Interp *interp, Tcl_Obj *objPtr, 1100 CONST VOID *tablePtr, int offset, CONST char *msg, int flags, 1101 int *indexPtr) 1102} 1103declare 305 generic { 1104 VOID * Tcl_GetThreadData(Tcl_ThreadDataKey *keyPtr, int size) 1105} 1106declare 306 generic { 1107 Tcl_Obj * Tcl_GetVar2Ex(Tcl_Interp *interp, CONST char *part1, 1108 CONST char *part2, int flags) 1109} 1110declare 307 generic { 1111 ClientData Tcl_InitNotifier(void) 1112} 1113declare 308 generic { 1114 void Tcl_MutexLock(Tcl_Mutex *mutexPtr) 1115} 1116declare 309 generic { 1117 void Tcl_MutexUnlock(Tcl_Mutex *mutexPtr) 1118} 1119declare 310 generic { 1120 void Tcl_ConditionNotify(Tcl_Condition *condPtr) 1121} 1122declare 311 generic { 1123 void Tcl_ConditionWait(Tcl_Condition *condPtr, Tcl_Mutex *mutexPtr, 1124 Tcl_Time *timePtr) 1125} 1126declare 312 generic { 1127 int Tcl_NumUtfChars(CONST char *src, int len) 1128} 1129declare 313 generic { 1130 int Tcl_ReadChars(Tcl_Channel channel, Tcl_Obj *objPtr, int charsToRead, 1131 int appendFlag) 1132} 1133declare 314 generic { 1134 void Tcl_RestoreResult(Tcl_Interp *interp, Tcl_SavedResult *statePtr) 1135} 1136declare 315 generic { 1137 void Tcl_SaveResult(Tcl_Interp *interp, Tcl_SavedResult *statePtr) 1138} 1139declare 316 generic { 1140 int Tcl_SetSystemEncoding(Tcl_Interp *interp, CONST char *name) 1141} 1142declare 317 generic { 1143 Tcl_Obj * Tcl_SetVar2Ex(Tcl_Interp *interp, CONST char *part1, 1144 CONST char *part2, Tcl_Obj *newValuePtr, int flags) 1145} 1146declare 318 generic { 1147 void Tcl_ThreadAlert(Tcl_ThreadId threadId) 1148} 1149declare 319 generic { 1150 void Tcl_ThreadQueueEvent(Tcl_ThreadId threadId, Tcl_Event* evPtr, 1151 Tcl_QueuePosition position) 1152} 1153declare 320 generic { 1154 Tcl_UniChar Tcl_UniCharAtIndex(CONST char *src, int index) 1155} 1156declare 321 generic { 1157 Tcl_UniChar Tcl_UniCharToLower(int ch) 1158} 1159declare 322 generic { 1160 Tcl_UniChar Tcl_UniCharToTitle(int ch) 1161} 1162declare 323 generic { 1163 Tcl_UniChar Tcl_UniCharToUpper(int ch) 1164} 1165declare 324 generic { 1166 int Tcl_UniCharToUtf(int ch, char *buf) 1167} 1168declare 325 generic { 1169 CONST84_RETURN char * Tcl_UtfAtIndex(CONST char *src, int index) 1170} 1171declare 326 generic { 1172 int Tcl_UtfCharComplete(CONST char *src, int len) 1173} 1174declare 327 generic { 1175 int Tcl_UtfBackslash(CONST char *src, int *readPtr, char *dst) 1176} 1177declare 328 generic { 1178 CONST84_RETURN char * Tcl_UtfFindFirst(CONST char *src, int ch) 1179} 1180declare 329 generic { 1181 CONST84_RETURN char * Tcl_UtfFindLast(CONST char *src, int ch) 1182} 1183declare 330 generic { 1184 CONST84_RETURN char * Tcl_UtfNext(CONST char *src) 1185} 1186declare 331 generic { 1187 CONST84_RETURN char * Tcl_UtfPrev(CONST char *src, CONST char *start) 1188} 1189declare 332 generic { 1190 int Tcl_UtfToExternal(Tcl_Interp *interp, Tcl_Encoding encoding, 1191 CONST char *src, int srcLen, int flags, 1192 Tcl_EncodingState *statePtr, char *dst, int dstLen, 1193 int *srcReadPtr, int *dstWrotePtr, int *dstCharsPtr) 1194} 1195declare 333 generic { 1196 char * Tcl_UtfToExternalDString(Tcl_Encoding encoding, 1197 CONST char *src, int srcLen, Tcl_DString *dsPtr) 1198} 1199declare 334 generic { 1200 int Tcl_UtfToLower(char *src) 1201} 1202declare 335 generic { 1203 int Tcl_UtfToTitle(char *src) 1204} 1205declare 336 generic { 1206 int Tcl_UtfToUniChar(CONST char *src, Tcl_UniChar *chPtr) 1207} 1208declare 337 generic { 1209 int Tcl_UtfToUpper(char *src) 1210} 1211declare 338 generic { 1212 int Tcl_WriteChars(Tcl_Channel chan, CONST char *src, int srcLen) 1213} 1214declare 339 generic { 1215 int Tcl_WriteObj(Tcl_Channel chan, Tcl_Obj *objPtr) 1216} 1217declare 340 generic { 1218 char * Tcl_GetString(Tcl_Obj *objPtr) 1219} 1220declare 341 generic { 1221 CONST84_RETURN char * Tcl_GetDefaultEncodingDir(void) 1222} 1223declare 342 generic { 1224 void Tcl_SetDefaultEncodingDir(CONST char *path) 1225} 1226declare 343 generic { 1227 void Tcl_AlertNotifier(ClientData clientData) 1228} 1229declare 344 generic { 1230 void Tcl_ServiceModeHook(int mode) 1231} 1232declare 345 generic { 1233 int Tcl_UniCharIsAlnum(int ch) 1234} 1235declare 346 generic { 1236 int Tcl_UniCharIsAlpha(int ch) 1237} 1238declare 347 generic { 1239 int Tcl_UniCharIsDigit(int ch) 1240} 1241declare 348 generic { 1242 int Tcl_UniCharIsLower(int ch) 1243} 1244declare 349 generic { 1245 int Tcl_UniCharIsSpace(int ch) 1246} 1247declare 350 generic { 1248 int Tcl_UniCharIsUpper(int ch) 1249} 1250declare 351 generic { 1251 int Tcl_UniCharIsWordChar(int ch) 1252} 1253declare 352 generic { 1254 int Tcl_UniCharLen(CONST Tcl_UniChar *str) 1255} 1256declare 353 generic { 1257 int Tcl_UniCharNcmp(CONST Tcl_UniChar *cs, CONST Tcl_UniChar *ct, 1258 unsigned long n) 1259} 1260declare 354 generic { 1261 char * Tcl_UniCharToUtfDString(CONST Tcl_UniChar *string, 1262 int numChars, Tcl_DString *dsPtr) 1263} 1264declare 355 generic { 1265 Tcl_UniChar * Tcl_UtfToUniCharDString(CONST char *string, 1266 int length, Tcl_DString *dsPtr) 1267} 1268declare 356 generic { 1269 Tcl_RegExp Tcl_GetRegExpFromObj(Tcl_Interp *interp, Tcl_Obj *patObj, 1270 int flags) 1271} 1272 1273declare 357 generic { 1274 Tcl_Obj *Tcl_EvalTokens(Tcl_Interp *interp, Tcl_Token *tokenPtr, 1275 int count) 1276} 1277declare 358 generic { 1278 void Tcl_FreeParse(Tcl_Parse *parsePtr) 1279} 1280declare 359 generic { 1281 void Tcl_LogCommandInfo(Tcl_Interp *interp, CONST char *script, 1282 CONST char *command, int length) 1283} 1284declare 360 generic { 1285 int Tcl_ParseBraces(Tcl_Interp *interp, CONST char *string, int numBytes, 1286 Tcl_Parse *parsePtr, int append, CONST84 char **termPtr) 1287} 1288declare 361 generic { 1289 int Tcl_ParseCommand(Tcl_Interp *interp, CONST char *string, int numBytes, 1290 int nested, Tcl_Parse *parsePtr) 1291} 1292declare 362 generic { 1293 int Tcl_ParseExpr(Tcl_Interp *interp, CONST char *string, int numBytes, 1294 Tcl_Parse *parsePtr) 1295} 1296declare 363 generic { 1297 int Tcl_ParseQuotedString(Tcl_Interp *interp, CONST char *string, 1298 int numBytes, Tcl_Parse *parsePtr, int append, 1299 CONST84 char **termPtr) 1300} 1301declare 364 generic { 1302 int Tcl_ParseVarName(Tcl_Interp *interp, CONST char *string, int numBytes, 1303 Tcl_Parse *parsePtr, int append) 1304} 1305# These 4 functions are obsolete, use Tcl_FSGetCwd, Tcl_FSChdir, 1306# Tcl_FSAccess and Tcl_FSStat 1307declare 365 generic { 1308 char *Tcl_GetCwd(Tcl_Interp *interp, Tcl_DString *cwdPtr) 1309} 1310declare 366 generic { 1311 int Tcl_Chdir(CONST char *dirName) 1312} 1313declare 367 generic { 1314 int Tcl_Access(CONST char *path, int mode) 1315} 1316declare 368 generic { 1317 int Tcl_Stat(CONST char *path, struct stat *bufPtr) 1318} 1319declare 369 generic { 1320 int Tcl_UtfNcmp(CONST char *s1, CONST char *s2, unsigned long n) 1321} 1322declare 370 generic { 1323 int Tcl_UtfNcasecmp(CONST char *s1, CONST char *s2, unsigned long n) 1324} 1325declare 371 generic { 1326 int Tcl_StringCaseMatch(CONST char *str, CONST char *pattern, int nocase) 1327} 1328declare 372 generic { 1329 int Tcl_UniCharIsControl(int ch) 1330} 1331declare 373 generic { 1332 int Tcl_UniCharIsGraph(int ch) 1333} 1334declare 374 generic { 1335 int Tcl_UniCharIsPrint(int ch) 1336} 1337declare 375 generic { 1338 int Tcl_UniCharIsPunct(int ch) 1339} 1340declare 376 generic { 1341 int Tcl_RegExpExecObj(Tcl_Interp *interp, Tcl_RegExp regexp, 1342 Tcl_Obj *objPtr, int offset, int nmatches, int flags) 1343} 1344declare 377 generic { 1345 void Tcl_RegExpGetInfo(Tcl_RegExp regexp, Tcl_RegExpInfo *infoPtr) 1346} 1347declare 378 generic { 1348 Tcl_Obj * Tcl_NewUnicodeObj(CONST Tcl_UniChar *unicode, int numChars) 1349} 1350declare 379 generic { 1351 void Tcl_SetUnicodeObj(Tcl_Obj *objPtr, CONST Tcl_UniChar *unicode, 1352 int numChars) 1353} 1354declare 380 generic { 1355 int Tcl_GetCharLength(Tcl_Obj *objPtr) 1356} 1357declare 381 generic { 1358 Tcl_UniChar Tcl_GetUniChar(Tcl_Obj *objPtr, int index) 1359} 1360declare 382 generic { 1361 Tcl_UniChar * Tcl_GetUnicode(Tcl_Obj *objPtr) 1362} 1363declare 383 generic { 1364 Tcl_Obj * Tcl_GetRange(Tcl_Obj *objPtr, int first, int last) 1365} 1366declare 384 generic { 1367 void Tcl_AppendUnicodeToObj(Tcl_Obj *objPtr, CONST Tcl_UniChar *unicode, 1368 int length) 1369} 1370declare 385 generic { 1371 int Tcl_RegExpMatchObj(Tcl_Interp *interp, Tcl_Obj *stringObj, 1372 Tcl_Obj *patternObj) 1373} 1374declare 386 generic { 1375 void Tcl_SetNotifier(Tcl_NotifierProcs *notifierProcPtr) 1376} 1377declare 387 generic { 1378 Tcl_Mutex * Tcl_GetAllocMutex(void) 1379} 1380declare 388 generic { 1381 int Tcl_GetChannelNames(Tcl_Interp *interp) 1382} 1383declare 389 generic { 1384 int Tcl_GetChannelNamesEx(Tcl_Interp *interp, CONST char *pattern) 1385} 1386declare 390 generic { 1387 int Tcl_ProcObjCmd(ClientData clientData, Tcl_Interp *interp, 1388 int objc, Tcl_Obj *CONST objv[]) 1389} 1390declare 391 generic { 1391 void Tcl_ConditionFinalize(Tcl_Condition *condPtr) 1392} 1393declare 392 generic { 1394 void Tcl_MutexFinalize(Tcl_Mutex *mutex) 1395} 1396declare 393 generic { 1397 int Tcl_CreateThread(Tcl_ThreadId *idPtr, Tcl_ThreadCreateProc proc, 1398 ClientData clientData, int stackSize, int flags) 1399} 1400 1401# Introduced in 8.3.2 1402declare 394 generic { 1403 int Tcl_ReadRaw(Tcl_Channel chan, char *dst, int bytesToRead) 1404} 1405declare 395 generic { 1406 int Tcl_WriteRaw(Tcl_Channel chan, CONST char *src, int srcLen) 1407} 1408declare 396 generic { 1409 Tcl_Channel Tcl_GetTopChannel(Tcl_Channel chan) 1410} 1411declare 397 generic { 1412 int Tcl_ChannelBuffered(Tcl_Channel chan) 1413} 1414declare 398 generic { 1415 CONST84_RETURN char * Tcl_ChannelName(Tcl_ChannelType *chanTypePtr) 1416} 1417declare 399 generic { 1418 Tcl_ChannelTypeVersion Tcl_ChannelVersion(Tcl_ChannelType *chanTypePtr) 1419} 1420declare 400 generic { 1421 Tcl_DriverBlockModeProc * Tcl_ChannelBlockModeProc(Tcl_ChannelType 1422 *chanTypePtr) 1423} 1424declare 401 generic { 1425 Tcl_DriverCloseProc * Tcl_ChannelCloseProc(Tcl_ChannelType *chanTypePtr) 1426} 1427declare 402 generic { 1428 Tcl_DriverClose2Proc * Tcl_ChannelClose2Proc(Tcl_ChannelType *chanTypePtr) 1429} 1430declare 403 generic { 1431 Tcl_DriverInputProc * Tcl_ChannelInputProc(Tcl_ChannelType *chanTypePtr) 1432} 1433declare 404 generic { 1434 Tcl_DriverOutputProc * Tcl_ChannelOutputProc(Tcl_ChannelType *chanTypePtr) 1435} 1436declare 405 generic { 1437 Tcl_DriverSeekProc * Tcl_ChannelSeekProc(Tcl_ChannelType *chanTypePtr) 1438} 1439declare 406 generic { 1440 Tcl_DriverSetOptionProc * Tcl_ChannelSetOptionProc(Tcl_ChannelType 1441 *chanTypePtr) 1442} 1443declare 407 generic { 1444 Tcl_DriverGetOptionProc * Tcl_ChannelGetOptionProc(Tcl_ChannelType 1445 *chanTypePtr) 1446} 1447declare 408 generic { 1448 Tcl_DriverWatchProc * Tcl_ChannelWatchProc(Tcl_ChannelType *chanTypePtr) 1449} 1450declare 409 generic { 1451 Tcl_DriverGetHandleProc * Tcl_ChannelGetHandleProc(Tcl_ChannelType 1452 *chanTypePtr) 1453} 1454declare 410 generic { 1455 Tcl_DriverFlushProc * Tcl_ChannelFlushProc(Tcl_ChannelType *chanTypePtr) 1456} 1457declare 411 generic { 1458 Tcl_DriverHandlerProc * Tcl_ChannelHandlerProc(Tcl_ChannelType 1459 *chanTypePtr) 1460} 1461 1462# Introduced in 8.4a2 1463declare 412 generic { 1464 int Tcl_JoinThread(Tcl_ThreadId threadId, int* result) 1465} 1466declare 413 generic { 1467 int Tcl_IsChannelShared(Tcl_Channel channel) 1468} 1469declare 414 generic { 1470 int Tcl_IsChannelRegistered(Tcl_Interp* interp, Tcl_Channel channel) 1471} 1472declare 415 generic { 1473 void Tcl_CutChannel(Tcl_Channel channel) 1474} 1475declare 416 generic { 1476 void Tcl_SpliceChannel(Tcl_Channel channel) 1477} 1478declare 417 generic { 1479 void Tcl_ClearChannelHandlers(Tcl_Channel channel) 1480} 1481declare 418 generic { 1482 int Tcl_IsChannelExisting(CONST char* channelName) 1483} 1484 1485declare 419 generic { 1486 int Tcl_UniCharNcasecmp(CONST Tcl_UniChar *cs, CONST Tcl_UniChar *ct, 1487 unsigned long n) 1488} 1489declare 420 generic { 1490 int Tcl_UniCharCaseMatch(CONST Tcl_UniChar *ustr, 1491 CONST Tcl_UniChar *pattern, int nocase) 1492} 1493 1494declare 421 generic { 1495 Tcl_HashEntry *Tcl_FindHashEntry(Tcl_HashTable *tablePtr, CONST char *key) 1496} 1497 1498declare 422 generic { 1499 Tcl_HashEntry *Tcl_CreateHashEntry(Tcl_HashTable *tablePtr, 1500 CONST char *key, int *newPtr) 1501} 1502 1503declare 423 generic { 1504 void Tcl_InitCustomHashTable(Tcl_HashTable *tablePtr, int keyType, 1505 Tcl_HashKeyType *typePtr) 1506} 1507 1508declare 424 generic { 1509 void Tcl_InitObjHashTable(Tcl_HashTable *tablePtr) 1510} 1511declare 425 generic { 1512 ClientData Tcl_CommandTraceInfo(Tcl_Interp *interp, CONST char *varName, 1513 int flags, Tcl_CommandTraceProc *procPtr, 1514 ClientData prevClientData) 1515} 1516declare 426 generic { 1517 int Tcl_TraceCommand(Tcl_Interp *interp, CONST char *varName, int flags, 1518 Tcl_CommandTraceProc *proc, ClientData clientData) 1519} 1520declare 427 generic { 1521 void Tcl_UntraceCommand(Tcl_Interp *interp, CONST char *varName, 1522 int flags, Tcl_CommandTraceProc *proc, ClientData clientData) 1523} 1524declare 428 generic { 1525 char * Tcl_AttemptAlloc(unsigned int size) 1526} 1527declare 429 generic { 1528 char * Tcl_AttemptDbCkalloc(unsigned int size, CONST char *file, int line) 1529} 1530declare 430 generic { 1531 char * Tcl_AttemptRealloc(char *ptr, unsigned int size) 1532} 1533declare 431 generic { 1534 char * Tcl_AttemptDbCkrealloc(char *ptr, unsigned int size, 1535 CONST char *file, int line) 1536} 1537declare 432 generic { 1538 int Tcl_AttemptSetObjLength(Tcl_Obj *objPtr, int length) 1539} 1540declare 433 generic { 1541 Tcl_ThreadId Tcl_GetChannelThread(Tcl_Channel channel) 1542} 1543# introduced in 8.4a3 1544declare 434 generic { 1545 Tcl_UniChar * Tcl_GetUnicodeFromObj(Tcl_Obj *objPtr, int *lengthPtr) 1546} 1547declare 435 generic { 1548 int Tcl_GetMathFuncInfo(Tcl_Interp *interp, CONST char *name, 1549 int *numArgsPtr, Tcl_ValueType **argTypesPtr, 1550 Tcl_MathProc **procPtr, ClientData *clientDataPtr) 1551} 1552declare 436 generic { 1553 Tcl_Obj * Tcl_ListMathFuncs(Tcl_Interp *interp, CONST char *pattern) 1554} 1555declare 437 generic { 1556 Tcl_Obj * Tcl_SubstObj(Tcl_Interp *interp, Tcl_Obj *objPtr, int flags) 1557} 1558declare 438 generic { 1559 int Tcl_DetachChannel(Tcl_Interp* interp, Tcl_Channel channel) 1560} 1561declare 439 generic { 1562 int Tcl_IsStandardChannel(Tcl_Channel channel) 1563} 1564# New functions due to TIP#17 1565declare 440 generic { 1566 int Tcl_FSCopyFile(Tcl_Obj *srcPathPtr, Tcl_Obj *destPathPtr) 1567} 1568declare 441 generic { 1569 int Tcl_FSCopyDirectory(Tcl_Obj *srcPathPtr, 1570 Tcl_Obj *destPathPtr, Tcl_Obj **errorPtr) 1571} 1572declare 442 generic { 1573 int Tcl_FSCreateDirectory(Tcl_Obj *pathPtr) 1574} 1575declare 443 generic { 1576 int Tcl_FSDeleteFile(Tcl_Obj *pathPtr) 1577} 1578declare 444 generic { 1579 int Tcl_FSLoadFile(Tcl_Interp * interp, 1580 Tcl_Obj *pathPtr, CONST char * sym1, CONST char * sym2, 1581 Tcl_PackageInitProc ** proc1Ptr, 1582 Tcl_PackageInitProc ** proc2Ptr, 1583 Tcl_LoadHandle * handlePtr, 1584 Tcl_FSUnloadFileProc **unloadProcPtr) 1585} 1586declare 445 generic { 1587 int Tcl_FSMatchInDirectory(Tcl_Interp *interp, Tcl_Obj *result, 1588 Tcl_Obj *pathPtr, CONST char *pattern, Tcl_GlobTypeData *types) 1589} 1590declare 446 generic { 1591 Tcl_Obj * Tcl_FSLink(Tcl_Obj *pathPtr, Tcl_Obj *toPtr, int linkAction) 1592} 1593declare 447 generic { 1594 int Tcl_FSRemoveDirectory(Tcl_Obj *pathPtr, 1595 int recursive, Tcl_Obj **errorPtr) 1596} 1597declare 448 generic { 1598 int Tcl_FSRenameFile(Tcl_Obj *srcPathPtr, Tcl_Obj *destPathPtr) 1599} 1600declare 449 generic { 1601 int Tcl_FSLstat(Tcl_Obj *pathPtr, Tcl_StatBuf *buf) 1602} 1603declare 450 generic { 1604 int Tcl_FSUtime(Tcl_Obj *pathPtr, struct utimbuf *tval) 1605} 1606declare 451 generic { 1607 int Tcl_FSFileAttrsGet(Tcl_Interp *interp, 1608 int index, Tcl_Obj *pathPtr, Tcl_Obj **objPtrRef) 1609} 1610declare 452 generic { 1611 int Tcl_FSFileAttrsSet(Tcl_Interp *interp, 1612 int index, Tcl_Obj *pathPtr, Tcl_Obj *objPtr) 1613} 1614declare 453 generic { 1615 CONST char ** Tcl_FSFileAttrStrings(Tcl_Obj *pathPtr, Tcl_Obj **objPtrRef) 1616} 1617declare 454 generic { 1618 int Tcl_FSStat(Tcl_Obj *pathPtr, Tcl_StatBuf *buf) 1619} 1620declare 455 generic { 1621 int Tcl_FSAccess(Tcl_Obj *pathPtr, int mode) 1622} 1623declare 456 generic { 1624 Tcl_Channel Tcl_FSOpenFileChannel(Tcl_Interp *interp, Tcl_Obj *pathPtr, 1625 CONST char *modeString, int permissions) 1626} 1627declare 457 generic { 1628 Tcl_Obj* Tcl_FSGetCwd(Tcl_Interp *interp) 1629} 1630declare 458 generic { 1631 int Tcl_FSChdir(Tcl_Obj *pathPtr) 1632} 1633declare 459 generic { 1634 int Tcl_FSConvertToPathType(Tcl_Interp *interp, Tcl_Obj *pathPtr) 1635} 1636declare 460 generic { 1637 Tcl_Obj* Tcl_FSJoinPath(Tcl_Obj *listObj, int elements) 1638} 1639declare 461 generic { 1640 Tcl_Obj* Tcl_FSSplitPath(Tcl_Obj* pathPtr, int *lenPtr) 1641} 1642declare 462 generic { 1643 int Tcl_FSEqualPaths(Tcl_Obj* firstPtr, Tcl_Obj* secondPtr) 1644} 1645declare 463 generic { 1646 Tcl_Obj* Tcl_FSGetNormalizedPath(Tcl_Interp *interp, Tcl_Obj* pathObjPtr) 1647} 1648declare 464 generic { 1649 Tcl_Obj* Tcl_FSJoinToPath(Tcl_Obj *basePtr, int objc, 1650 Tcl_Obj *CONST objv[]) 1651} 1652declare 465 generic { 1653 ClientData Tcl_FSGetInternalRep(Tcl_Obj* pathObjPtr, 1654 Tcl_Filesystem *fsPtr) 1655} 1656declare 466 generic { 1657 Tcl_Obj* Tcl_FSGetTranslatedPath(Tcl_Interp *interp, Tcl_Obj* pathPtr) 1658} 1659declare 467 generic { 1660 int Tcl_FSEvalFile(Tcl_Interp *interp, Tcl_Obj *fileName) 1661} 1662declare 468 generic { 1663 Tcl_Obj* Tcl_FSNewNativePath(Tcl_Filesystem* fromFilesystem, 1664 ClientData clientData) 1665} 1666declare 469 generic { 1667 CONST char* Tcl_FSGetNativePath(Tcl_Obj* pathObjPtr) 1668} 1669declare 470 generic { 1670 Tcl_Obj* Tcl_FSFileSystemInfo(Tcl_Obj* pathObjPtr) 1671} 1672declare 471 generic { 1673 Tcl_Obj* Tcl_FSPathSeparator(Tcl_Obj* pathObjPtr) 1674} 1675declare 472 generic { 1676 Tcl_Obj* Tcl_FSListVolumes(void) 1677} 1678declare 473 generic { 1679 int Tcl_FSRegister(ClientData clientData, Tcl_Filesystem *fsPtr) 1680} 1681declare 474 generic { 1682 int Tcl_FSUnregister(Tcl_Filesystem *fsPtr) 1683} 1684declare 475 generic { 1685 ClientData Tcl_FSData(Tcl_Filesystem *fsPtr) 1686} 1687declare 476 generic { 1688 CONST char* Tcl_FSGetTranslatedStringPath(Tcl_Interp *interp, 1689 Tcl_Obj* pathPtr) 1690} 1691declare 477 generic { 1692 Tcl_Filesystem* Tcl_FSGetFileSystemForPath(Tcl_Obj* pathObjPtr) 1693} 1694declare 478 generic { 1695 Tcl_PathType Tcl_FSGetPathType(Tcl_Obj *pathObjPtr) 1696} 1697# New function due to TIP#49 1698declare 479 generic { 1699 int Tcl_OutputBuffered(Tcl_Channel chan) 1700} 1701declare 480 generic { 1702 void Tcl_FSMountsChanged(Tcl_Filesystem *fsPtr) 1703} 1704# New function due to TIP#56 1705declare 481 generic { 1706 int Tcl_EvalTokensStandard(Tcl_Interp *interp, Tcl_Token *tokenPtr, 1707 int count) 1708} 1709 1710# New export due to TIP#73 1711declare 482 generic { 1712 void Tcl_GetTime(Tcl_Time* timeBuf) 1713} 1714 1715# New exports due to TIP#32 1716 1717declare 483 generic { 1718 Tcl_Trace Tcl_CreateObjTrace(Tcl_Interp* interp, int level, int flags, 1719 Tcl_CmdObjTraceProc* objProc, ClientData clientData, 1720 Tcl_CmdObjTraceDeleteProc* delProc) 1721} 1722declare 484 generic { 1723 int Tcl_GetCommandInfoFromToken(Tcl_Command token, Tcl_CmdInfo* infoPtr) 1724} 1725declare 485 generic { 1726 int Tcl_SetCommandInfoFromToken(Tcl_Command token, 1727 CONST Tcl_CmdInfo* infoPtr) 1728} 1729 1730### New functions on 64-bit dev branch ### 1731declare 486 generic { 1732 Tcl_Obj * Tcl_DbNewWideIntObj(Tcl_WideInt wideValue, 1733 CONST char *file, int line) 1734} 1735declare 487 generic { 1736 int Tcl_GetWideIntFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr, 1737 Tcl_WideInt *widePtr) 1738} 1739declare 488 generic { 1740 Tcl_Obj * Tcl_NewWideIntObj(Tcl_WideInt wideValue) 1741} 1742declare 489 generic { 1743 void Tcl_SetWideIntObj(Tcl_Obj *objPtr, Tcl_WideInt wideValue) 1744} 1745declare 490 generic { 1746 Tcl_StatBuf * Tcl_AllocStatBuf(void) 1747} 1748declare 491 generic { 1749 Tcl_WideInt Tcl_Seek(Tcl_Channel chan, Tcl_WideInt offset, int mode) 1750} 1751declare 492 generic { 1752 Tcl_WideInt Tcl_Tell(Tcl_Channel chan) 1753} 1754 1755# New export due to TIP#91 1756declare 493 generic { 1757 Tcl_DriverWideSeekProc * Tcl_ChannelWideSeekProc( 1758 Tcl_ChannelType *chanTypePtr) 1759} 1760 1761# Slots 494 to 553 are taken already by 8.5 1762# #111 - Dicts (494 ... 504) 1763# #59 - Config (505) 1764# #139 - Namespace API (506 ... 517) 1765# #137 - source -encoding (518) 1766# #121 - ExitProc (519) 1767# #121 - Resource Limits (520 ... 534) 1768# #226 - S/R Interp State (535 ... 537) 1769# #227 - S/G Return Opts (538 ... 539) 1770# #235 - Ensemble C API (540 ... 551) 1771# #233 - Virtualized Time (552 ... 553) 1772 1773# TIP#218 (Driver Thread Actions) davygrvy/akupries ChannelType ver 4 1774# These slots are used by 8.5 as well. 1775declare 554 generic { 1776 Tcl_DriverThreadActionProc *Tcl_ChannelThreadActionProc(Tcl_ChannelType *chanTypePtr) 1777} 1778 1779# Slots 555 to 572 are taken already by 8.5 1780# TIP #237: Arbitrary-prec Integers (555 ... 559) 1781# TIP #208: 'chan' Command (560 ... 561) 1782# TIP #219: Channel Reflection (562 ... 565) 1783# TIP #237: Add. bignum support (566) 1784# TIP #181: 'namespace unknown' Cmd (567 ... 568) 1785# TIP #258: Enhanced Encodings API (569 ... 572) 1786 1787# TIP#268: Extended version numbers and requirements. 1788# The slot is present even if TCL_TIP268 is not activated. 1789 1790declare 573 generic { 1791 int Tcl_PkgRequireProc(Tcl_Interp *interp, CONST char *name, 1792 int objc, Tcl_Obj *CONST objv[], ClientData *clientDataPtr) 1793} 1794 1795############################################################################## 1796 1797# Define the platform specific public Tcl interface. These functions are 1798# only available on the designated platform. 1799 1800interface tclPlat 1801 1802###################### 1803# Windows declarations 1804 1805# Added in Tcl 8.1 1806 1807declare 0 win { 1808 TCHAR * Tcl_WinUtfToTChar(CONST char *str, int len, Tcl_DString *dsPtr) 1809} 1810declare 1 win { 1811 char * Tcl_WinTCharToUtf(CONST TCHAR *str, int len, Tcl_DString *dsPtr) 1812} 1813 1814################## 1815# Mac declarations 1816 1817# This is needed by the shells to handle Macintosh events. 1818 1819declare 0 mac { 1820 void Tcl_MacSetEventProc(Tcl_MacConvertEventPtr procPtr) 1821} 1822 1823# These routines are useful for handling using scripts from resources 1824# in the application shell 1825 1826declare 1 mac { 1827 char * Tcl_MacConvertTextResource(Handle resource) 1828} 1829declare 2 mac { 1830 int Tcl_MacEvalResource(Tcl_Interp *interp, CONST char *resourceName, 1831 int resourceNumber, CONST char *fileName) 1832} 1833declare 3 mac { 1834 Handle Tcl_MacFindResource(Tcl_Interp *interp, long resourceType, 1835 CONST char *resourceName, int resourceNumber, 1836 CONST char *resFileRef, int * releaseIt) 1837} 1838 1839# These routines support the new OSType object type (i.e. the packed 4 1840# character type and creator codes). 1841 1842declare 4 mac { 1843 int Tcl_GetOSTypeFromObj(Tcl_Interp *interp, Tcl_Obj *objPtr, 1844 OSType *osTypePtr) 1845} 1846declare 5 mac { 1847 void Tcl_SetOSTypeObj(Tcl_Obj *objPtr, OSType osType) 1848} 1849declare 6 mac { 1850 Tcl_Obj * Tcl_NewOSTypeObj(OSType osType) 1851} 1852 1853# These are not in MSL 2.1.2, so we need to export them from the 1854# Tcl shared library. They are found in the compat directory. 1855 1856declare 7 mac { 1857 int strncasecmp(CONST char *s1, CONST char *s2, size_t n) 1858} 1859declare 8 mac { 1860 int strcasecmp(CONST char *s1, CONST char *s2) 1861} 1862 1863################## 1864# Mac OS X declarations 1865# 1866 1867declare 0 macosx { 1868 int Tcl_MacOSXOpenBundleResources(Tcl_Interp *interp, 1869 CONST char *bundleName, 1870 int hasResourceFile, 1871 int maxPathLen, 1872 char *libraryPath) 1873} 1874declare 1 macosx { 1875 int Tcl_MacOSXOpenVersionedBundleResources(Tcl_Interp *interp, 1876 CONST char *bundleName, 1877 CONST char *bundleVersion, 1878 int hasResourceFile, 1879 int maxPathLen, 1880 char *libraryPath) 1881} 1882