OSDN Git Service

Please enter the commit message for your changes. Lines starting
[eos/hostdependX86LINUX64.git] / util / X86LINUX64 / include / tclDecls.h
1 /*
2  * tclDecls.h --
3  *
4  *      Declarations of functions in the platform independent public Tcl API.
5  *
6  * Copyright (c) 1998-1999 by Scriptics Corporation.
7  *
8  * See the file "license.terms" for information on usage and redistribution
9  * of this file, and for a DISCLAIMER OF ALL WARRANTIES.
10  */
11
12 #ifndef _TCLDECLS
13 #define _TCLDECLS
14
15 #undef TCL_STORAGE_CLASS
16 #ifdef BUILD_tcl
17 #   define TCL_STORAGE_CLASS DLLEXPORT
18 #else
19 #   ifdef USE_TCL_STUBS
20 #      define TCL_STORAGE_CLASS
21 #   else
22 #      define TCL_STORAGE_CLASS DLLIMPORT
23 #   endif
24 #endif
25
26 /*
27  * WARNING: This file is automatically generated by the tools/genStubs.tcl
28  * script.  Any modifications to the function declarations below should be made
29  * in the generic/tcl.decls script.
30  */
31
32 /* !BEGIN!: Do not edit below this line. */
33
34 #ifdef __cplusplus
35 extern "C" {
36 #endif
37
38 /*
39  * Exported function declarations:
40  */
41
42 /* 0 */
43 EXTERN int              Tcl_PkgProvideEx(Tcl_Interp *interp,
44                                 const char *name, const char *version,
45                                 const void *clientData);
46 /* 1 */
47 EXTERN CONST84_RETURN char * Tcl_PkgRequireEx(Tcl_Interp *interp,
48                                 const char *name, const char *version,
49                                 int exact, void *clientDataPtr);
50 /* 2 */
51 EXTERN void             Tcl_Panic(const char *format, ...) TCL_FORMAT_PRINTF(1, 2);
52 /* 3 */
53 EXTERN char *           Tcl_Alloc(unsigned int size);
54 /* 4 */
55 EXTERN void             Tcl_Free(char *ptr);
56 /* 5 */
57 EXTERN char *           Tcl_Realloc(char *ptr, unsigned int size);
58 /* 6 */
59 EXTERN char *           Tcl_DbCkalloc(unsigned int size, const char *file,
60                                 int line);
61 /* 7 */
62 EXTERN void             Tcl_DbCkfree(char *ptr, const char *file, int line);
63 /* 8 */
64 EXTERN char *           Tcl_DbCkrealloc(char *ptr, unsigned int size,
65                                 const char *file, int line);
66 #if !defined(_WIN32) && !defined(MAC_OSX_TCL) /* UNIX */
67 /* 9 */
68 EXTERN void             Tcl_CreateFileHandler(int fd, int mask,
69                                 Tcl_FileProc *proc, ClientData clientData);
70 #endif /* UNIX */
71 #ifdef MAC_OSX_TCL /* MACOSX */
72 /* 9 */
73 EXTERN void             Tcl_CreateFileHandler(int fd, int mask,
74                                 Tcl_FileProc *proc, ClientData clientData);
75 #endif /* MACOSX */
76 #if !defined(_WIN32) && !defined(MAC_OSX_TCL) /* UNIX */
77 /* 10 */
78 EXTERN void             Tcl_DeleteFileHandler(int fd);
79 #endif /* UNIX */
80 #ifdef MAC_OSX_TCL /* MACOSX */
81 /* 10 */
82 EXTERN void             Tcl_DeleteFileHandler(int fd);
83 #endif /* MACOSX */
84 /* 11 */
85 EXTERN void             Tcl_SetTimer(const Tcl_Time *timePtr);
86 /* 12 */
87 EXTERN void             Tcl_Sleep(int ms);
88 /* 13 */
89 EXTERN int              Tcl_WaitForEvent(const Tcl_Time *timePtr);
90 /* 14 */
91 EXTERN int              Tcl_AppendAllObjTypes(Tcl_Interp *interp,
92                                 Tcl_Obj *objPtr);
93 /* 15 */
94 EXTERN void             Tcl_AppendStringsToObj(Tcl_Obj *objPtr, ...);
95 /* 16 */
96 EXTERN void             Tcl_AppendToObj(Tcl_Obj *objPtr, const char *bytes,
97                                 int length);
98 /* 17 */
99 EXTERN Tcl_Obj *        Tcl_ConcatObj(int objc, Tcl_Obj *const objv[]);
100 /* 18 */
101 EXTERN int              Tcl_ConvertToType(Tcl_Interp *interp,
102                                 Tcl_Obj *objPtr, const Tcl_ObjType *typePtr);
103 /* 19 */
104 EXTERN void             Tcl_DbDecrRefCount(Tcl_Obj *objPtr, const char *file,
105                                 int line);
106 /* 20 */
107 EXTERN void             Tcl_DbIncrRefCount(Tcl_Obj *objPtr, const char *file,
108                                 int line);
109 /* 21 */
110 EXTERN int              Tcl_DbIsShared(Tcl_Obj *objPtr, const char *file,
111                                 int line);
112 /* 22 */
113 EXTERN Tcl_Obj *        Tcl_DbNewBooleanObj(int boolValue, const char *file,
114                                 int line);
115 /* 23 */
116 EXTERN Tcl_Obj *        Tcl_DbNewByteArrayObj(const unsigned char *bytes,
117                                 int length, const char *file, int line);
118 /* 24 */
119 EXTERN Tcl_Obj *        Tcl_DbNewDoubleObj(double doubleValue,
120                                 const char *file, int line);
121 /* 25 */
122 EXTERN Tcl_Obj *        Tcl_DbNewListObj(int objc, Tcl_Obj *const *objv,
123                                 const char *file, int line);
124 /* 26 */
125 EXTERN Tcl_Obj *        Tcl_DbNewLongObj(long longValue, const char *file,
126                                 int line);
127 /* 27 */
128 EXTERN Tcl_Obj *        Tcl_DbNewObj(const char *file, int line);
129 /* 28 */
130 EXTERN Tcl_Obj *        Tcl_DbNewStringObj(const char *bytes, int length,
131                                 const char *file, int line);
132 /* 29 */
133 EXTERN Tcl_Obj *        Tcl_DuplicateObj(Tcl_Obj *objPtr);
134 /* 30 */
135 EXTERN void             TclFreeObj(Tcl_Obj *objPtr);
136 /* 31 */
137 EXTERN int              Tcl_GetBoolean(Tcl_Interp *interp, const char *src,
138                                 int *boolPtr);
139 /* 32 */
140 EXTERN int              Tcl_GetBooleanFromObj(Tcl_Interp *interp,
141                                 Tcl_Obj *objPtr, int *boolPtr);
142 /* 33 */
143 EXTERN unsigned char *  Tcl_GetByteArrayFromObj(Tcl_Obj *objPtr,
144                                 int *lengthPtr);
145 /* 34 */
146 EXTERN int              Tcl_GetDouble(Tcl_Interp *interp, const char *src,
147                                 double *doublePtr);
148 /* 35 */
149 EXTERN int              Tcl_GetDoubleFromObj(Tcl_Interp *interp,
150                                 Tcl_Obj *objPtr, double *doublePtr);
151 /* 36 */
152 EXTERN int              Tcl_GetIndexFromObj(Tcl_Interp *interp,
153                                 Tcl_Obj *objPtr,
154                                 CONST84 char *const *tablePtr,
155                                 const char *msg, int flags, int *indexPtr);
156 /* 37 */
157 EXTERN int              Tcl_GetInt(Tcl_Interp *interp, const char *src,
158                                 int *intPtr);
159 /* 38 */
160 EXTERN int              Tcl_GetIntFromObj(Tcl_Interp *interp,
161                                 Tcl_Obj *objPtr, int *intPtr);
162 /* 39 */
163 EXTERN int              Tcl_GetLongFromObj(Tcl_Interp *interp,
164                                 Tcl_Obj *objPtr, long *longPtr);
165 /* 40 */
166 EXTERN CONST86 Tcl_ObjType * Tcl_GetObjType(const char *typeName);
167 /* 41 */
168 EXTERN char *           Tcl_GetStringFromObj(Tcl_Obj *objPtr, int *lengthPtr);
169 /* 42 */
170 EXTERN void             Tcl_InvalidateStringRep(Tcl_Obj *objPtr);
171 /* 43 */
172 EXTERN int              Tcl_ListObjAppendList(Tcl_Interp *interp,
173                                 Tcl_Obj *listPtr, Tcl_Obj *elemListPtr);
174 /* 44 */
175 EXTERN int              Tcl_ListObjAppendElement(Tcl_Interp *interp,
176                                 Tcl_Obj *listPtr, Tcl_Obj *objPtr);
177 /* 45 */
178 EXTERN int              Tcl_ListObjGetElements(Tcl_Interp *interp,
179                                 Tcl_Obj *listPtr, int *objcPtr,
180                                 Tcl_Obj ***objvPtr);
181 /* 46 */
182 EXTERN int              Tcl_ListObjIndex(Tcl_Interp *interp,
183                                 Tcl_Obj *listPtr, int index,
184                                 Tcl_Obj **objPtrPtr);
185 /* 47 */
186 EXTERN int              Tcl_ListObjLength(Tcl_Interp *interp,
187                                 Tcl_Obj *listPtr, int *lengthPtr);
188 /* 48 */
189 EXTERN int              Tcl_ListObjReplace(Tcl_Interp *interp,
190                                 Tcl_Obj *listPtr, int first, int count,
191                                 int objc, Tcl_Obj *const objv[]);
192 /* 49 */
193 EXTERN Tcl_Obj *        Tcl_NewBooleanObj(int boolValue);
194 /* 50 */
195 EXTERN Tcl_Obj *        Tcl_NewByteArrayObj(const unsigned char *bytes,
196                                 int length);
197 /* 51 */
198 EXTERN Tcl_Obj *        Tcl_NewDoubleObj(double doubleValue);
199 /* 52 */
200 EXTERN Tcl_Obj *        Tcl_NewIntObj(int intValue);
201 /* 53 */
202 EXTERN Tcl_Obj *        Tcl_NewListObj(int objc, Tcl_Obj *const objv[]);
203 /* 54 */
204 EXTERN Tcl_Obj *        Tcl_NewLongObj(long longValue);
205 /* 55 */
206 EXTERN Tcl_Obj *        Tcl_NewObj(void);
207 /* 56 */
208 EXTERN Tcl_Obj *        Tcl_NewStringObj(const char *bytes, int length);
209 /* 57 */
210 EXTERN void             Tcl_SetBooleanObj(Tcl_Obj *objPtr, int boolValue);
211 /* 58 */
212 EXTERN unsigned char *  Tcl_SetByteArrayLength(Tcl_Obj *objPtr, int length);
213 /* 59 */
214 EXTERN void             Tcl_SetByteArrayObj(Tcl_Obj *objPtr,
215                                 const unsigned char *bytes, int length);
216 /* 60 */
217 EXTERN void             Tcl_SetDoubleObj(Tcl_Obj *objPtr, double doubleValue);
218 /* 61 */
219 EXTERN void             Tcl_SetIntObj(Tcl_Obj *objPtr, int intValue);
220 /* 62 */
221 EXTERN void             Tcl_SetListObj(Tcl_Obj *objPtr, int objc,
222                                 Tcl_Obj *const objv[]);
223 /* 63 */
224 EXTERN void             Tcl_SetLongObj(Tcl_Obj *objPtr, long longValue);
225 /* 64 */
226 EXTERN void             Tcl_SetObjLength(Tcl_Obj *objPtr, int length);
227 /* 65 */
228 EXTERN void             Tcl_SetStringObj(Tcl_Obj *objPtr, const char *bytes,
229                                 int length);
230 /* 66 */
231 EXTERN void             Tcl_AddErrorInfo(Tcl_Interp *interp,
232                                 const char *message);
233 /* 67 */
234 EXTERN void             Tcl_AddObjErrorInfo(Tcl_Interp *interp,
235                                 const char *message, int length);
236 /* 68 */
237 EXTERN void             Tcl_AllowExceptions(Tcl_Interp *interp);
238 /* 69 */
239 EXTERN void             Tcl_AppendElement(Tcl_Interp *interp,
240                                 const char *element);
241 /* 70 */
242 EXTERN void             Tcl_AppendResult(Tcl_Interp *interp, ...);
243 /* 71 */
244 EXTERN Tcl_AsyncHandler  Tcl_AsyncCreate(Tcl_AsyncProc *proc,
245                                 ClientData clientData);
246 /* 72 */
247 EXTERN void             Tcl_AsyncDelete(Tcl_AsyncHandler async);
248 /* 73 */
249 EXTERN int              Tcl_AsyncInvoke(Tcl_Interp *interp, int code);
250 /* 74 */
251 EXTERN void             Tcl_AsyncMark(Tcl_AsyncHandler async);
252 /* 75 */
253 EXTERN int              Tcl_AsyncReady(void);
254 /* 76 */
255 EXTERN void             Tcl_BackgroundError(Tcl_Interp *interp);
256 /* 77 */
257 EXTERN char             Tcl_Backslash(const char *src, int *readPtr);
258 /* 78 */
259 EXTERN int              Tcl_BadChannelOption(Tcl_Interp *interp,
260                                 const char *optionName,
261                                 const char *optionList);
262 /* 79 */
263 EXTERN void             Tcl_CallWhenDeleted(Tcl_Interp *interp,
264                                 Tcl_InterpDeleteProc *proc,
265                                 ClientData clientData);
266 /* 80 */
267 EXTERN void             Tcl_CancelIdleCall(Tcl_IdleProc *idleProc,
268                                 ClientData clientData);
269 /* 81 */
270 EXTERN int              Tcl_Close(Tcl_Interp *interp, Tcl_Channel chan);
271 /* 82 */
272 EXTERN int              Tcl_CommandComplete(const char *cmd);
273 /* 83 */
274 EXTERN char *           Tcl_Concat(int argc, CONST84 char *const *argv);
275 /* 84 */
276 EXTERN int              Tcl_ConvertElement(const char *src, char *dst,
277                                 int flags);
278 /* 85 */
279 EXTERN int              Tcl_ConvertCountedElement(const char *src,
280                                 int length, char *dst, int flags);
281 /* 86 */
282 EXTERN int              Tcl_CreateAlias(Tcl_Interp *slave,
283                                 const char *slaveCmd, Tcl_Interp *target,
284                                 const char *targetCmd, int argc,
285                                 CONST84 char *const *argv);
286 /* 87 */
287 EXTERN int              Tcl_CreateAliasObj(Tcl_Interp *slave,
288                                 const char *slaveCmd, Tcl_Interp *target,
289                                 const char *targetCmd, int objc,
290                                 Tcl_Obj *const objv[]);
291 /* 88 */
292 EXTERN Tcl_Channel      Tcl_CreateChannel(const Tcl_ChannelType *typePtr,
293                                 const char *chanName,
294                                 ClientData instanceData, int mask);
295 /* 89 */
296 EXTERN void             Tcl_CreateChannelHandler(Tcl_Channel chan, int mask,
297                                 Tcl_ChannelProc *proc, ClientData clientData);
298 /* 90 */
299 EXTERN void             Tcl_CreateCloseHandler(Tcl_Channel chan,
300                                 Tcl_CloseProc *proc, ClientData clientData);
301 /* 91 */
302 EXTERN Tcl_Command      Tcl_CreateCommand(Tcl_Interp *interp,
303                                 const char *cmdName, Tcl_CmdProc *proc,
304                                 ClientData clientData,
305                                 Tcl_CmdDeleteProc *deleteProc);
306 /* 92 */
307 EXTERN void             Tcl_CreateEventSource(Tcl_EventSetupProc *setupProc,
308                                 Tcl_EventCheckProc *checkProc,
309                                 ClientData clientData);
310 /* 93 */
311 EXTERN void             Tcl_CreateExitHandler(Tcl_ExitProc *proc,
312                                 ClientData clientData);
313 /* 94 */
314 EXTERN Tcl_Interp *     Tcl_CreateInterp(void);
315 /* 95 */
316 EXTERN void             Tcl_CreateMathFunc(Tcl_Interp *interp,
317                                 const char *name, int numArgs,
318                                 Tcl_ValueType *argTypes, Tcl_MathProc *proc,
319                                 ClientData clientData);
320 /* 96 */
321 EXTERN Tcl_Command      Tcl_CreateObjCommand(Tcl_Interp *interp,
322                                 const char *cmdName, Tcl_ObjCmdProc *proc,
323                                 ClientData clientData,
324                                 Tcl_CmdDeleteProc *deleteProc);
325 /* 97 */
326 EXTERN Tcl_Interp *     Tcl_CreateSlave(Tcl_Interp *interp,
327                                 const char *slaveName, int isSafe);
328 /* 98 */
329 EXTERN Tcl_TimerToken   Tcl_CreateTimerHandler(int milliseconds,
330                                 Tcl_TimerProc *proc, ClientData clientData);
331 /* 99 */
332 EXTERN Tcl_Trace        Tcl_CreateTrace(Tcl_Interp *interp, int level,
333                                 Tcl_CmdTraceProc *proc,
334                                 ClientData clientData);
335 /* 100 */
336 EXTERN void             Tcl_DeleteAssocData(Tcl_Interp *interp,
337                                 const char *name);
338 /* 101 */
339 EXTERN void             Tcl_DeleteChannelHandler(Tcl_Channel chan,
340                                 Tcl_ChannelProc *proc, ClientData clientData);
341 /* 102 */
342 EXTERN void             Tcl_DeleteCloseHandler(Tcl_Channel chan,
343                                 Tcl_CloseProc *proc, ClientData clientData);
344 /* 103 */
345 EXTERN int              Tcl_DeleteCommand(Tcl_Interp *interp,
346                                 const char *cmdName);
347 /* 104 */
348 EXTERN int              Tcl_DeleteCommandFromToken(Tcl_Interp *interp,
349                                 Tcl_Command command);
350 /* 105 */
351 EXTERN void             Tcl_DeleteEvents(Tcl_EventDeleteProc *proc,
352                                 ClientData clientData);
353 /* 106 */
354 EXTERN void             Tcl_DeleteEventSource(Tcl_EventSetupProc *setupProc,
355                                 Tcl_EventCheckProc *checkProc,
356                                 ClientData clientData);
357 /* 107 */
358 EXTERN void             Tcl_DeleteExitHandler(Tcl_ExitProc *proc,
359                                 ClientData clientData);
360 /* 108 */
361 EXTERN void             Tcl_DeleteHashEntry(Tcl_HashEntry *entryPtr);
362 /* 109 */
363 EXTERN void             Tcl_DeleteHashTable(Tcl_HashTable *tablePtr);
364 /* 110 */
365 EXTERN void             Tcl_DeleteInterp(Tcl_Interp *interp);
366 /* 111 */
367 EXTERN void             Tcl_DetachPids(int numPids, Tcl_Pid *pidPtr);
368 /* 112 */
369 EXTERN void             Tcl_DeleteTimerHandler(Tcl_TimerToken token);
370 /* 113 */
371 EXTERN void             Tcl_DeleteTrace(Tcl_Interp *interp, Tcl_Trace trace);
372 /* 114 */
373 EXTERN void             Tcl_DontCallWhenDeleted(Tcl_Interp *interp,
374                                 Tcl_InterpDeleteProc *proc,
375                                 ClientData clientData);
376 /* 115 */
377 EXTERN int              Tcl_DoOneEvent(int flags);
378 /* 116 */
379 EXTERN void             Tcl_DoWhenIdle(Tcl_IdleProc *proc,
380                                 ClientData clientData);
381 /* 117 */
382 EXTERN char *           Tcl_DStringAppend(Tcl_DString *dsPtr,
383                                 const char *bytes, int length);
384 /* 118 */
385 EXTERN char *           Tcl_DStringAppendElement(Tcl_DString *dsPtr,
386                                 const char *element);
387 /* 119 */
388 EXTERN void             Tcl_DStringEndSublist(Tcl_DString *dsPtr);
389 /* 120 */
390 EXTERN void             Tcl_DStringFree(Tcl_DString *dsPtr);
391 /* 121 */
392 EXTERN void             Tcl_DStringGetResult(Tcl_Interp *interp,
393                                 Tcl_DString *dsPtr);
394 /* 122 */
395 EXTERN void             Tcl_DStringInit(Tcl_DString *dsPtr);
396 /* 123 */
397 EXTERN void             Tcl_DStringResult(Tcl_Interp *interp,
398                                 Tcl_DString *dsPtr);
399 /* 124 */
400 EXTERN void             Tcl_DStringSetLength(Tcl_DString *dsPtr, int length);
401 /* 125 */
402 EXTERN void             Tcl_DStringStartSublist(Tcl_DString *dsPtr);
403 /* 126 */
404 EXTERN int              Tcl_Eof(Tcl_Channel chan);
405 /* 127 */
406 EXTERN CONST84_RETURN char * Tcl_ErrnoId(void);
407 /* 128 */
408 EXTERN CONST84_RETURN char * Tcl_ErrnoMsg(int err);
409 /* 129 */
410 EXTERN int              Tcl_Eval(Tcl_Interp *interp, const char *script);
411 /* 130 */
412 EXTERN int              Tcl_EvalFile(Tcl_Interp *interp,
413                                 const char *fileName);
414 /* 131 */
415 EXTERN int              Tcl_EvalObj(Tcl_Interp *interp, Tcl_Obj *objPtr);
416 /* 132 */
417 EXTERN void             Tcl_EventuallyFree(ClientData clientData,
418                                 Tcl_FreeProc *freeProc);
419 /* 133 */
420 EXTERN void             Tcl_Exit(int status);
421 /* 134 */
422 EXTERN int              Tcl_ExposeCommand(Tcl_Interp *interp,
423                                 const char *hiddenCmdToken,
424                                 const char *cmdName);
425 /* 135 */
426 EXTERN int              Tcl_ExprBoolean(Tcl_Interp *interp, const char *expr,
427                                 int *ptr);
428 /* 136 */
429 EXTERN int              Tcl_ExprBooleanObj(Tcl_Interp *interp,
430                                 Tcl_Obj *objPtr, int *ptr);
431 /* 137 */
432 EXTERN int              Tcl_ExprDouble(Tcl_Interp *interp, const char *expr,
433                                 double *ptr);
434 /* 138 */
435 EXTERN int              Tcl_ExprDoubleObj(Tcl_Interp *interp,
436                                 Tcl_Obj *objPtr, double *ptr);
437 /* 139 */
438 EXTERN int              Tcl_ExprLong(Tcl_Interp *interp, const char *expr,
439                                 long *ptr);
440 /* 140 */
441 EXTERN int              Tcl_ExprLongObj(Tcl_Interp *interp, Tcl_Obj *objPtr,
442                                 long *ptr);
443 /* 141 */
444 EXTERN int              Tcl_ExprObj(Tcl_Interp *interp, Tcl_Obj *objPtr,
445                                 Tcl_Obj **resultPtrPtr);
446 /* 142 */
447 EXTERN int              Tcl_ExprString(Tcl_Interp *interp, const char *expr);
448 /* 143 */
449 EXTERN void             Tcl_Finalize(void);
450 /* 144 */
451 EXTERN void             Tcl_FindExecutable(const char *argv0);
452 /* 145 */
453 EXTERN Tcl_HashEntry *  Tcl_FirstHashEntry(Tcl_HashTable *tablePtr,
454                                 Tcl_HashSearch *searchPtr);
455 /* 146 */
456 EXTERN int              Tcl_Flush(Tcl_Channel chan);
457 /* 147 */
458 EXTERN void             Tcl_FreeResult(Tcl_Interp *interp);
459 /* 148 */
460 EXTERN int              Tcl_GetAlias(Tcl_Interp *interp,
461                                 const char *slaveCmd,
462                                 Tcl_Interp **targetInterpPtr,
463                                 CONST84 char **targetCmdPtr, int *argcPtr,
464                                 CONST84 char ***argvPtr);
465 /* 149 */
466 EXTERN int              Tcl_GetAliasObj(Tcl_Interp *interp,
467                                 const char *slaveCmd,
468                                 Tcl_Interp **targetInterpPtr,
469                                 CONST84 char **targetCmdPtr, int *objcPtr,
470                                 Tcl_Obj ***objv);
471 /* 150 */
472 EXTERN ClientData       Tcl_GetAssocData(Tcl_Interp *interp,
473                                 const char *name,
474                                 Tcl_InterpDeleteProc **procPtr);
475 /* 151 */
476 EXTERN Tcl_Channel      Tcl_GetChannel(Tcl_Interp *interp,
477                                 const char *chanName, int *modePtr);
478 /* 152 */
479 EXTERN int              Tcl_GetChannelBufferSize(Tcl_Channel chan);
480 /* 153 */
481 EXTERN int              Tcl_GetChannelHandle(Tcl_Channel chan, int direction,
482                                 ClientData *handlePtr);
483 /* 154 */
484 EXTERN ClientData       Tcl_GetChannelInstanceData(Tcl_Channel chan);
485 /* 155 */
486 EXTERN int              Tcl_GetChannelMode(Tcl_Channel chan);
487 /* 156 */
488 EXTERN CONST84_RETURN char * Tcl_GetChannelName(Tcl_Channel chan);
489 /* 157 */
490 EXTERN int              Tcl_GetChannelOption(Tcl_Interp *interp,
491                                 Tcl_Channel chan, const char *optionName,
492                                 Tcl_DString *dsPtr);
493 /* 158 */
494 EXTERN CONST86 Tcl_ChannelType * Tcl_GetChannelType(Tcl_Channel chan);
495 /* 159 */
496 EXTERN int              Tcl_GetCommandInfo(Tcl_Interp *interp,
497                                 const char *cmdName, Tcl_CmdInfo *infoPtr);
498 /* 160 */
499 EXTERN CONST84_RETURN char * Tcl_GetCommandName(Tcl_Interp *interp,
500                                 Tcl_Command command);
501 /* 161 */
502 EXTERN int              Tcl_GetErrno(void);
503 /* 162 */
504 EXTERN CONST84_RETURN char * Tcl_GetHostName(void);
505 /* 163 */
506 EXTERN int              Tcl_GetInterpPath(Tcl_Interp *askInterp,
507                                 Tcl_Interp *slaveInterp);
508 /* 164 */
509 EXTERN Tcl_Interp *     Tcl_GetMaster(Tcl_Interp *interp);
510 /* 165 */
511 EXTERN const char *     Tcl_GetNameOfExecutable(void);
512 /* 166 */
513 EXTERN Tcl_Obj *        Tcl_GetObjResult(Tcl_Interp *interp);
514 #if !defined(_WIN32) && !defined(MAC_OSX_TCL) /* UNIX */
515 /* 167 */
516 EXTERN int              Tcl_GetOpenFile(Tcl_Interp *interp,
517                                 const char *chanID, int forWriting,
518                                 int checkUsage, ClientData *filePtr);
519 #endif /* UNIX */
520 #ifdef MAC_OSX_TCL /* MACOSX */
521 /* 167 */
522 EXTERN int              Tcl_GetOpenFile(Tcl_Interp *interp,
523                                 const char *chanID, int forWriting,
524                                 int checkUsage, ClientData *filePtr);
525 #endif /* MACOSX */
526 /* 168 */
527 EXTERN Tcl_PathType     Tcl_GetPathType(const char *path);
528 /* 169 */
529 EXTERN int              Tcl_Gets(Tcl_Channel chan, Tcl_DString *dsPtr);
530 /* 170 */
531 EXTERN int              Tcl_GetsObj(Tcl_Channel chan, Tcl_Obj *objPtr);
532 /* 171 */
533 EXTERN int              Tcl_GetServiceMode(void);
534 /* 172 */
535 EXTERN Tcl_Interp *     Tcl_GetSlave(Tcl_Interp *interp,
536                                 const char *slaveName);
537 /* 173 */
538 EXTERN Tcl_Channel      Tcl_GetStdChannel(int type);
539 /* 174 */
540 EXTERN CONST84_RETURN char * Tcl_GetStringResult(Tcl_Interp *interp);
541 /* 175 */
542 EXTERN CONST84_RETURN char * Tcl_GetVar(Tcl_Interp *interp,
543                                 const char *varName, int flags);
544 /* 176 */
545 EXTERN CONST84_RETURN char * Tcl_GetVar2(Tcl_Interp *interp,
546                                 const char *part1, const char *part2,
547                                 int flags);
548 /* 177 */
549 EXTERN int              Tcl_GlobalEval(Tcl_Interp *interp,
550                                 const char *command);
551 /* 178 */
552 EXTERN int              Tcl_GlobalEvalObj(Tcl_Interp *interp,
553                                 Tcl_Obj *objPtr);
554 /* 179 */
555 EXTERN int              Tcl_HideCommand(Tcl_Interp *interp,
556                                 const char *cmdName,
557                                 const char *hiddenCmdToken);
558 /* 180 */
559 EXTERN int              Tcl_Init(Tcl_Interp *interp);
560 /* 181 */
561 EXTERN void             Tcl_InitHashTable(Tcl_HashTable *tablePtr,
562                                 int keyType);
563 /* 182 */
564 EXTERN int              Tcl_InputBlocked(Tcl_Channel chan);
565 /* 183 */
566 EXTERN int              Tcl_InputBuffered(Tcl_Channel chan);
567 /* 184 */
568 EXTERN int              Tcl_InterpDeleted(Tcl_Interp *interp);
569 /* 185 */
570 EXTERN int              Tcl_IsSafe(Tcl_Interp *interp);
571 /* 186 */
572 EXTERN char *           Tcl_JoinPath(int argc, CONST84 char *const *argv,
573                                 Tcl_DString *resultPtr);
574 /* 187 */
575 EXTERN int              Tcl_LinkVar(Tcl_Interp *interp, const char *varName,
576                                 char *addr, int type);
577 /* Slot 188 is reserved */
578 /* 189 */
579 EXTERN Tcl_Channel      Tcl_MakeFileChannel(ClientData handle, int mode);
580 /* 190 */
581 EXTERN int              Tcl_MakeSafe(Tcl_Interp *interp);
582 /* 191 */
583 EXTERN Tcl_Channel      Tcl_MakeTcpClientChannel(ClientData tcpSocket);
584 /* 192 */
585 EXTERN char *           Tcl_Merge(int argc, CONST84 char *const *argv);
586 /* 193 */
587 EXTERN Tcl_HashEntry *  Tcl_NextHashEntry(Tcl_HashSearch *searchPtr);
588 /* 194 */
589 EXTERN void             Tcl_NotifyChannel(Tcl_Channel channel, int mask);
590 /* 195 */
591 EXTERN Tcl_Obj *        Tcl_ObjGetVar2(Tcl_Interp *interp, Tcl_Obj *part1Ptr,
592                                 Tcl_Obj *part2Ptr, int flags);
593 /* 196 */
594 EXTERN Tcl_Obj *        Tcl_ObjSetVar2(Tcl_Interp *interp, Tcl_Obj *part1Ptr,
595                                 Tcl_Obj *part2Ptr, Tcl_Obj *newValuePtr,
596                                 int flags);
597 /* 197 */
598 EXTERN Tcl_Channel      Tcl_OpenCommandChannel(Tcl_Interp *interp, int argc,
599                                 CONST84 char **argv, int flags);
600 /* 198 */
601 EXTERN Tcl_Channel      Tcl_OpenFileChannel(Tcl_Interp *interp,
602                                 const char *fileName, const char *modeString,
603                                 int permissions);
604 /* 199 */
605 EXTERN Tcl_Channel      Tcl_OpenTcpClient(Tcl_Interp *interp, int port,
606                                 const char *address, const char *myaddr,
607                                 int myport, int async);
608 /* 200 */
609 EXTERN Tcl_Channel      Tcl_OpenTcpServer(Tcl_Interp *interp, int port,
610                                 const char *host,
611                                 Tcl_TcpAcceptProc *acceptProc,
612                                 ClientData callbackData);
613 /* 201 */
614 EXTERN void             Tcl_Preserve(ClientData data);
615 /* 202 */
616 EXTERN void             Tcl_PrintDouble(Tcl_Interp *interp, double value,
617                                 char *dst);
618 /* 203 */
619 EXTERN int              Tcl_PutEnv(const char *assignment);
620 /* 204 */
621 EXTERN CONST84_RETURN char * Tcl_PosixError(Tcl_Interp *interp);
622 /* 205 */
623 EXTERN void             Tcl_QueueEvent(Tcl_Event *evPtr,
624                                 Tcl_QueuePosition position);
625 /* 206 */
626 EXTERN int              Tcl_Read(Tcl_Channel chan, char *bufPtr, int toRead);
627 /* 207 */
628 EXTERN void             Tcl_ReapDetachedProcs(void);
629 /* 208 */
630 EXTERN int              Tcl_RecordAndEval(Tcl_Interp *interp,
631                                 const char *cmd, int flags);
632 /* 209 */
633 EXTERN int              Tcl_RecordAndEvalObj(Tcl_Interp *interp,
634                                 Tcl_Obj *cmdPtr, int flags);
635 /* 210 */
636 EXTERN void             Tcl_RegisterChannel(Tcl_Interp *interp,
637                                 Tcl_Channel chan);
638 /* 211 */
639 EXTERN void             Tcl_RegisterObjType(const Tcl_ObjType *typePtr);
640 /* 212 */
641 EXTERN Tcl_RegExp       Tcl_RegExpCompile(Tcl_Interp *interp,
642                                 const char *pattern);
643 /* 213 */
644 EXTERN int              Tcl_RegExpExec(Tcl_Interp *interp, Tcl_RegExp regexp,
645                                 const char *text, const char *start);
646 /* 214 */
647 EXTERN int              Tcl_RegExpMatch(Tcl_Interp *interp, const char *text,
648                                 const char *pattern);
649 /* 215 */
650 EXTERN void             Tcl_RegExpRange(Tcl_RegExp regexp, int index,
651                                 CONST84 char **startPtr,
652                                 CONST84 char **endPtr);
653 /* 216 */
654 EXTERN void             Tcl_Release(ClientData clientData);
655 /* 217 */
656 EXTERN void             Tcl_ResetResult(Tcl_Interp *interp);
657 /* 218 */
658 EXTERN int              Tcl_ScanElement(const char *src, int *flagPtr);
659 /* 219 */
660 EXTERN int              Tcl_ScanCountedElement(const char *src, int length,
661                                 int *flagPtr);
662 /* 220 */
663 EXTERN int              Tcl_SeekOld(Tcl_Channel chan, int offset, int mode);
664 /* 221 */
665 EXTERN int              Tcl_ServiceAll(void);
666 /* 222 */
667 EXTERN int              Tcl_ServiceEvent(int flags);
668 /* 223 */
669 EXTERN void             Tcl_SetAssocData(Tcl_Interp *interp,
670                                 const char *name, Tcl_InterpDeleteProc *proc,
671                                 ClientData clientData);
672 /* 224 */
673 EXTERN void             Tcl_SetChannelBufferSize(Tcl_Channel chan, int sz);
674 /* 225 */
675 EXTERN int              Tcl_SetChannelOption(Tcl_Interp *interp,
676                                 Tcl_Channel chan, const char *optionName,
677                                 const char *newValue);
678 /* 226 */
679 EXTERN int              Tcl_SetCommandInfo(Tcl_Interp *interp,
680                                 const char *cmdName,
681                                 const Tcl_CmdInfo *infoPtr);
682 /* 227 */
683 EXTERN void             Tcl_SetErrno(int err);
684 /* 228 */
685 EXTERN void             Tcl_SetErrorCode(Tcl_Interp *interp, ...);
686 /* 229 */
687 EXTERN void             Tcl_SetMaxBlockTime(const Tcl_Time *timePtr);
688 /* 230 */
689 EXTERN void             Tcl_SetPanicProc(Tcl_PanicProc *panicProc);
690 /* 231 */
691 EXTERN int              Tcl_SetRecursionLimit(Tcl_Interp *interp, int depth);
692 /* 232 */
693 EXTERN void             Tcl_SetResult(Tcl_Interp *interp, char *result,
694                                 Tcl_FreeProc *freeProc);
695 /* 233 */
696 EXTERN int              Tcl_SetServiceMode(int mode);
697 /* 234 */
698 EXTERN void             Tcl_SetObjErrorCode(Tcl_Interp *interp,
699                                 Tcl_Obj *errorObjPtr);
700 /* 235 */
701 EXTERN void             Tcl_SetObjResult(Tcl_Interp *interp,
702                                 Tcl_Obj *resultObjPtr);
703 /* 236 */
704 EXTERN void             Tcl_SetStdChannel(Tcl_Channel channel, int type);
705 /* 237 */
706 EXTERN CONST84_RETURN char * Tcl_SetVar(Tcl_Interp *interp,
707                                 const char *varName, const char *newValue,
708                                 int flags);
709 /* 238 */
710 EXTERN CONST84_RETURN char * Tcl_SetVar2(Tcl_Interp *interp,
711                                 const char *part1, const char *part2,
712                                 const char *newValue, int flags);
713 /* 239 */
714 EXTERN CONST84_RETURN char * Tcl_SignalId(int sig);
715 /* 240 */
716 EXTERN CONST84_RETURN char * Tcl_SignalMsg(int sig);
717 /* 241 */
718 EXTERN void             Tcl_SourceRCFile(Tcl_Interp *interp);
719 /* 242 */
720 EXTERN int              Tcl_SplitList(Tcl_Interp *interp,
721                                 const char *listStr, int *argcPtr,
722                                 CONST84 char ***argvPtr);
723 /* 243 */
724 EXTERN void             Tcl_SplitPath(const char *path, int *argcPtr,
725                                 CONST84 char ***argvPtr);
726 /* 244 */
727 EXTERN void             Tcl_StaticPackage(Tcl_Interp *interp,
728                                 const char *pkgName,
729                                 Tcl_PackageInitProc *initProc,
730                                 Tcl_PackageInitProc *safeInitProc);
731 /* 245 */
732 EXTERN int              Tcl_StringMatch(const char *str, const char *pattern);
733 /* 246 */
734 EXTERN int              Tcl_TellOld(Tcl_Channel chan);
735 /* 247 */
736 EXTERN int              Tcl_TraceVar(Tcl_Interp *interp, const char *varName,
737                                 int flags, Tcl_VarTraceProc *proc,
738                                 ClientData clientData);
739 /* 248 */
740 EXTERN int              Tcl_TraceVar2(Tcl_Interp *interp, const char *part1,
741                                 const char *part2, int flags,
742                                 Tcl_VarTraceProc *proc,
743                                 ClientData clientData);
744 /* 249 */
745 EXTERN char *           Tcl_TranslateFileName(Tcl_Interp *interp,
746                                 const char *name, Tcl_DString *bufferPtr);
747 /* 250 */
748 EXTERN int              Tcl_Ungets(Tcl_Channel chan, const char *str,
749                                 int len, int atHead);
750 /* 251 */
751 EXTERN void             Tcl_UnlinkVar(Tcl_Interp *interp,
752                                 const char *varName);
753 /* 252 */
754 EXTERN int              Tcl_UnregisterChannel(Tcl_Interp *interp,
755                                 Tcl_Channel chan);
756 /* 253 */
757 EXTERN int              Tcl_UnsetVar(Tcl_Interp *interp, const char *varName,
758                                 int flags);
759 /* 254 */
760 EXTERN int              Tcl_UnsetVar2(Tcl_Interp *interp, const char *part1,
761                                 const char *part2, int flags);
762 /* 255 */
763 EXTERN void             Tcl_UntraceVar(Tcl_Interp *interp,
764                                 const char *varName, int flags,
765                                 Tcl_VarTraceProc *proc,
766                                 ClientData clientData);
767 /* 256 */
768 EXTERN void             Tcl_UntraceVar2(Tcl_Interp *interp,
769                                 const char *part1, const char *part2,
770                                 int flags, Tcl_VarTraceProc *proc,
771                                 ClientData clientData);
772 /* 257 */
773 EXTERN void             Tcl_UpdateLinkedVar(Tcl_Interp *interp,
774                                 const char *varName);
775 /* 258 */
776 EXTERN int              Tcl_UpVar(Tcl_Interp *interp, const char *frameName,
777                                 const char *varName, const char *localName,
778                                 int flags);
779 /* 259 */
780 EXTERN int              Tcl_UpVar2(Tcl_Interp *interp, const char *frameName,
781                                 const char *part1, const char *part2,
782                                 const char *localName, int flags);
783 /* 260 */
784 EXTERN int              Tcl_VarEval(Tcl_Interp *interp, ...);
785 /* 261 */
786 EXTERN ClientData       Tcl_VarTraceInfo(Tcl_Interp *interp,
787                                 const char *varName, int flags,
788                                 Tcl_VarTraceProc *procPtr,
789                                 ClientData prevClientData);
790 /* 262 */
791 EXTERN ClientData       Tcl_VarTraceInfo2(Tcl_Interp *interp,
792                                 const char *part1, const char *part2,
793                                 int flags, Tcl_VarTraceProc *procPtr,
794                                 ClientData prevClientData);
795 /* 263 */
796 EXTERN int              Tcl_Write(Tcl_Channel chan, const char *s, int slen);
797 /* 264 */
798 EXTERN void             Tcl_WrongNumArgs(Tcl_Interp *interp, int objc,
799                                 Tcl_Obj *const objv[], const char *message);
800 /* 265 */
801 EXTERN int              Tcl_DumpActiveMemory(const char *fileName);
802 /* 266 */
803 EXTERN void             Tcl_ValidateAllMemory(const char *file, int line);
804 /* 267 */
805 EXTERN void             Tcl_AppendResultVA(Tcl_Interp *interp,
806                                 va_list argList);
807 /* 268 */
808 EXTERN void             Tcl_AppendStringsToObjVA(Tcl_Obj *objPtr,
809                                 va_list argList);
810 /* 269 */
811 EXTERN char *           Tcl_HashStats(Tcl_HashTable *tablePtr);
812 /* 270 */
813 EXTERN CONST84_RETURN char * Tcl_ParseVar(Tcl_Interp *interp,
814                                 const char *start, CONST84 char **termPtr);
815 /* 271 */
816 EXTERN CONST84_RETURN char * Tcl_PkgPresent(Tcl_Interp *interp,
817                                 const char *name, const char *version,
818                                 int exact);
819 /* 272 */
820 EXTERN CONST84_RETURN char * Tcl_PkgPresentEx(Tcl_Interp *interp,
821                                 const char *name, const char *version,
822                                 int exact, void *clientDataPtr);
823 /* 273 */
824 EXTERN int              Tcl_PkgProvide(Tcl_Interp *interp, const char *name,
825                                 const char *version);
826 /* 274 */
827 EXTERN CONST84_RETURN char * Tcl_PkgRequire(Tcl_Interp *interp,
828                                 const char *name, const char *version,
829                                 int exact);
830 /* 275 */
831 EXTERN void             Tcl_SetErrorCodeVA(Tcl_Interp *interp,
832                                 va_list argList);
833 /* 276 */
834 EXTERN int              Tcl_VarEvalVA(Tcl_Interp *interp, va_list argList);
835 /* 277 */
836 EXTERN Tcl_Pid          Tcl_WaitPid(Tcl_Pid pid, int *statPtr, int options);
837 /* 278 */
838 EXTERN void             Tcl_PanicVA(const char *format, va_list argList);
839 /* 279 */
840 EXTERN void             Tcl_GetVersion(int *major, int *minor,
841                                 int *patchLevel, int *type);
842 /* 280 */
843 EXTERN void             Tcl_InitMemory(Tcl_Interp *interp);
844 /* 281 */
845 EXTERN Tcl_Channel      Tcl_StackChannel(Tcl_Interp *interp,
846                                 const Tcl_ChannelType *typePtr,
847                                 ClientData instanceData, int mask,
848                                 Tcl_Channel prevChan);
849 /* 282 */
850 EXTERN int              Tcl_UnstackChannel(Tcl_Interp *interp,
851                                 Tcl_Channel chan);
852 /* 283 */
853 EXTERN Tcl_Channel      Tcl_GetStackedChannel(Tcl_Channel chan);
854 /* 284 */
855 EXTERN void             Tcl_SetMainLoop(Tcl_MainLoopProc *proc);
856 /* Slot 285 is reserved */
857 /* 286 */
858 EXTERN void             Tcl_AppendObjToObj(Tcl_Obj *objPtr,
859                                 Tcl_Obj *appendObjPtr);
860 /* 287 */
861 EXTERN Tcl_Encoding     Tcl_CreateEncoding(const Tcl_EncodingType *typePtr);
862 /* 288 */
863 EXTERN void             Tcl_CreateThreadExitHandler(Tcl_ExitProc *proc,
864                                 ClientData clientData);
865 /* 289 */
866 EXTERN void             Tcl_DeleteThreadExitHandler(Tcl_ExitProc *proc,
867                                 ClientData clientData);
868 /* 290 */
869 EXTERN void             Tcl_DiscardResult(Tcl_SavedResult *statePtr);
870 /* 291 */
871 EXTERN int              Tcl_EvalEx(Tcl_Interp *interp, const char *script,
872                                 int numBytes, int flags);
873 /* 292 */
874 EXTERN int              Tcl_EvalObjv(Tcl_Interp *interp, int objc,
875                                 Tcl_Obj *const objv[], int flags);
876 /* 293 */
877 EXTERN int              Tcl_EvalObjEx(Tcl_Interp *interp, Tcl_Obj *objPtr,
878                                 int flags);
879 /* 294 */
880 EXTERN void             Tcl_ExitThread(int status);
881 /* 295 */
882 EXTERN int              Tcl_ExternalToUtf(Tcl_Interp *interp,
883                                 Tcl_Encoding encoding, const char *src,
884                                 int srcLen, int flags,
885                                 Tcl_EncodingState *statePtr, char *dst,
886                                 int dstLen, int *srcReadPtr,
887                                 int *dstWrotePtr, int *dstCharsPtr);
888 /* 296 */
889 EXTERN char *           Tcl_ExternalToUtfDString(Tcl_Encoding encoding,
890                                 const char *src, int srcLen,
891                                 Tcl_DString *dsPtr);
892 /* 297 */
893 EXTERN void             Tcl_FinalizeThread(void);
894 /* 298 */
895 EXTERN void             Tcl_FinalizeNotifier(ClientData clientData);
896 /* 299 */
897 EXTERN void             Tcl_FreeEncoding(Tcl_Encoding encoding);
898 /* 300 */
899 EXTERN Tcl_ThreadId     Tcl_GetCurrentThread(void);
900 /* 301 */
901 EXTERN Tcl_Encoding     Tcl_GetEncoding(Tcl_Interp *interp, const char *name);
902 /* 302 */
903 EXTERN CONST84_RETURN char * Tcl_GetEncodingName(Tcl_Encoding encoding);
904 /* 303 */
905 EXTERN void             Tcl_GetEncodingNames(Tcl_Interp *interp);
906 /* 304 */
907 EXTERN int              Tcl_GetIndexFromObjStruct(Tcl_Interp *interp,
908                                 Tcl_Obj *objPtr, const void *tablePtr,
909                                 int offset, const char *msg, int flags,
910                                 int *indexPtr);
911 /* 305 */
912 EXTERN void *           Tcl_GetThreadData(Tcl_ThreadDataKey *keyPtr,
913                                 int size);
914 /* 306 */
915 EXTERN Tcl_Obj *        Tcl_GetVar2Ex(Tcl_Interp *interp, const char *part1,
916                                 const char *part2, int flags);
917 /* 307 */
918 EXTERN ClientData       Tcl_InitNotifier(void);
919 /* 308 */
920 EXTERN void             Tcl_MutexLock(Tcl_Mutex *mutexPtr);
921 /* 309 */
922 EXTERN void             Tcl_MutexUnlock(Tcl_Mutex *mutexPtr);
923 /* 310 */
924 EXTERN void             Tcl_ConditionNotify(Tcl_Condition *condPtr);
925 /* 311 */
926 EXTERN void             Tcl_ConditionWait(Tcl_Condition *condPtr,
927                                 Tcl_Mutex *mutexPtr, const Tcl_Time *timePtr);
928 /* 312 */
929 EXTERN int              Tcl_NumUtfChars(const char *src, int length);
930 /* 313 */
931 EXTERN int              Tcl_ReadChars(Tcl_Channel channel, Tcl_Obj *objPtr,
932                                 int charsToRead, int appendFlag);
933 /* 314 */
934 EXTERN void             Tcl_RestoreResult(Tcl_Interp *interp,
935                                 Tcl_SavedResult *statePtr);
936 /* 315 */
937 EXTERN void             Tcl_SaveResult(Tcl_Interp *interp,
938                                 Tcl_SavedResult *statePtr);
939 /* 316 */
940 EXTERN int              Tcl_SetSystemEncoding(Tcl_Interp *interp,
941                                 const char *name);
942 /* 317 */
943 EXTERN Tcl_Obj *        Tcl_SetVar2Ex(Tcl_Interp *interp, const char *part1,
944                                 const char *part2, Tcl_Obj *newValuePtr,
945                                 int flags);
946 /* 318 */
947 EXTERN void             Tcl_ThreadAlert(Tcl_ThreadId threadId);
948 /* 319 */
949 EXTERN void             Tcl_ThreadQueueEvent(Tcl_ThreadId threadId,
950                                 Tcl_Event *evPtr, Tcl_QueuePosition position);
951 /* 320 */
952 EXTERN Tcl_UniChar      Tcl_UniCharAtIndex(const char *src, int index);
953 /* 321 */
954 EXTERN Tcl_UniChar      Tcl_UniCharToLower(int ch);
955 /* 322 */
956 EXTERN Tcl_UniChar      Tcl_UniCharToTitle(int ch);
957 /* 323 */
958 EXTERN Tcl_UniChar      Tcl_UniCharToUpper(int ch);
959 /* 324 */
960 EXTERN int              Tcl_UniCharToUtf(int ch, char *buf);
961 /* 325 */
962 EXTERN CONST84_RETURN char * Tcl_UtfAtIndex(const char *src, int index);
963 /* 326 */
964 EXTERN int              Tcl_UtfCharComplete(const char *src, int length);
965 /* 327 */
966 EXTERN int              Tcl_UtfBackslash(const char *src, int *readPtr,
967                                 char *dst);
968 /* 328 */
969 EXTERN CONST84_RETURN char * Tcl_UtfFindFirst(const char *src, int ch);
970 /* 329 */
971 EXTERN CONST84_RETURN char * Tcl_UtfFindLast(const char *src, int ch);
972 /* 330 */
973 EXTERN CONST84_RETURN char * Tcl_UtfNext(const char *src);
974 /* 331 */
975 EXTERN CONST84_RETURN char * Tcl_UtfPrev(const char *src, const char *start);
976 /* 332 */
977 EXTERN int              Tcl_UtfToExternal(Tcl_Interp *interp,
978                                 Tcl_Encoding encoding, const char *src,
979                                 int srcLen, int flags,
980                                 Tcl_EncodingState *statePtr, char *dst,
981                                 int dstLen, int *srcReadPtr,
982                                 int *dstWrotePtr, int *dstCharsPtr);
983 /* 333 */
984 EXTERN char *           Tcl_UtfToExternalDString(Tcl_Encoding encoding,
985                                 const char *src, int srcLen,
986                                 Tcl_DString *dsPtr);
987 /* 334 */
988 EXTERN int              Tcl_UtfToLower(char *src);
989 /* 335 */
990 EXTERN int              Tcl_UtfToTitle(char *src);
991 /* 336 */
992 EXTERN int              Tcl_UtfToUniChar(const char *src, Tcl_UniChar *chPtr);
993 /* 337 */
994 EXTERN int              Tcl_UtfToUpper(char *src);
995 /* 338 */
996 EXTERN int              Tcl_WriteChars(Tcl_Channel chan, const char *src,
997                                 int srcLen);
998 /* 339 */
999 EXTERN int              Tcl_WriteObj(Tcl_Channel chan, Tcl_Obj *objPtr);
1000 /* 340 */
1001 EXTERN char *           Tcl_GetString(Tcl_Obj *objPtr);
1002 /* 341 */
1003 EXTERN CONST84_RETURN char * Tcl_GetDefaultEncodingDir(void);
1004 /* 342 */
1005 EXTERN void             Tcl_SetDefaultEncodingDir(const char *path);
1006 /* 343 */
1007 EXTERN void             Tcl_AlertNotifier(ClientData clientData);
1008 /* 344 */
1009 EXTERN void             Tcl_ServiceModeHook(int mode);
1010 /* 345 */
1011 EXTERN int              Tcl_UniCharIsAlnum(int ch);
1012 /* 346 */
1013 EXTERN int              Tcl_UniCharIsAlpha(int ch);
1014 /* 347 */
1015 EXTERN int              Tcl_UniCharIsDigit(int ch);
1016 /* 348 */
1017 EXTERN int              Tcl_UniCharIsLower(int ch);
1018 /* 349 */
1019 EXTERN int              Tcl_UniCharIsSpace(int ch);
1020 /* 350 */
1021 EXTERN int              Tcl_UniCharIsUpper(int ch);
1022 /* 351 */
1023 EXTERN int              Tcl_UniCharIsWordChar(int ch);
1024 /* 352 */
1025 EXTERN int              Tcl_UniCharLen(const Tcl_UniChar *uniStr);
1026 /* 353 */
1027 EXTERN int              Tcl_UniCharNcmp(const Tcl_UniChar *ucs,
1028                                 const Tcl_UniChar *uct,
1029                                 unsigned long numChars);
1030 /* 354 */
1031 EXTERN char *           Tcl_UniCharToUtfDString(const Tcl_UniChar *uniStr,
1032                                 int uniLength, Tcl_DString *dsPtr);
1033 /* 355 */
1034 EXTERN Tcl_UniChar *    Tcl_UtfToUniCharDString(const char *src, int length,
1035                                 Tcl_DString *dsPtr);
1036 /* 356 */
1037 EXTERN Tcl_RegExp       Tcl_GetRegExpFromObj(Tcl_Interp *interp,
1038                                 Tcl_Obj *patObj, int flags);
1039 /* 357 */
1040 EXTERN Tcl_Obj *        Tcl_EvalTokens(Tcl_Interp *interp,
1041                                 Tcl_Token *tokenPtr, int count);
1042 /* 358 */
1043 EXTERN void             Tcl_FreeParse(Tcl_Parse *parsePtr);
1044 /* 359 */
1045 EXTERN void             Tcl_LogCommandInfo(Tcl_Interp *interp,
1046                                 const char *script, const char *command,
1047                                 int length);
1048 /* 360 */
1049 EXTERN int              Tcl_ParseBraces(Tcl_Interp *interp,
1050                                 const char *start, int numBytes,
1051                                 Tcl_Parse *parsePtr, int append,
1052                                 CONST84 char **termPtr);
1053 /* 361 */
1054 EXTERN int              Tcl_ParseCommand(Tcl_Interp *interp,
1055                                 const char *start, int numBytes, int nested,
1056                                 Tcl_Parse *parsePtr);
1057 /* 362 */
1058 EXTERN int              Tcl_ParseExpr(Tcl_Interp *interp, const char *start,
1059                                 int numBytes, Tcl_Parse *parsePtr);
1060 /* 363 */
1061 EXTERN int              Tcl_ParseQuotedString(Tcl_Interp *interp,
1062                                 const char *start, int numBytes,
1063                                 Tcl_Parse *parsePtr, int append,
1064                                 CONST84 char **termPtr);
1065 /* 364 */
1066 EXTERN int              Tcl_ParseVarName(Tcl_Interp *interp,
1067                                 const char *start, int numBytes,
1068                                 Tcl_Parse *parsePtr, int append);
1069 /* 365 */
1070 EXTERN char *           Tcl_GetCwd(Tcl_Interp *interp, Tcl_DString *cwdPtr);
1071 /* 366 */
1072 EXTERN int              Tcl_Chdir(const char *dirName);
1073 /* 367 */
1074 EXTERN int              Tcl_Access(const char *path, int mode);
1075 /* 368 */
1076 EXTERN int              Tcl_Stat(const char *path, struct stat *bufPtr);
1077 /* 369 */
1078 EXTERN int              Tcl_UtfNcmp(const char *s1, const char *s2,
1079                                 unsigned long n);
1080 /* 370 */
1081 EXTERN int              Tcl_UtfNcasecmp(const char *s1, const char *s2,
1082                                 unsigned long n);
1083 /* 371 */
1084 EXTERN int              Tcl_StringCaseMatch(const char *str,
1085                                 const char *pattern, int nocase);
1086 /* 372 */
1087 EXTERN int              Tcl_UniCharIsControl(int ch);
1088 /* 373 */
1089 EXTERN int              Tcl_UniCharIsGraph(int ch);
1090 /* 374 */
1091 EXTERN int              Tcl_UniCharIsPrint(int ch);
1092 /* 375 */
1093 EXTERN int              Tcl_UniCharIsPunct(int ch);
1094 /* 376 */
1095 EXTERN int              Tcl_RegExpExecObj(Tcl_Interp *interp,
1096                                 Tcl_RegExp regexp, Tcl_Obj *textObj,
1097                                 int offset, int nmatches, int flags);
1098 /* 377 */
1099 EXTERN void             Tcl_RegExpGetInfo(Tcl_RegExp regexp,
1100                                 Tcl_RegExpInfo *infoPtr);
1101 /* 378 */
1102 EXTERN Tcl_Obj *        Tcl_NewUnicodeObj(const Tcl_UniChar *unicode,
1103                                 int numChars);
1104 /* 379 */
1105 EXTERN void             Tcl_SetUnicodeObj(Tcl_Obj *objPtr,
1106                                 const Tcl_UniChar *unicode, int numChars);
1107 /* 380 */
1108 EXTERN int              Tcl_GetCharLength(Tcl_Obj *objPtr);
1109 /* 381 */
1110 EXTERN Tcl_UniChar      Tcl_GetUniChar(Tcl_Obj *objPtr, int index);
1111 /* 382 */
1112 EXTERN Tcl_UniChar *    Tcl_GetUnicode(Tcl_Obj *objPtr);
1113 /* 383 */
1114 EXTERN Tcl_Obj *        Tcl_GetRange(Tcl_Obj *objPtr, int first, int last);
1115 /* 384 */
1116 EXTERN void             Tcl_AppendUnicodeToObj(Tcl_Obj *objPtr,
1117                                 const Tcl_UniChar *unicode, int length);
1118 /* 385 */
1119 EXTERN int              Tcl_RegExpMatchObj(Tcl_Interp *interp,
1120                                 Tcl_Obj *textObj, Tcl_Obj *patternObj);
1121 /* 386 */
1122 EXTERN void             Tcl_SetNotifier(Tcl_NotifierProcs *notifierProcPtr);
1123 /* 387 */
1124 EXTERN Tcl_Mutex *      Tcl_GetAllocMutex(void);
1125 /* 388 */
1126 EXTERN int              Tcl_GetChannelNames(Tcl_Interp *interp);
1127 /* 389 */
1128 EXTERN int              Tcl_GetChannelNamesEx(Tcl_Interp *interp,
1129                                 const char *pattern);
1130 /* 390 */
1131 EXTERN int              Tcl_ProcObjCmd(ClientData clientData,
1132                                 Tcl_Interp *interp, int objc,
1133                                 Tcl_Obj *const objv[]);
1134 /* 391 */
1135 EXTERN void             Tcl_ConditionFinalize(Tcl_Condition *condPtr);
1136 /* 392 */
1137 EXTERN void             Tcl_MutexFinalize(Tcl_Mutex *mutex);
1138 /* 393 */
1139 EXTERN int              Tcl_CreateThread(Tcl_ThreadId *idPtr,
1140                                 Tcl_ThreadCreateProc *proc,
1141                                 ClientData clientData, int stackSize,
1142                                 int flags);
1143 /* 394 */
1144 EXTERN int              Tcl_ReadRaw(Tcl_Channel chan, char *dst,
1145                                 int bytesToRead);
1146 /* 395 */
1147 EXTERN int              Tcl_WriteRaw(Tcl_Channel chan, const char *src,
1148                                 int srcLen);
1149 /* 396 */
1150 EXTERN Tcl_Channel      Tcl_GetTopChannel(Tcl_Channel chan);
1151 /* 397 */
1152 EXTERN int              Tcl_ChannelBuffered(Tcl_Channel chan);
1153 /* 398 */
1154 EXTERN CONST84_RETURN char * Tcl_ChannelName(
1155                                 const Tcl_ChannelType *chanTypePtr);
1156 /* 399 */
1157 EXTERN Tcl_ChannelTypeVersion Tcl_ChannelVersion(
1158                                 const Tcl_ChannelType *chanTypePtr);
1159 /* 400 */
1160 EXTERN Tcl_DriverBlockModeProc * Tcl_ChannelBlockModeProc(
1161                                 const Tcl_ChannelType *chanTypePtr);
1162 /* 401 */
1163 EXTERN Tcl_DriverCloseProc * Tcl_ChannelCloseProc(
1164                                 const Tcl_ChannelType *chanTypePtr);
1165 /* 402 */
1166 EXTERN Tcl_DriverClose2Proc * Tcl_ChannelClose2Proc(
1167                                 const Tcl_ChannelType *chanTypePtr);
1168 /* 403 */
1169 EXTERN Tcl_DriverInputProc * Tcl_ChannelInputProc(
1170                                 const Tcl_ChannelType *chanTypePtr);
1171 /* 404 */
1172 EXTERN Tcl_DriverOutputProc * Tcl_ChannelOutputProc(
1173                                 const Tcl_ChannelType *chanTypePtr);
1174 /* 405 */
1175 EXTERN Tcl_DriverSeekProc * Tcl_ChannelSeekProc(
1176                                 const Tcl_ChannelType *chanTypePtr);
1177 /* 406 */
1178 EXTERN Tcl_DriverSetOptionProc * Tcl_ChannelSetOptionProc(
1179                                 const Tcl_ChannelType *chanTypePtr);
1180 /* 407 */
1181 EXTERN Tcl_DriverGetOptionProc * Tcl_ChannelGetOptionProc(
1182                                 const Tcl_ChannelType *chanTypePtr);
1183 /* 408 */
1184 EXTERN Tcl_DriverWatchProc * Tcl_ChannelWatchProc(
1185                                 const Tcl_ChannelType *chanTypePtr);
1186 /* 409 */
1187 EXTERN Tcl_DriverGetHandleProc * Tcl_ChannelGetHandleProc(
1188                                 const Tcl_ChannelType *chanTypePtr);
1189 /* 410 */
1190 EXTERN Tcl_DriverFlushProc * Tcl_ChannelFlushProc(
1191                                 const Tcl_ChannelType *chanTypePtr);
1192 /* 411 */
1193 EXTERN Tcl_DriverHandlerProc * Tcl_ChannelHandlerProc(
1194                                 const Tcl_ChannelType *chanTypePtr);
1195 /* 412 */
1196 EXTERN int              Tcl_JoinThread(Tcl_ThreadId threadId, int *result);
1197 /* 413 */
1198 EXTERN int              Tcl_IsChannelShared(Tcl_Channel channel);
1199 /* 414 */
1200 EXTERN int              Tcl_IsChannelRegistered(Tcl_Interp *interp,
1201                                 Tcl_Channel channel);
1202 /* 415 */
1203 EXTERN void             Tcl_CutChannel(Tcl_Channel channel);
1204 /* 416 */
1205 EXTERN void             Tcl_SpliceChannel(Tcl_Channel channel);
1206 /* 417 */
1207 EXTERN void             Tcl_ClearChannelHandlers(Tcl_Channel channel);
1208 /* 418 */
1209 EXTERN int              Tcl_IsChannelExisting(const char *channelName);
1210 /* 419 */
1211 EXTERN int              Tcl_UniCharNcasecmp(const Tcl_UniChar *ucs,
1212                                 const Tcl_UniChar *uct,
1213                                 unsigned long numChars);
1214 /* 420 */
1215 EXTERN int              Tcl_UniCharCaseMatch(const Tcl_UniChar *uniStr,
1216                                 const Tcl_UniChar *uniPattern, int nocase);
1217 /* 421 */
1218 EXTERN Tcl_HashEntry *  Tcl_FindHashEntry(Tcl_HashTable *tablePtr,
1219                                 const void *key);
1220 /* 422 */
1221 EXTERN Tcl_HashEntry *  Tcl_CreateHashEntry(Tcl_HashTable *tablePtr,
1222                                 const void *key, int *newPtr);
1223 /* 423 */
1224 EXTERN void             Tcl_InitCustomHashTable(Tcl_HashTable *tablePtr,
1225                                 int keyType, const Tcl_HashKeyType *typePtr);
1226 /* 424 */
1227 EXTERN void             Tcl_InitObjHashTable(Tcl_HashTable *tablePtr);
1228 /* 425 */
1229 EXTERN ClientData       Tcl_CommandTraceInfo(Tcl_Interp *interp,
1230                                 const char *varName, int flags,
1231                                 Tcl_CommandTraceProc *procPtr,
1232                                 ClientData prevClientData);
1233 /* 426 */
1234 EXTERN int              Tcl_TraceCommand(Tcl_Interp *interp,
1235                                 const char *varName, int flags,
1236                                 Tcl_CommandTraceProc *proc,
1237                                 ClientData clientData);
1238 /* 427 */
1239 EXTERN void             Tcl_UntraceCommand(Tcl_Interp *interp,
1240                                 const char *varName, int flags,
1241                                 Tcl_CommandTraceProc *proc,
1242                                 ClientData clientData);
1243 /* 428 */
1244 EXTERN char *           Tcl_AttemptAlloc(unsigned int size);
1245 /* 429 */
1246 EXTERN char *           Tcl_AttemptDbCkalloc(unsigned int size,
1247                                 const char *file, int line);
1248 /* 430 */
1249 EXTERN char *           Tcl_AttemptRealloc(char *ptr, unsigned int size);
1250 /* 431 */
1251 EXTERN char *           Tcl_AttemptDbCkrealloc(char *ptr, unsigned int size,
1252                                 const char *file, int line);
1253 /* 432 */
1254 EXTERN int              Tcl_AttemptSetObjLength(Tcl_Obj *objPtr, int length);
1255 /* 433 */
1256 EXTERN Tcl_ThreadId     Tcl_GetChannelThread(Tcl_Channel channel);
1257 /* 434 */
1258 EXTERN Tcl_UniChar *    Tcl_GetUnicodeFromObj(Tcl_Obj *objPtr,
1259                                 int *lengthPtr);
1260 /* 435 */
1261 EXTERN int              Tcl_GetMathFuncInfo(Tcl_Interp *interp,
1262                                 const char *name, int *numArgsPtr,
1263                                 Tcl_ValueType **argTypesPtr,
1264                                 Tcl_MathProc **procPtr,
1265                                 ClientData *clientDataPtr);
1266 /* 436 */
1267 EXTERN Tcl_Obj *        Tcl_ListMathFuncs(Tcl_Interp *interp,
1268                                 const char *pattern);
1269 /* 437 */
1270 EXTERN Tcl_Obj *        Tcl_SubstObj(Tcl_Interp *interp, Tcl_Obj *objPtr,
1271                                 int flags);
1272 /* 438 */
1273 EXTERN int              Tcl_DetachChannel(Tcl_Interp *interp,
1274                                 Tcl_Channel channel);
1275 /* 439 */
1276 EXTERN int              Tcl_IsStandardChannel(Tcl_Channel channel);
1277 /* 440 */
1278 EXTERN int              Tcl_FSCopyFile(Tcl_Obj *srcPathPtr,
1279                                 Tcl_Obj *destPathPtr);
1280 /* 441 */
1281 EXTERN int              Tcl_FSCopyDirectory(Tcl_Obj *srcPathPtr,
1282                                 Tcl_Obj *destPathPtr, Tcl_Obj **errorPtr);
1283 /* 442 */
1284 EXTERN int              Tcl_FSCreateDirectory(Tcl_Obj *pathPtr);
1285 /* 443 */
1286 EXTERN int              Tcl_FSDeleteFile(Tcl_Obj *pathPtr);
1287 /* 444 */
1288 EXTERN int              Tcl_FSLoadFile(Tcl_Interp *interp, Tcl_Obj *pathPtr,
1289                                 const char *sym1, const char *sym2,
1290                                 Tcl_PackageInitProc **proc1Ptr,
1291                                 Tcl_PackageInitProc **proc2Ptr,
1292                                 Tcl_LoadHandle *handlePtr,
1293                                 Tcl_FSUnloadFileProc **unloadProcPtr);
1294 /* 445 */
1295 EXTERN int              Tcl_FSMatchInDirectory(Tcl_Interp *interp,
1296                                 Tcl_Obj *result, Tcl_Obj *pathPtr,
1297                                 const char *pattern, Tcl_GlobTypeData *types);
1298 /* 446 */
1299 EXTERN Tcl_Obj *        Tcl_FSLink(Tcl_Obj *pathPtr, Tcl_Obj *toPtr,
1300                                 int linkAction);
1301 /* 447 */
1302 EXTERN int              Tcl_FSRemoveDirectory(Tcl_Obj *pathPtr,
1303                                 int recursive, Tcl_Obj **errorPtr);
1304 /* 448 */
1305 EXTERN int              Tcl_FSRenameFile(Tcl_Obj *srcPathPtr,
1306                                 Tcl_Obj *destPathPtr);
1307 /* 449 */
1308 EXTERN int              Tcl_FSLstat(Tcl_Obj *pathPtr, Tcl_StatBuf *buf);
1309 /* 450 */
1310 EXTERN int              Tcl_FSUtime(Tcl_Obj *pathPtr, struct utimbuf *tval);
1311 /* 451 */
1312 EXTERN int              Tcl_FSFileAttrsGet(Tcl_Interp *interp, int index,
1313                                 Tcl_Obj *pathPtr, Tcl_Obj **objPtrRef);
1314 /* 452 */
1315 EXTERN int              Tcl_FSFileAttrsSet(Tcl_Interp *interp, int index,
1316                                 Tcl_Obj *pathPtr, Tcl_Obj *objPtr);
1317 /* 453 */
1318 EXTERN const char *CONST86 * Tcl_FSFileAttrStrings(Tcl_Obj *pathPtr,
1319                                 Tcl_Obj **objPtrRef);
1320 /* 454 */
1321 EXTERN int              Tcl_FSStat(Tcl_Obj *pathPtr, Tcl_StatBuf *buf);
1322 /* 455 */
1323 EXTERN int              Tcl_FSAccess(Tcl_Obj *pathPtr, int mode);
1324 /* 456 */
1325 EXTERN Tcl_Channel      Tcl_FSOpenFileChannel(Tcl_Interp *interp,
1326                                 Tcl_Obj *pathPtr, const char *modeString,
1327                                 int permissions);
1328 /* 457 */
1329 EXTERN Tcl_Obj *        Tcl_FSGetCwd(Tcl_Interp *interp);
1330 /* 458 */
1331 EXTERN int              Tcl_FSChdir(Tcl_Obj *pathPtr);
1332 /* 459 */
1333 EXTERN int              Tcl_FSConvertToPathType(Tcl_Interp *interp,
1334                                 Tcl_Obj *pathPtr);
1335 /* 460 */
1336 EXTERN Tcl_Obj *        Tcl_FSJoinPath(Tcl_Obj *listObj, int elements);
1337 /* 461 */
1338 EXTERN Tcl_Obj *        Tcl_FSSplitPath(Tcl_Obj *pathPtr, int *lenPtr);
1339 /* 462 */
1340 EXTERN int              Tcl_FSEqualPaths(Tcl_Obj *firstPtr,
1341                                 Tcl_Obj *secondPtr);
1342 /* 463 */
1343 EXTERN Tcl_Obj *        Tcl_FSGetNormalizedPath(Tcl_Interp *interp,
1344                                 Tcl_Obj *pathPtr);
1345 /* 464 */
1346 EXTERN Tcl_Obj *        Tcl_FSJoinToPath(Tcl_Obj *pathPtr, int objc,
1347                                 Tcl_Obj *const objv[]);
1348 /* 465 */
1349 EXTERN ClientData       Tcl_FSGetInternalRep(Tcl_Obj *pathPtr,
1350                                 const Tcl_Filesystem *fsPtr);
1351 /* 466 */
1352 EXTERN Tcl_Obj *        Tcl_FSGetTranslatedPath(Tcl_Interp *interp,
1353                                 Tcl_Obj *pathPtr);
1354 /* 467 */
1355 EXTERN int              Tcl_FSEvalFile(Tcl_Interp *interp, Tcl_Obj *fileName);
1356 /* 468 */
1357 EXTERN Tcl_Obj *        Tcl_FSNewNativePath(
1358                                 const Tcl_Filesystem *fromFilesystem,
1359                                 ClientData clientData);
1360 /* 469 */
1361 EXTERN const void *     Tcl_FSGetNativePath(Tcl_Obj *pathPtr);
1362 /* 470 */
1363 EXTERN Tcl_Obj *        Tcl_FSFileSystemInfo(Tcl_Obj *pathPtr);
1364 /* 471 */
1365 EXTERN Tcl_Obj *        Tcl_FSPathSeparator(Tcl_Obj *pathPtr);
1366 /* 472 */
1367 EXTERN Tcl_Obj *        Tcl_FSListVolumes(void);
1368 /* 473 */
1369 EXTERN int              Tcl_FSRegister(ClientData clientData,
1370                                 const Tcl_Filesystem *fsPtr);
1371 /* 474 */
1372 EXTERN int              Tcl_FSUnregister(const Tcl_Filesystem *fsPtr);
1373 /* 475 */
1374 EXTERN ClientData       Tcl_FSData(const Tcl_Filesystem *fsPtr);
1375 /* 476 */
1376 EXTERN const char *     Tcl_FSGetTranslatedStringPath(Tcl_Interp *interp,
1377                                 Tcl_Obj *pathPtr);
1378 /* 477 */
1379 EXTERN CONST86 Tcl_Filesystem * Tcl_FSGetFileSystemForPath(Tcl_Obj *pathPtr);
1380 /* 478 */
1381 EXTERN Tcl_PathType     Tcl_FSGetPathType(Tcl_Obj *pathPtr);
1382 /* 479 */
1383 EXTERN int              Tcl_OutputBuffered(Tcl_Channel chan);
1384 /* 480 */
1385 EXTERN void             Tcl_FSMountsChanged(const Tcl_Filesystem *fsPtr);
1386 /* 481 */
1387 EXTERN int              Tcl_EvalTokensStandard(Tcl_Interp *interp,
1388                                 Tcl_Token *tokenPtr, int count);
1389 /* 482 */
1390 EXTERN void             Tcl_GetTime(Tcl_Time *timeBuf);
1391 /* 483 */
1392 EXTERN Tcl_Trace        Tcl_CreateObjTrace(Tcl_Interp *interp, int level,
1393                                 int flags, Tcl_CmdObjTraceProc *objProc,
1394                                 ClientData clientData,
1395                                 Tcl_CmdObjTraceDeleteProc *delProc);
1396 /* 484 */
1397 EXTERN int              Tcl_GetCommandInfoFromToken(Tcl_Command token,
1398                                 Tcl_CmdInfo *infoPtr);
1399 /* 485 */
1400 EXTERN int              Tcl_SetCommandInfoFromToken(Tcl_Command token,
1401                                 const Tcl_CmdInfo *infoPtr);
1402 /* 486 */
1403 EXTERN Tcl_Obj *        Tcl_DbNewWideIntObj(Tcl_WideInt wideValue,
1404                                 const char *file, int line);
1405 /* 487 */
1406 EXTERN int              Tcl_GetWideIntFromObj(Tcl_Interp *interp,
1407                                 Tcl_Obj *objPtr, Tcl_WideInt *widePtr);
1408 /* 488 */
1409 EXTERN Tcl_Obj *        Tcl_NewWideIntObj(Tcl_WideInt wideValue);
1410 /* 489 */
1411 EXTERN void             Tcl_SetWideIntObj(Tcl_Obj *objPtr,
1412                                 Tcl_WideInt wideValue);
1413 /* 490 */
1414 EXTERN Tcl_StatBuf *    Tcl_AllocStatBuf(void);
1415 /* 491 */
1416 EXTERN Tcl_WideInt      Tcl_Seek(Tcl_Channel chan, Tcl_WideInt offset,
1417                                 int mode);
1418 /* 492 */
1419 EXTERN Tcl_WideInt      Tcl_Tell(Tcl_Channel chan);
1420 /* 493 */
1421 EXTERN Tcl_DriverWideSeekProc * Tcl_ChannelWideSeekProc(
1422                                 const Tcl_ChannelType *chanTypePtr);
1423 /* 494 */
1424 EXTERN int              Tcl_DictObjPut(Tcl_Interp *interp, Tcl_Obj *dictPtr,
1425                                 Tcl_Obj *keyPtr, Tcl_Obj *valuePtr);
1426 /* 495 */
1427 EXTERN int              Tcl_DictObjGet(Tcl_Interp *interp, Tcl_Obj *dictPtr,
1428                                 Tcl_Obj *keyPtr, Tcl_Obj **valuePtrPtr);
1429 /* 496 */
1430 EXTERN int              Tcl_DictObjRemove(Tcl_Interp *interp,
1431                                 Tcl_Obj *dictPtr, Tcl_Obj *keyPtr);
1432 /* 497 */
1433 EXTERN int              Tcl_DictObjSize(Tcl_Interp *interp, Tcl_Obj *dictPtr,
1434                                 int *sizePtr);
1435 /* 498 */
1436 EXTERN int              Tcl_DictObjFirst(Tcl_Interp *interp,
1437                                 Tcl_Obj *dictPtr, Tcl_DictSearch *searchPtr,
1438                                 Tcl_Obj **keyPtrPtr, Tcl_Obj **valuePtrPtr,
1439                                 int *donePtr);
1440 /* 499 */
1441 EXTERN void             Tcl_DictObjNext(Tcl_DictSearch *searchPtr,
1442                                 Tcl_Obj **keyPtrPtr, Tcl_Obj **valuePtrPtr,
1443                                 int *donePtr);
1444 /* 500 */
1445 EXTERN void             Tcl_DictObjDone(Tcl_DictSearch *searchPtr);
1446 /* 501 */
1447 EXTERN int              Tcl_DictObjPutKeyList(Tcl_Interp *interp,
1448                                 Tcl_Obj *dictPtr, int keyc,
1449                                 Tcl_Obj *const *keyv, Tcl_Obj *valuePtr);
1450 /* 502 */
1451 EXTERN int              Tcl_DictObjRemoveKeyList(Tcl_Interp *interp,
1452                                 Tcl_Obj *dictPtr, int keyc,
1453                                 Tcl_Obj *const *keyv);
1454 /* 503 */
1455 EXTERN Tcl_Obj *        Tcl_NewDictObj(void);
1456 /* 504 */
1457 EXTERN Tcl_Obj *        Tcl_DbNewDictObj(const char *file, int line);
1458 /* 505 */
1459 EXTERN void             Tcl_RegisterConfig(Tcl_Interp *interp,
1460                                 const char *pkgName,
1461                                 const Tcl_Config *configuration,
1462                                 const char *valEncoding);
1463 /* 506 */
1464 EXTERN Tcl_Namespace *  Tcl_CreateNamespace(Tcl_Interp *interp,
1465                                 const char *name, ClientData clientData,
1466                                 Tcl_NamespaceDeleteProc *deleteProc);
1467 /* 507 */
1468 EXTERN void             Tcl_DeleteNamespace(Tcl_Namespace *nsPtr);
1469 /* 508 */
1470 EXTERN int              Tcl_AppendExportList(Tcl_Interp *interp,
1471                                 Tcl_Namespace *nsPtr, Tcl_Obj *objPtr);
1472 /* 509 */
1473 EXTERN int              Tcl_Export(Tcl_Interp *interp, Tcl_Namespace *nsPtr,
1474                                 const char *pattern, int resetListFirst);
1475 /* 510 */
1476 EXTERN int              Tcl_Import(Tcl_Interp *interp, Tcl_Namespace *nsPtr,
1477                                 const char *pattern, int allowOverwrite);
1478 /* 511 */
1479 EXTERN int              Tcl_ForgetImport(Tcl_Interp *interp,
1480                                 Tcl_Namespace *nsPtr, const char *pattern);
1481 /* 512 */
1482 EXTERN Tcl_Namespace *  Tcl_GetCurrentNamespace(Tcl_Interp *interp);
1483 /* 513 */
1484 EXTERN Tcl_Namespace *  Tcl_GetGlobalNamespace(Tcl_Interp *interp);
1485 /* 514 */
1486 EXTERN Tcl_Namespace *  Tcl_FindNamespace(Tcl_Interp *interp,
1487                                 const char *name,
1488                                 Tcl_Namespace *contextNsPtr, int flags);
1489 /* 515 */
1490 EXTERN Tcl_Command      Tcl_FindCommand(Tcl_Interp *interp, const char *name,
1491                                 Tcl_Namespace *contextNsPtr, int flags);
1492 /* 516 */
1493 EXTERN Tcl_Command      Tcl_GetCommandFromObj(Tcl_Interp *interp,
1494                                 Tcl_Obj *objPtr);
1495 /* 517 */
1496 EXTERN void             Tcl_GetCommandFullName(Tcl_Interp *interp,
1497                                 Tcl_Command command, Tcl_Obj *objPtr);
1498 /* 518 */
1499 EXTERN int              Tcl_FSEvalFileEx(Tcl_Interp *interp,
1500                                 Tcl_Obj *fileName, const char *encodingName);
1501 /* 519 */
1502 EXTERN Tcl_ExitProc *   Tcl_SetExitProc(Tcl_ExitProc *proc);
1503 /* 520 */
1504 EXTERN void             Tcl_LimitAddHandler(Tcl_Interp *interp, int type,
1505                                 Tcl_LimitHandlerProc *handlerProc,
1506                                 ClientData clientData,
1507                                 Tcl_LimitHandlerDeleteProc *deleteProc);
1508 /* 521 */
1509 EXTERN void             Tcl_LimitRemoveHandler(Tcl_Interp *interp, int type,
1510                                 Tcl_LimitHandlerProc *handlerProc,
1511                                 ClientData clientData);
1512 /* 522 */
1513 EXTERN int              Tcl_LimitReady(Tcl_Interp *interp);
1514 /* 523 */
1515 EXTERN int              Tcl_LimitCheck(Tcl_Interp *interp);
1516 /* 524 */
1517 EXTERN int              Tcl_LimitExceeded(Tcl_Interp *interp);
1518 /* 525 */
1519 EXTERN void             Tcl_LimitSetCommands(Tcl_Interp *interp,
1520                                 int commandLimit);
1521 /* 526 */
1522 EXTERN void             Tcl_LimitSetTime(Tcl_Interp *interp,
1523                                 Tcl_Time *timeLimitPtr);
1524 /* 527 */
1525 EXTERN void             Tcl_LimitSetGranularity(Tcl_Interp *interp, int type,
1526                                 int granularity);
1527 /* 528 */
1528 EXTERN int              Tcl_LimitTypeEnabled(Tcl_Interp *interp, int type);
1529 /* 529 */
1530 EXTERN int              Tcl_LimitTypeExceeded(Tcl_Interp *interp, int type);
1531 /* 530 */
1532 EXTERN void             Tcl_LimitTypeSet(Tcl_Interp *interp, int type);
1533 /* 531 */
1534 EXTERN void             Tcl_LimitTypeReset(Tcl_Interp *interp, int type);
1535 /* 532 */
1536 EXTERN int              Tcl_LimitGetCommands(Tcl_Interp *interp);
1537 /* 533 */
1538 EXTERN void             Tcl_LimitGetTime(Tcl_Interp *interp,
1539                                 Tcl_Time *timeLimitPtr);
1540 /* 534 */
1541 EXTERN int              Tcl_LimitGetGranularity(Tcl_Interp *interp, int type);
1542 /* 535 */
1543 EXTERN Tcl_InterpState  Tcl_SaveInterpState(Tcl_Interp *interp, int status);
1544 /* 536 */
1545 EXTERN int              Tcl_RestoreInterpState(Tcl_Interp *interp,
1546                                 Tcl_InterpState state);
1547 /* 537 */
1548 EXTERN void             Tcl_DiscardInterpState(Tcl_InterpState state);
1549 /* 538 */
1550 EXTERN int              Tcl_SetReturnOptions(Tcl_Interp *interp,
1551                                 Tcl_Obj *options);
1552 /* 539 */
1553 EXTERN Tcl_Obj *        Tcl_GetReturnOptions(Tcl_Interp *interp, int result);
1554 /* 540 */
1555 EXTERN int              Tcl_IsEnsemble(Tcl_Command token);
1556 /* 541 */
1557 EXTERN Tcl_Command      Tcl_CreateEnsemble(Tcl_Interp *interp,
1558                                 const char *name,
1559                                 Tcl_Namespace *namespacePtr, int flags);
1560 /* 542 */
1561 EXTERN Tcl_Command      Tcl_FindEnsemble(Tcl_Interp *interp,
1562                                 Tcl_Obj *cmdNameObj, int flags);
1563 /* 543 */
1564 EXTERN int              Tcl_SetEnsembleSubcommandList(Tcl_Interp *interp,
1565                                 Tcl_Command token, Tcl_Obj *subcmdList);
1566 /* 544 */
1567 EXTERN int              Tcl_SetEnsembleMappingDict(Tcl_Interp *interp,
1568                                 Tcl_Command token, Tcl_Obj *mapDict);
1569 /* 545 */
1570 EXTERN int              Tcl_SetEnsembleUnknownHandler(Tcl_Interp *interp,
1571                                 Tcl_Command token, Tcl_Obj *unknownList);
1572 /* 546 */
1573 EXTERN int              Tcl_SetEnsembleFlags(Tcl_Interp *interp,
1574                                 Tcl_Command token, int flags);
1575 /* 547 */
1576 EXTERN int              Tcl_GetEnsembleSubcommandList(Tcl_Interp *interp,
1577                                 Tcl_Command token, Tcl_Obj **subcmdListPtr);
1578 /* 548 */
1579 EXTERN int              Tcl_GetEnsembleMappingDict(Tcl_Interp *interp,
1580                                 Tcl_Command token, Tcl_Obj **mapDictPtr);
1581 /* 549 */
1582 EXTERN int              Tcl_GetEnsembleUnknownHandler(Tcl_Interp *interp,
1583                                 Tcl_Command token, Tcl_Obj **unknownListPtr);
1584 /* 550 */
1585 EXTERN int              Tcl_GetEnsembleFlags(Tcl_Interp *interp,
1586                                 Tcl_Command token, int *flagsPtr);
1587 /* 551 */
1588 EXTERN int              Tcl_GetEnsembleNamespace(Tcl_Interp *interp,
1589                                 Tcl_Command token,
1590                                 Tcl_Namespace **namespacePtrPtr);
1591 /* 552 */
1592 EXTERN void             Tcl_SetTimeProc(Tcl_GetTimeProc *getProc,
1593                                 Tcl_ScaleTimeProc *scaleProc,
1594                                 ClientData clientData);
1595 /* 553 */
1596 EXTERN void             Tcl_QueryTimeProc(Tcl_GetTimeProc **getProc,
1597                                 Tcl_ScaleTimeProc **scaleProc,
1598                                 ClientData *clientData);
1599 /* 554 */
1600 EXTERN Tcl_DriverThreadActionProc * Tcl_ChannelThreadActionProc(
1601                                 const Tcl_ChannelType *chanTypePtr);
1602 /* 555 */
1603 EXTERN Tcl_Obj *        Tcl_NewBignumObj(mp_int *value);
1604 /* 556 */
1605 EXTERN Tcl_Obj *        Tcl_DbNewBignumObj(mp_int *value, const char *file,
1606                                 int line);
1607 /* 557 */
1608 EXTERN void             Tcl_SetBignumObj(Tcl_Obj *obj, mp_int *value);
1609 /* 558 */
1610 EXTERN int              Tcl_GetBignumFromObj(Tcl_Interp *interp,
1611                                 Tcl_Obj *obj, mp_int *value);
1612 /* 559 */
1613 EXTERN int              Tcl_TakeBignumFromObj(Tcl_Interp *interp,
1614                                 Tcl_Obj *obj, mp_int *value);
1615 /* 560 */
1616 EXTERN int              Tcl_TruncateChannel(Tcl_Channel chan,
1617                                 Tcl_WideInt length);
1618 /* 561 */
1619 EXTERN Tcl_DriverTruncateProc * Tcl_ChannelTruncateProc(
1620                                 const Tcl_ChannelType *chanTypePtr);
1621 /* 562 */
1622 EXTERN void             Tcl_SetChannelErrorInterp(Tcl_Interp *interp,
1623                                 Tcl_Obj *msg);
1624 /* 563 */
1625 EXTERN void             Tcl_GetChannelErrorInterp(Tcl_Interp *interp,
1626                                 Tcl_Obj **msg);
1627 /* 564 */
1628 EXTERN void             Tcl_SetChannelError(Tcl_Channel chan, Tcl_Obj *msg);
1629 /* 565 */
1630 EXTERN void             Tcl_GetChannelError(Tcl_Channel chan, Tcl_Obj **msg);
1631 /* 566 */
1632 EXTERN int              Tcl_InitBignumFromDouble(Tcl_Interp *interp,
1633                                 double initval, mp_int *toInit);
1634 /* 567 */
1635 EXTERN Tcl_Obj *        Tcl_GetNamespaceUnknownHandler(Tcl_Interp *interp,
1636                                 Tcl_Namespace *nsPtr);
1637 /* 568 */
1638 EXTERN int              Tcl_SetNamespaceUnknownHandler(Tcl_Interp *interp,
1639                                 Tcl_Namespace *nsPtr, Tcl_Obj *handlerPtr);
1640 /* 569 */
1641 EXTERN int              Tcl_GetEncodingFromObj(Tcl_Interp *interp,
1642                                 Tcl_Obj *objPtr, Tcl_Encoding *encodingPtr);
1643 /* 570 */
1644 EXTERN Tcl_Obj *        Tcl_GetEncodingSearchPath(void);
1645 /* 571 */
1646 EXTERN int              Tcl_SetEncodingSearchPath(Tcl_Obj *searchPath);
1647 /* 572 */
1648 EXTERN const char *     Tcl_GetEncodingNameFromEnvironment(
1649                                 Tcl_DString *bufPtr);
1650 /* 573 */
1651 EXTERN int              Tcl_PkgRequireProc(Tcl_Interp *interp,
1652                                 const char *name, int objc,
1653                                 Tcl_Obj *const objv[], void *clientDataPtr);
1654 /* 574 */
1655 EXTERN void             Tcl_AppendObjToErrorInfo(Tcl_Interp *interp,
1656                                 Tcl_Obj *objPtr);
1657 /* 575 */
1658 EXTERN void             Tcl_AppendLimitedToObj(Tcl_Obj *objPtr,
1659                                 const char *bytes, int length, int limit,
1660                                 const char *ellipsis);
1661 /* 576 */
1662 EXTERN Tcl_Obj *        Tcl_Format(Tcl_Interp *interp, const char *format,
1663                                 int objc, Tcl_Obj *const objv[]);
1664 /* 577 */
1665 EXTERN int              Tcl_AppendFormatToObj(Tcl_Interp *interp,
1666                                 Tcl_Obj *objPtr, const char *format,
1667                                 int objc, Tcl_Obj *const objv[]);
1668 /* 578 */
1669 EXTERN Tcl_Obj *        Tcl_ObjPrintf(const char *format, ...) TCL_FORMAT_PRINTF(1, 2);
1670 /* 579 */
1671 EXTERN void             Tcl_AppendPrintfToObj(Tcl_Obj *objPtr,
1672                                 const char *format, ...) TCL_FORMAT_PRINTF(2, 3);
1673 /* 580 */
1674 EXTERN int              Tcl_CancelEval(Tcl_Interp *interp,
1675                                 Tcl_Obj *resultObjPtr, ClientData clientData,
1676                                 int flags);
1677 /* 581 */
1678 EXTERN int              Tcl_Canceled(Tcl_Interp *interp, int flags);
1679 /* 582 */
1680 EXTERN int              Tcl_CreatePipe(Tcl_Interp *interp,
1681                                 Tcl_Channel *rchan, Tcl_Channel *wchan,
1682                                 int flags);
1683 /* 583 */
1684 EXTERN Tcl_Command      Tcl_NRCreateCommand(Tcl_Interp *interp,
1685                                 const char *cmdName, Tcl_ObjCmdProc *proc,
1686                                 Tcl_ObjCmdProc *nreProc,
1687                                 ClientData clientData,
1688                                 Tcl_CmdDeleteProc *deleteProc);
1689 /* 584 */
1690 EXTERN int              Tcl_NREvalObj(Tcl_Interp *interp, Tcl_Obj *objPtr,
1691                                 int flags);
1692 /* 585 */
1693 EXTERN int              Tcl_NREvalObjv(Tcl_Interp *interp, int objc,
1694                                 Tcl_Obj *const objv[], int flags);
1695 /* 586 */
1696 EXTERN int              Tcl_NRCmdSwap(Tcl_Interp *interp, Tcl_Command cmd,
1697                                 int objc, Tcl_Obj *const objv[], int flags);
1698 /* 587 */
1699 EXTERN void             Tcl_NRAddCallback(Tcl_Interp *interp,
1700                                 Tcl_NRPostProc *postProcPtr,
1701                                 ClientData data0, ClientData data1,
1702                                 ClientData data2, ClientData data3);
1703 /* 588 */
1704 EXTERN int              Tcl_NRCallObjProc(Tcl_Interp *interp,
1705                                 Tcl_ObjCmdProc *objProc,
1706                                 ClientData clientData, int objc,
1707                                 Tcl_Obj *const objv[]);
1708 /* 589 */
1709 EXTERN unsigned         Tcl_GetFSDeviceFromStat(const Tcl_StatBuf *statPtr);
1710 /* 590 */
1711 EXTERN unsigned         Tcl_GetFSInodeFromStat(const Tcl_StatBuf *statPtr);
1712 /* 591 */
1713 EXTERN unsigned         Tcl_GetModeFromStat(const Tcl_StatBuf *statPtr);
1714 /* 592 */
1715 EXTERN int              Tcl_GetLinkCountFromStat(const Tcl_StatBuf *statPtr);
1716 /* 593 */
1717 EXTERN int              Tcl_GetUserIdFromStat(const Tcl_StatBuf *statPtr);
1718 /* 594 */
1719 EXTERN int              Tcl_GetGroupIdFromStat(const Tcl_StatBuf *statPtr);
1720 /* 595 */
1721 EXTERN int              Tcl_GetDeviceTypeFromStat(const Tcl_StatBuf *statPtr);
1722 /* 596 */
1723 EXTERN Tcl_WideInt      Tcl_GetAccessTimeFromStat(const Tcl_StatBuf *statPtr);
1724 /* 597 */
1725 EXTERN Tcl_WideInt      Tcl_GetModificationTimeFromStat(
1726                                 const Tcl_StatBuf *statPtr);
1727 /* 598 */
1728 EXTERN Tcl_WideInt      Tcl_GetChangeTimeFromStat(const Tcl_StatBuf *statPtr);
1729 /* 599 */
1730 EXTERN Tcl_WideUInt     Tcl_GetSizeFromStat(const Tcl_StatBuf *statPtr);
1731 /* 600 */
1732 EXTERN Tcl_WideUInt     Tcl_GetBlocksFromStat(const Tcl_StatBuf *statPtr);
1733 /* 601 */
1734 EXTERN unsigned         Tcl_GetBlockSizeFromStat(const Tcl_StatBuf *statPtr);
1735 /* 602 */
1736 EXTERN int              Tcl_SetEnsembleParameterList(Tcl_Interp *interp,
1737                                 Tcl_Command token, Tcl_Obj *paramList);
1738 /* 603 */
1739 EXTERN int              Tcl_GetEnsembleParameterList(Tcl_Interp *interp,
1740                                 Tcl_Command token, Tcl_Obj **paramListPtr);
1741 /* 604 */
1742 EXTERN int              Tcl_ParseArgsObjv(Tcl_Interp *interp,
1743                                 const Tcl_ArgvInfo *argTable, int *objcPtr,
1744                                 Tcl_Obj *const *objv, Tcl_Obj ***remObjv);
1745 /* 605 */
1746 EXTERN int              Tcl_GetErrorLine(Tcl_Interp *interp);
1747 /* 606 */
1748 EXTERN void             Tcl_SetErrorLine(Tcl_Interp *interp, int lineNum);
1749 /* 607 */
1750 EXTERN void             Tcl_TransferResult(Tcl_Interp *sourceInterp,
1751                                 int result, Tcl_Interp *targetInterp);
1752 /* 608 */
1753 EXTERN int              Tcl_InterpActive(Tcl_Interp *interp);
1754 /* 609 */
1755 EXTERN void             Tcl_BackgroundException(Tcl_Interp *interp, int code);
1756 /* 610 */
1757 EXTERN int              Tcl_ZlibDeflate(Tcl_Interp *interp, int format,
1758                                 Tcl_Obj *data, int level,
1759                                 Tcl_Obj *gzipHeaderDictObj);
1760 /* 611 */
1761 EXTERN int              Tcl_ZlibInflate(Tcl_Interp *interp, int format,
1762                                 Tcl_Obj *data, int buffersize,
1763                                 Tcl_Obj *gzipHeaderDictObj);
1764 /* 612 */
1765 EXTERN unsigned int     Tcl_ZlibCRC32(unsigned int crc,
1766                                 const unsigned char *buf, int len);
1767 /* 613 */
1768 EXTERN unsigned int     Tcl_ZlibAdler32(unsigned int adler,
1769                                 const unsigned char *buf, int len);
1770 /* 614 */
1771 EXTERN int              Tcl_ZlibStreamInit(Tcl_Interp *interp, int mode,
1772                                 int format, int level, Tcl_Obj *dictObj,
1773                                 Tcl_ZlibStream *zshandle);
1774 /* 615 */
1775 EXTERN Tcl_Obj *        Tcl_ZlibStreamGetCommandName(Tcl_ZlibStream zshandle);
1776 /* 616 */
1777 EXTERN int              Tcl_ZlibStreamEof(Tcl_ZlibStream zshandle);
1778 /* 617 */
1779 EXTERN int              Tcl_ZlibStreamChecksum(Tcl_ZlibStream zshandle);
1780 /* 618 */
1781 EXTERN int              Tcl_ZlibStreamPut(Tcl_ZlibStream zshandle,
1782                                 Tcl_Obj *data, int flush);
1783 /* 619 */
1784 EXTERN int              Tcl_ZlibStreamGet(Tcl_ZlibStream zshandle,
1785                                 Tcl_Obj *data, int count);
1786 /* 620 */
1787 EXTERN int              Tcl_ZlibStreamClose(Tcl_ZlibStream zshandle);
1788 /* 621 */
1789 EXTERN int              Tcl_ZlibStreamReset(Tcl_ZlibStream zshandle);
1790 /* 622 */
1791 EXTERN void             Tcl_SetStartupScript(Tcl_Obj *path,
1792                                 const char *encoding);
1793 /* 623 */
1794 EXTERN Tcl_Obj *        Tcl_GetStartupScript(const char **encodingPtr);
1795 /* 624 */
1796 EXTERN int              Tcl_CloseEx(Tcl_Interp *interp, Tcl_Channel chan,
1797                                 int flags);
1798 /* 625 */
1799 EXTERN int              Tcl_NRExprObj(Tcl_Interp *interp, Tcl_Obj *objPtr,
1800                                 Tcl_Obj *resultPtr);
1801 /* 626 */
1802 EXTERN int              Tcl_NRSubstObj(Tcl_Interp *interp, Tcl_Obj *objPtr,
1803                                 int flags);
1804 /* 627 */
1805 EXTERN int              Tcl_LoadFile(Tcl_Interp *interp, Tcl_Obj *pathPtr,
1806                                 const char *const symv[], int flags,
1807                                 void *procPtrs, Tcl_LoadHandle *handlePtr);
1808 /* 628 */
1809 EXTERN void *           Tcl_FindSymbol(Tcl_Interp *interp,
1810                                 Tcl_LoadHandle handle, const char *symbol);
1811 /* 629 */
1812 EXTERN int              Tcl_FSUnloadFile(Tcl_Interp *interp,
1813                                 Tcl_LoadHandle handlePtr);
1814 /* 630 */
1815 EXTERN void             Tcl_ZlibStreamSetCompressionDictionary(
1816                                 Tcl_ZlibStream zhandle,
1817                                 Tcl_Obj *compressionDictionaryObj);
1818
1819 typedef struct {
1820     const struct TclPlatStubs *tclPlatStubs;
1821     const struct TclIntStubs *tclIntStubs;
1822     const struct TclIntPlatStubs *tclIntPlatStubs;
1823 } TclStubHooks;
1824
1825 typedef struct TclStubs {
1826     int magic;
1827     const TclStubHooks *hooks;
1828
1829     int (*tcl_PkgProvideEx) (Tcl_Interp *interp, const char *name, const char *version, const void *clientData); /* 0 */
1830     CONST84_RETURN char * (*tcl_PkgRequireEx) (Tcl_Interp *interp, const char *name, const char *version, int exact, void *clientDataPtr); /* 1 */
1831     void (*tcl_Panic) (const char *format, ...) TCL_FORMAT_PRINTF(1, 2); /* 2 */
1832     char * (*tcl_Alloc) (unsigned int size); /* 3 */
1833     void (*tcl_Free) (char *ptr); /* 4 */
1834     char * (*tcl_Realloc) (char *ptr, unsigned int size); /* 5 */
1835     char * (*tcl_DbCkalloc) (unsigned int size, const char *file, int line); /* 6 */
1836     void (*tcl_DbCkfree) (char *ptr, const char *file, int line); /* 7 */
1837     char * (*tcl_DbCkrealloc) (char *ptr, unsigned int size, const char *file, int line); /* 8 */
1838 #if !defined(_WIN32) && !defined(MAC_OSX_TCL) /* UNIX */
1839     void (*tcl_CreateFileHandler) (int fd, int mask, Tcl_FileProc *proc, ClientData clientData); /* 9 */
1840 #endif /* UNIX */
1841 #if defined(_WIN32) /* WIN */
1842     void (*reserved9)(void);
1843 #endif /* WIN */
1844 #ifdef MAC_OSX_TCL /* MACOSX */
1845     void (*tcl_CreateFileHandler) (int fd, int mask, Tcl_FileProc *proc, ClientData clientData); /* 9 */
1846 #endif /* MACOSX */
1847 #if !defined(_WIN32) && !defined(MAC_OSX_TCL) /* UNIX */
1848     void (*tcl_DeleteFileHandler) (int fd); /* 10 */
1849 #endif /* UNIX */
1850 #if defined(_WIN32) /* WIN */
1851     void (*reserved10)(void);
1852 #endif /* WIN */
1853 #ifdef MAC_OSX_TCL /* MACOSX */
1854     void (*tcl_DeleteFileHandler) (int fd); /* 10 */
1855 #endif /* MACOSX */
1856     void (*tcl_SetTimer) (const Tcl_Time *timePtr); /* 11 */
1857     void (*tcl_Sleep) (int ms); /* 12 */
1858     int (*tcl_WaitForEvent) (const Tcl_Time *timePtr); /* 13 */
1859     int (*tcl_AppendAllObjTypes) (Tcl_Interp *interp, Tcl_Obj *objPtr); /* 14 */
1860     void (*tcl_AppendStringsToObj) (Tcl_Obj *objPtr, ...); /* 15 */
1861     void (*tcl_AppendToObj) (Tcl_Obj *objPtr, const char *bytes, int length); /* 16 */
1862     Tcl_Obj * (*tcl_ConcatObj) (int objc, Tcl_Obj *const objv[]); /* 17 */
1863     int (*tcl_ConvertToType) (Tcl_Interp *interp, Tcl_Obj *objPtr, const Tcl_ObjType *typePtr); /* 18 */
1864     void (*tcl_DbDecrRefCount) (Tcl_Obj *objPtr, const char *file, int line); /* 19 */
1865     void (*tcl_DbIncrRefCount) (Tcl_Obj *objPtr, const char *file, int line); /* 20 */
1866     int (*tcl_DbIsShared) (Tcl_Obj *objPtr, const char *file, int line); /* 21 */
1867     Tcl_Obj * (*tcl_DbNewBooleanObj) (int boolValue, const char *file, int line); /* 22 */
1868     Tcl_Obj * (*tcl_DbNewByteArrayObj) (const unsigned char *bytes, int length, const char *file, int line); /* 23 */
1869     Tcl_Obj * (*tcl_DbNewDoubleObj) (double doubleValue, const char *file, int line); /* 24 */
1870     Tcl_Obj * (*tcl_DbNewListObj) (int objc, Tcl_Obj *const *objv, const char *file, int line); /* 25 */
1871     Tcl_Obj * (*tcl_DbNewLongObj) (long longValue, const char *file, int line); /* 26 */
1872     Tcl_Obj * (*tcl_DbNewObj) (const char *file, int line); /* 27 */
1873     Tcl_Obj * (*tcl_DbNewStringObj) (const char *bytes, int length, const char *file, int line); /* 28 */
1874     Tcl_Obj * (*tcl_DuplicateObj) (Tcl_Obj *objPtr); /* 29 */
1875     void (*tclFreeObj) (Tcl_Obj *objPtr); /* 30 */
1876     int (*tcl_GetBoolean) (Tcl_Interp *interp, const char *src, int *boolPtr); /* 31 */
1877     int (*tcl_GetBooleanFromObj) (Tcl_Interp *interp, Tcl_Obj *objPtr, int *boolPtr); /* 32 */
1878     unsigned char * (*tcl_GetByteArrayFromObj) (Tcl_Obj *objPtr, int *lengthPtr); /* 33 */
1879     int (*tcl_GetDouble) (Tcl_Interp *interp, const char *src, double *doublePtr); /* 34 */
1880     int (*tcl_GetDoubleFromObj) (Tcl_Interp *interp, Tcl_Obj *objPtr, double *doublePtr); /* 35 */
1881     int (*tcl_GetIndexFromObj) (Tcl_Interp *interp, Tcl_Obj *objPtr, CONST84 char *const *tablePtr, const char *msg, int flags, int *indexPtr); /* 36 */
1882     int (*tcl_GetInt) (Tcl_Interp *interp, const char *src, int *intPtr); /* 37 */
1883     int (*tcl_GetIntFromObj) (Tcl_Interp *interp, Tcl_Obj *objPtr, int *intPtr); /* 38 */
1884     int (*tcl_GetLongFromObj) (Tcl_Interp *interp, Tcl_Obj *objPtr, long *longPtr); /* 39 */
1885     CONST86 Tcl_ObjType * (*tcl_GetObjType) (const char *typeName); /* 40 */
1886     char * (*tcl_GetStringFromObj) (Tcl_Obj *objPtr, int *lengthPtr); /* 41 */
1887     void (*tcl_InvalidateStringRep) (Tcl_Obj *objPtr); /* 42 */
1888     int (*tcl_ListObjAppendList) (Tcl_Interp *interp, Tcl_Obj *listPtr, Tcl_Obj *elemListPtr); /* 43 */
1889     int (*tcl_ListObjAppendElement) (Tcl_Interp *interp, Tcl_Obj *listPtr, Tcl_Obj *objPtr); /* 44 */
1890     int (*tcl_ListObjGetElements) (Tcl_Interp *interp, Tcl_Obj *listPtr, int *objcPtr, Tcl_Obj ***objvPtr); /* 45 */
1891     int (*tcl_ListObjIndex) (Tcl_Interp *interp, Tcl_Obj *listPtr, int index, Tcl_Obj **objPtrPtr); /* 46 */
1892     int (*tcl_ListObjLength) (Tcl_Interp *interp, Tcl_Obj *listPtr, int *lengthPtr); /* 47 */
1893     int (*tcl_ListObjReplace) (Tcl_Interp *interp, Tcl_Obj *listPtr, int first, int count, int objc, Tcl_Obj *const objv[]); /* 48 */
1894     Tcl_Obj * (*tcl_NewBooleanObj) (int boolValue); /* 49 */
1895     Tcl_Obj * (*tcl_NewByteArrayObj) (const unsigned char *bytes, int length); /* 50 */
1896     Tcl_Obj * (*tcl_NewDoubleObj) (double doubleValue); /* 51 */
1897     Tcl_Obj * (*tcl_NewIntObj) (int intValue); /* 52 */
1898     Tcl_Obj * (*tcl_NewListObj) (int objc, Tcl_Obj *const objv[]); /* 53 */
1899     Tcl_Obj * (*tcl_NewLongObj) (long longValue); /* 54 */
1900     Tcl_Obj * (*tcl_NewObj) (void); /* 55 */
1901     Tcl_Obj * (*tcl_NewStringObj) (const char *bytes, int length); /* 56 */
1902     void (*tcl_SetBooleanObj) (Tcl_Obj *objPtr, int boolValue); /* 57 */
1903     unsigned char * (*tcl_SetByteArrayLength) (Tcl_Obj *objPtr, int length); /* 58 */
1904     void (*tcl_SetByteArrayObj) (Tcl_Obj *objPtr, const unsigned char *bytes, int length); /* 59 */
1905     void (*tcl_SetDoubleObj) (Tcl_Obj *objPtr, double doubleValue); /* 60 */
1906     void (*tcl_SetIntObj) (Tcl_Obj *objPtr, int intValue); /* 61 */
1907     void (*tcl_SetListObj) (Tcl_Obj *objPtr, int objc, Tcl_Obj *const objv[]); /* 62 */
1908     void (*tcl_SetLongObj) (Tcl_Obj *objPtr, long longValue); /* 63 */
1909     void (*tcl_SetObjLength) (Tcl_Obj *objPtr, int length); /* 64 */
1910     void (*tcl_SetStringObj) (Tcl_Obj *objPtr, const char *bytes, int length); /* 65 */
1911     void (*tcl_AddErrorInfo) (Tcl_Interp *interp, const char *message); /* 66 */
1912     void (*tcl_AddObjErrorInfo) (Tcl_Interp *interp, const char *message, int length); /* 67 */
1913     void (*tcl_AllowExceptions) (Tcl_Interp *interp); /* 68 */
1914     void (*tcl_AppendElement) (Tcl_Interp *interp, const char *element); /* 69 */
1915     void (*tcl_AppendResult) (Tcl_Interp *interp, ...); /* 70 */
1916     Tcl_AsyncHandler (*tcl_AsyncCreate) (Tcl_AsyncProc *proc, ClientData clientData); /* 71 */
1917     void (*tcl_AsyncDelete) (Tcl_AsyncHandler async); /* 72 */
1918     int (*tcl_AsyncInvoke) (Tcl_Interp *interp, int code); /* 73 */
1919     void (*tcl_AsyncMark) (Tcl_AsyncHandler async); /* 74 */
1920     int (*tcl_AsyncReady) (void); /* 75 */
1921     void (*tcl_BackgroundError) (Tcl_Interp *interp); /* 76 */
1922     char (*tcl_Backslash) (const char *src, int *readPtr); /* 77 */
1923     int (*tcl_BadChannelOption) (Tcl_Interp *interp, const char *optionName, const char *optionList); /* 78 */
1924     void (*tcl_CallWhenDeleted) (Tcl_Interp *interp, Tcl_InterpDeleteProc *proc, ClientData clientData); /* 79 */
1925     void (*tcl_CancelIdleCall) (Tcl_IdleProc *idleProc, ClientData clientData); /* 80 */
1926     int (*tcl_Close) (Tcl_Interp *interp, Tcl_Channel chan); /* 81 */
1927     int (*tcl_CommandComplete) (const char *cmd); /* 82 */
1928     char * (*tcl_Concat) (int argc, CONST84 char *const *argv); /* 83 */
1929     int (*tcl_ConvertElement) (const char *src, char *dst, int flags); /* 84 */
1930     int (*tcl_ConvertCountedElement) (const char *src, int length, char *dst, int flags); /* 85 */
1931     int (*tcl_CreateAlias) (Tcl_Interp *slave, const char *slaveCmd, Tcl_Interp *target, const char *targetCmd, int argc, CONST84 char *const *argv); /* 86 */
1932     int (*tcl_CreateAliasObj) (Tcl_Interp *slave, const char *slaveCmd, Tcl_Interp *target, const char *targetCmd, int objc, Tcl_Obj *const objv[]); /* 87 */
1933     Tcl_Channel (*tcl_CreateChannel) (const Tcl_ChannelType *typePtr, const char *chanName, ClientData instanceData, int mask); /* 88 */
1934     void (*tcl_CreateChannelHandler) (Tcl_Channel chan, int mask, Tcl_ChannelProc *proc, ClientData clientData); /* 89 */
1935     void (*tcl_CreateCloseHandler) (Tcl_Channel chan, Tcl_CloseProc *proc, ClientData clientData); /* 90 */
1936     Tcl_Command (*tcl_CreateCommand) (Tcl_Interp *interp, const char *cmdName, Tcl_CmdProc *proc, ClientData clientData, Tcl_CmdDeleteProc *deleteProc); /* 91 */
1937     void (*tcl_CreateEventSource) (Tcl_EventSetupProc *setupProc, Tcl_EventCheckProc *checkProc, ClientData clientData); /* 92 */
1938     void (*tcl_CreateExitHandler) (Tcl_ExitProc *proc, ClientData clientData); /* 93 */
1939     Tcl_Interp * (*tcl_CreateInterp) (void); /* 94 */
1940     void (*tcl_CreateMathFunc) (Tcl_Interp *interp, const char *name, int numArgs, Tcl_ValueType *argTypes, Tcl_MathProc *proc, ClientData clientData); /* 95 */
1941     Tcl_Command (*tcl_CreateObjCommand) (Tcl_Interp *interp, const char *cmdName, Tcl_ObjCmdProc *proc, ClientData clientData, Tcl_CmdDeleteProc *deleteProc); /* 96 */
1942     Tcl_Interp * (*tcl_CreateSlave) (Tcl_Interp *interp, const char *slaveName, int isSafe); /* 97 */
1943     Tcl_TimerToken (*tcl_CreateTimerHandler) (int milliseconds, Tcl_TimerProc *proc, ClientData clientData); /* 98 */
1944     Tcl_Trace (*tcl_CreateTrace) (Tcl_Interp *interp, int level, Tcl_CmdTraceProc *proc, ClientData clientData); /* 99 */
1945     void (*tcl_DeleteAssocData) (Tcl_Interp *interp, const char *name); /* 100 */
1946     void (*tcl_DeleteChannelHandler) (Tcl_Channel chan, Tcl_ChannelProc *proc, ClientData clientData); /* 101 */
1947     void (*tcl_DeleteCloseHandler) (Tcl_Channel chan, Tcl_CloseProc *proc, ClientData clientData); /* 102 */
1948     int (*tcl_DeleteCommand) (Tcl_Interp *interp, const char *cmdName); /* 103 */
1949     int (*tcl_DeleteCommandFromToken) (Tcl_Interp *interp, Tcl_Command command); /* 104 */
1950     void (*tcl_DeleteEvents) (Tcl_EventDeleteProc *proc, ClientData clientData); /* 105 */
1951     void (*tcl_DeleteEventSource) (Tcl_EventSetupProc *setupProc, Tcl_EventCheckProc *checkProc, ClientData clientData); /* 106 */
1952     void (*tcl_DeleteExitHandler) (Tcl_ExitProc *proc, ClientData clientData); /* 107 */
1953     void (*tcl_DeleteHashEntry) (Tcl_HashEntry *entryPtr); /* 108 */
1954     void (*tcl_DeleteHashTable) (Tcl_HashTable *tablePtr); /* 109 */
1955     void (*tcl_DeleteInterp) (Tcl_Interp *interp); /* 110 */
1956     void (*tcl_DetachPids) (int numPids, Tcl_Pid *pidPtr); /* 111 */
1957     void (*tcl_DeleteTimerHandler) (Tcl_TimerToken token); /* 112 */
1958     void (*tcl_DeleteTrace) (Tcl_Interp *interp, Tcl_Trace trace); /* 113 */
1959     void (*tcl_DontCallWhenDeleted) (Tcl_Interp *interp, Tcl_InterpDeleteProc *proc, ClientData clientData); /* 114 */
1960     int (*tcl_DoOneEvent) (int flags); /* 115 */
1961     void (*tcl_DoWhenIdle) (Tcl_IdleProc *proc, ClientData clientData); /* 116 */
1962     char * (*tcl_DStringAppend) (Tcl_DString *dsPtr, const char *bytes, int length); /* 117 */
1963     char * (*tcl_DStringAppendElement) (Tcl_DString *dsPtr, const char *element); /* 118 */
1964     void (*tcl_DStringEndSublist) (Tcl_DString *dsPtr); /* 119 */
1965     void (*tcl_DStringFree) (Tcl_DString *dsPtr); /* 120 */
1966     void (*tcl_DStringGetResult) (Tcl_Interp *interp, Tcl_DString *dsPtr); /* 121 */
1967     void (*tcl_DStringInit) (Tcl_DString *dsPtr); /* 122 */
1968     void (*tcl_DStringResult) (Tcl_Interp *interp, Tcl_DString *dsPtr); /* 123 */
1969     void (*tcl_DStringSetLength) (Tcl_DString *dsPtr, int length); /* 124 */
1970     void (*tcl_DStringStartSublist) (Tcl_DString *dsPtr); /* 125 */
1971     int (*tcl_Eof) (Tcl_Channel chan); /* 126 */
1972     CONST84_RETURN char * (*tcl_ErrnoId) (void); /* 127 */
1973     CONST84_RETURN char * (*tcl_ErrnoMsg) (int err); /* 128 */
1974     int (*tcl_Eval) (Tcl_Interp *interp, const char *script); /* 129 */
1975     int (*tcl_EvalFile) (Tcl_Interp *interp, const char *fileName); /* 130 */
1976     int (*tcl_EvalObj) (Tcl_Interp *interp, Tcl_Obj *objPtr); /* 131 */
1977     void (*tcl_EventuallyFree) (ClientData clientData, Tcl_FreeProc *freeProc); /* 132 */
1978     void (*tcl_Exit) (int status); /* 133 */
1979     int (*tcl_ExposeCommand) (Tcl_Interp *interp, const char *hiddenCmdToken, const char *cmdName); /* 134 */
1980     int (*tcl_ExprBoolean) (Tcl_Interp *interp, const char *expr, int *ptr); /* 135 */
1981     int (*tcl_ExprBooleanObj) (Tcl_Interp *interp, Tcl_Obj *objPtr, int *ptr); /* 136 */
1982     int (*tcl_ExprDouble) (Tcl_Interp *interp, const char *expr, double *ptr); /* 137 */
1983     int (*tcl_ExprDoubleObj) (Tcl_Interp *interp, Tcl_Obj *objPtr, double *ptr); /* 138 */
1984     int (*tcl_ExprLong) (Tcl_Interp *interp, const char *expr, long *ptr); /* 139 */
1985     int (*tcl_ExprLongObj) (Tcl_Interp *interp, Tcl_Obj *objPtr, long *ptr); /* 140 */
1986     int (*tcl_ExprObj) (Tcl_Interp *interp, Tcl_Obj *objPtr, Tcl_Obj **resultPtrPtr); /* 141 */
1987     int (*tcl_ExprString) (Tcl_Interp *interp, const char *expr); /* 142 */
1988     void (*tcl_Finalize) (void); /* 143 */
1989     void (*tcl_FindExecutable) (const char *argv0); /* 144 */
1990     Tcl_HashEntry * (*tcl_FirstHashEntry) (Tcl_HashTable *tablePtr, Tcl_HashSearch *searchPtr); /* 145 */
1991     int (*tcl_Flush) (Tcl_Channel chan); /* 146 */
1992     void (*tcl_FreeResult) (Tcl_Interp *interp); /* 147 */
1993     int (*tcl_GetAlias) (Tcl_Interp *interp, const char *slaveCmd, Tcl_Interp **targetInterpPtr, CONST84 char **targetCmdPtr, int *argcPtr, CONST84 char ***argvPtr); /* 148 */
1994     int (*tcl_GetAliasObj) (Tcl_Interp *interp, const char *slaveCmd, Tcl_Interp **targetInterpPtr, CONST84 char **targetCmdPtr, int *objcPtr, Tcl_Obj ***objv); /* 149 */
1995     ClientData (*tcl_GetAssocData) (Tcl_Interp *interp, const char *name, Tcl_InterpDeleteProc **procPtr); /* 150 */
1996     Tcl_Channel (*tcl_GetChannel) (Tcl_Interp *interp, const char *chanName, int *modePtr); /* 151 */
1997     int (*tcl_GetChannelBufferSize) (Tcl_Channel chan); /* 152 */
1998     int (*tcl_GetChannelHandle) (Tcl_Channel chan, int direction, ClientData *handlePtr); /* 153 */
1999     ClientData (*tcl_GetChannelInstanceData) (Tcl_Channel chan); /* 154 */
2000     int (*tcl_GetChannelMode) (Tcl_Channel chan); /* 155 */
2001     CONST84_RETURN char * (*tcl_GetChannelName) (Tcl_Channel chan); /* 156 */
2002     int (*tcl_GetChannelOption) (Tcl_Interp *interp, Tcl_Channel chan, const char *optionName, Tcl_DString *dsPtr); /* 157 */
2003     CONST86 Tcl_ChannelType * (*tcl_GetChannelType) (Tcl_Channel chan); /* 158 */
2004     int (*tcl_GetCommandInfo) (Tcl_Interp *interp, const char *cmdName, Tcl_CmdInfo *infoPtr); /* 159 */
2005     CONST84_RETURN char * (*tcl_GetCommandName) (Tcl_Interp *interp, Tcl_Command command); /* 160 */
2006     int (*tcl_GetErrno) (void); /* 161 */
2007     CONST84_RETURN char * (*tcl_GetHostName) (void); /* 162 */
2008     int (*tcl_GetInterpPath) (Tcl_Interp *askInterp, Tcl_Interp *slaveInterp); /* 163 */
2009     Tcl_Interp * (*tcl_GetMaster) (Tcl_Interp *interp); /* 164 */
2010     const char * (*tcl_GetNameOfExecutable) (void); /* 165 */
2011     Tcl_Obj * (*tcl_GetObjResult) (Tcl_Interp *interp); /* 166 */
2012 #if !defined(_WIN32) && !defined(MAC_OSX_TCL) /* UNIX */
2013     int (*tcl_GetOpenFile) (Tcl_Interp *interp, const char *chanID, int forWriting, int checkUsage, ClientData *filePtr); /* 167 */
2014 #endif /* UNIX */
2015 #if defined(_WIN32) /* WIN */
2016     void (*reserved167)(void);
2017 #endif /* WIN */
2018 #ifdef MAC_OSX_TCL /* MACOSX */
2019     int (*tcl_GetOpenFile) (Tcl_Interp *interp, const char *chanID, int forWriting, int checkUsage, ClientData *filePtr); /* 167 */
2020 #endif /* MACOSX */
2021     Tcl_PathType (*tcl_GetPathType) (const char *path); /* 168 */
2022     int (*tcl_Gets) (Tcl_Channel chan, Tcl_DString *dsPtr); /* 169 */
2023     int (*tcl_GetsObj) (Tcl_Channel chan, Tcl_Obj *objPtr); /* 170 */
2024     int (*tcl_GetServiceMode) (void); /* 171 */
2025     Tcl_Interp * (*tcl_GetSlave) (Tcl_Interp *interp, const char *slaveName); /* 172 */
2026     Tcl_Channel (*tcl_GetStdChannel) (int type); /* 173 */
2027     CONST84_RETURN char * (*tcl_GetStringResult) (Tcl_Interp *interp); /* 174 */
2028     CONST84_RETURN char * (*tcl_GetVar) (Tcl_Interp *interp, const char *varName, int flags); /* 175 */
2029     CONST84_RETURN char * (*tcl_GetVar2) (Tcl_Interp *interp, const char *part1, const char *part2, int flags); /* 176 */
2030     int (*tcl_GlobalEval) (Tcl_Interp *interp, const char *command); /* 177 */
2031     int (*tcl_GlobalEvalObj) (Tcl_Interp *interp, Tcl_Obj *objPtr); /* 178 */
2032     int (*tcl_HideCommand) (Tcl_Interp *interp, const char *cmdName, const char *hiddenCmdToken); /* 179 */
2033     int (*tcl_Init) (Tcl_Interp *interp); /* 180 */
2034     void (*tcl_InitHashTable) (Tcl_HashTable *tablePtr, int keyType); /* 181 */
2035     int (*tcl_InputBlocked) (Tcl_Channel chan); /* 182 */
2036     int (*tcl_InputBuffered) (Tcl_Channel chan); /* 183 */
2037     int (*tcl_InterpDeleted) (Tcl_Interp *interp); /* 184 */
2038     int (*tcl_IsSafe) (Tcl_Interp *interp); /* 185 */
2039     char * (*tcl_JoinPath) (int argc, CONST84 char *const *argv, Tcl_DString *resultPtr); /* 186 */
2040     int (*tcl_LinkVar) (Tcl_Interp *interp, const char *varName, char *addr, int type); /* 187 */
2041     void (*reserved188)(void);
2042     Tcl_Channel (*tcl_MakeFileChannel) (ClientData handle, int mode); /* 189 */
2043     int (*tcl_MakeSafe) (Tcl_Interp *interp); /* 190 */
2044     Tcl_Channel (*tcl_MakeTcpClientChannel) (ClientData tcpSocket); /* 191 */
2045     char * (*tcl_Merge) (int argc, CONST84 char *const *argv); /* 192 */
2046     Tcl_HashEntry * (*tcl_NextHashEntry) (Tcl_HashSearch *searchPtr); /* 193 */
2047     void (*tcl_NotifyChannel) (Tcl_Channel channel, int mask); /* 194 */
2048     Tcl_Obj * (*tcl_ObjGetVar2) (Tcl_Interp *interp, Tcl_Obj *part1Ptr, Tcl_Obj *part2Ptr, int flags); /* 195 */
2049     Tcl_Obj * (*tcl_ObjSetVar2) (Tcl_Interp *interp, Tcl_Obj *part1Ptr, Tcl_Obj *part2Ptr, Tcl_Obj *newValuePtr, int flags); /* 196 */
2050     Tcl_Channel (*tcl_OpenCommandChannel) (Tcl_Interp *interp, int argc, CONST84 char **argv, int flags); /* 197 */
2051     Tcl_Channel (*tcl_OpenFileChannel) (Tcl_Interp *interp, const char *fileName, const char *modeString, int permissions); /* 198 */
2052     Tcl_Channel (*tcl_OpenTcpClient) (Tcl_Interp *interp, int port, const char *address, const char *myaddr, int myport, int async); /* 199 */
2053     Tcl_Channel (*tcl_OpenTcpServer) (Tcl_Interp *interp, int port, const char *host, Tcl_TcpAcceptProc *acceptProc, ClientData callbackData); /* 200 */
2054     void (*tcl_Preserve) (ClientData data); /* 201 */
2055     void (*tcl_PrintDouble) (Tcl_Interp *interp, double value, char *dst); /* 202 */
2056     int (*tcl_PutEnv) (const char *assignment); /* 203 */
2057     CONST84_RETURN char * (*tcl_PosixError) (Tcl_Interp *interp); /* 204 */
2058     void (*tcl_QueueEvent) (Tcl_Event *evPtr, Tcl_QueuePosition position); /* 205 */
2059     int (*tcl_Read) (Tcl_Channel chan, char *bufPtr, int toRead); /* 206 */
2060     void (*tcl_ReapDetachedProcs) (void); /* 207 */
2061     int (*tcl_RecordAndEval) (Tcl_Interp *interp, const char *cmd, int flags); /* 208 */
2062     int (*tcl_RecordAndEvalObj) (Tcl_Interp *interp, Tcl_Obj *cmdPtr, int flags); /* 209 */
2063     void (*tcl_RegisterChannel) (Tcl_Interp *interp, Tcl_Channel chan); /* 210 */
2064     void (*tcl_RegisterObjType) (const Tcl_ObjType *typePtr); /* 211 */
2065     Tcl_RegExp (*tcl_RegExpCompile) (Tcl_Interp *interp, const char *pattern); /* 212 */
2066     int (*tcl_RegExpExec) (Tcl_Interp *interp, Tcl_RegExp regexp, const char *text, const char *start); /* 213 */
2067     int (*tcl_RegExpMatch) (Tcl_Interp *interp, const char *text, const char *pattern); /* 214 */
2068     void (*tcl_RegExpRange) (Tcl_RegExp regexp, int index, CONST84 char **startPtr, CONST84 char **endPtr); /* 215 */
2069     void (*tcl_Release) (ClientData clientData); /* 216 */
2070     void (*tcl_ResetResult) (Tcl_Interp *interp); /* 217 */
2071     int (*tcl_ScanElement) (const char *src, int *flagPtr); /* 218 */
2072     int (*tcl_ScanCountedElement) (const char *src, int length, int *flagPtr); /* 219 */
2073     int (*tcl_SeekOld) (Tcl_Channel chan, int offset, int mode); /* 220 */
2074     int (*tcl_ServiceAll) (void); /* 221 */
2075     int (*tcl_ServiceEvent) (int flags); /* 222 */
2076     void (*tcl_SetAssocData) (Tcl_Interp *interp, const char *name, Tcl_InterpDeleteProc *proc, ClientData clientData); /* 223 */
2077     void (*tcl_SetChannelBufferSize) (Tcl_Channel chan, int sz); /* 224 */
2078     int (*tcl_SetChannelOption) (Tcl_Interp *interp, Tcl_Channel chan, const char *optionName, const char *newValue); /* 225 */
2079     int (*tcl_SetCommandInfo) (Tcl_Interp *interp, const char *cmdName, const Tcl_CmdInfo *infoPtr); /* 226 */
2080     void (*tcl_SetErrno) (int err); /* 227 */
2081     void (*tcl_SetErrorCode) (Tcl_Interp *interp, ...); /* 228 */
2082     void (*tcl_SetMaxBlockTime) (const Tcl_Time *timePtr); /* 229 */
2083     void (*tcl_SetPanicProc) (Tcl_PanicProc *panicProc); /* 230 */
2084     int (*tcl_SetRecursionLimit) (Tcl_Interp *interp, int depth); /* 231 */
2085     void (*tcl_SetResult) (Tcl_Interp *interp, char *result, Tcl_FreeProc *freeProc); /* 232 */
2086     int (*tcl_SetServiceMode) (int mode); /* 233 */
2087     void (*tcl_SetObjErrorCode) (Tcl_Interp *interp, Tcl_Obj *errorObjPtr); /* 234 */
2088     void (*tcl_SetObjResult) (Tcl_Interp *interp, Tcl_Obj *resultObjPtr); /* 235 */
2089     void (*tcl_SetStdChannel) (Tcl_Channel channel, int type); /* 236 */
2090     CONST84_RETURN char * (*tcl_SetVar) (Tcl_Interp *interp, const char *varName, const char *newValue, int flags); /* 237 */
2091     CONST84_RETURN char * (*tcl_SetVar2) (Tcl_Interp *interp, const char *part1, const char *part2, const char *newValue, int flags); /* 238 */
2092     CONST84_RETURN char * (*tcl_SignalId) (int sig); /* 239 */
2093     CONST84_RETURN char * (*tcl_SignalMsg) (int sig); /* 240 */
2094     void (*tcl_SourceRCFile) (Tcl_Interp *interp); /* 241 */
2095     int (*tcl_SplitList) (Tcl_Interp *interp, const char *listStr, int *argcPtr, CONST84 char ***argvPtr); /* 242 */
2096     void (*tcl_SplitPath) (const char *path, int *argcPtr, CONST84 char ***argvPtr); /* 243 */
2097     void (*tcl_StaticPackage) (Tcl_Interp *interp, const char *pkgName, Tcl_PackageInitProc *initProc, Tcl_PackageInitProc *safeInitProc); /* 244 */
2098     int (*tcl_StringMatch) (const char *str, const char *pattern); /* 245 */
2099     int (*tcl_TellOld) (Tcl_Channel chan); /* 246 */
2100     int (*tcl_TraceVar) (Tcl_Interp *interp, const char *varName, int flags, Tcl_VarTraceProc *proc, ClientData clientData); /* 247 */
2101     int (*tcl_TraceVar2) (Tcl_Interp *interp, const char *part1, const char *part2, int flags, Tcl_VarTraceProc *proc, ClientData clientData); /* 248 */
2102     char * (*tcl_TranslateFileName) (Tcl_Interp *interp, const char *name, Tcl_DString *bufferPtr); /* 249 */
2103     int (*tcl_Ungets) (Tcl_Channel chan, const char *str, int len, int atHead); /* 250 */
2104     void (*tcl_UnlinkVar) (Tcl_Interp *interp, const char *varName); /* 251 */
2105     int (*tcl_UnregisterChannel) (Tcl_Interp *interp, Tcl_Channel chan); /* 252 */
2106     int (*tcl_UnsetVar) (Tcl_Interp *interp, const char *varName, int flags); /* 253 */
2107     int (*tcl_UnsetVar2) (Tcl_Interp *interp, const char *part1, const char *part2, int flags); /* 254 */
2108     void (*tcl_UntraceVar) (Tcl_Interp *interp, const char *varName, int flags, Tcl_VarTraceProc *proc, ClientData clientData); /* 255 */
2109     void (*tcl_UntraceVar2) (Tcl_Interp *interp, const char *part1, const char *part2, int flags, Tcl_VarTraceProc *proc, ClientData clientData); /* 256 */
2110     void (*tcl_UpdateLinkedVar) (Tcl_Interp *interp, const char *varName); /* 257 */
2111     int (*tcl_UpVar) (Tcl_Interp *interp, const char *frameName, const char *varName, const char *localName, int flags); /* 258 */
2112     int (*tcl_UpVar2) (Tcl_Interp *interp, const char *frameName, const char *part1, const char *part2, const char *localName, int flags); /* 259 */
2113     int (*tcl_VarEval) (Tcl_Interp *interp, ...); /* 260 */
2114     ClientData (*tcl_VarTraceInfo) (Tcl_Interp *interp, const char *varName, int flags, Tcl_VarTraceProc *procPtr, ClientData prevClientData); /* 261 */
2115     ClientData (*tcl_VarTraceInfo2) (Tcl_Interp *interp, const char *part1, const char *part2, int flags, Tcl_VarTraceProc *procPtr, ClientData prevClientData); /* 262 */
2116     int (*tcl_Write) (Tcl_Channel chan, const char *s, int slen); /* 263 */
2117     void (*tcl_WrongNumArgs) (Tcl_Interp *interp, int objc, Tcl_Obj *const objv[], const char *message); /* 264 */
2118     int (*tcl_DumpActiveMemory) (const char *fileName); /* 265 */
2119     void (*tcl_ValidateAllMemory) (const char *file, int line); /* 266 */
2120     void (*tcl_AppendResultVA) (Tcl_Interp *interp, va_list argList); /* 267 */
2121     void (*tcl_AppendStringsToObjVA) (Tcl_Obj *objPtr, va_list argList); /* 268 */
2122     char * (*tcl_HashStats) (Tcl_HashTable *tablePtr); /* 269 */
2123     CONST84_RETURN char * (*tcl_ParseVar) (Tcl_Interp *interp, const char *start, CONST84 char **termPtr); /* 270 */
2124     CONST84_RETURN char * (*tcl_PkgPresent) (Tcl_Interp *interp, const char *name, const char *version, int exact); /* 271 */
2125     CONST84_RETURN char * (*tcl_PkgPresentEx) (Tcl_Interp *interp, const char *name, const char *version, int exact, void *clientDataPtr); /* 272 */
2126     int (*tcl_PkgProvide) (Tcl_Interp *interp, const char *name, const char *version); /* 273 */
2127     CONST84_RETURN char * (*tcl_PkgRequire) (Tcl_Interp *interp, const char *name, const char *version, int exact); /* 274 */
2128     void (*tcl_SetErrorCodeVA) (Tcl_Interp *interp, va_list argList); /* 275 */
2129     int (*tcl_VarEvalVA) (Tcl_Interp *interp, va_list argList); /* 276 */
2130     Tcl_Pid (*tcl_WaitPid) (Tcl_Pid pid, int *statPtr, int options); /* 277 */
2131     void (*tcl_PanicVA) (const char *format, va_list argList); /* 278 */
2132     void (*tcl_GetVersion) (int *major, int *minor, int *patchLevel, int *type); /* 279 */
2133     void (*tcl_InitMemory) (Tcl_Interp *interp); /* 280 */
2134     Tcl_Channel (*tcl_StackChannel) (Tcl_Interp *interp, const Tcl_ChannelType *typePtr, ClientData instanceData, int mask, Tcl_Channel prevChan); /* 281 */
2135     int (*tcl_UnstackChannel) (Tcl_Interp *interp, Tcl_Channel chan); /* 282 */
2136     Tcl_Channel (*tcl_GetStackedChannel) (Tcl_Channel chan); /* 283 */
2137     void (*tcl_SetMainLoop) (Tcl_MainLoopProc *proc); /* 284 */
2138     void (*reserved285)(void);
2139     void (*tcl_AppendObjToObj) (Tcl_Obj *objPtr, Tcl_Obj *appendObjPtr); /* 286 */
2140     Tcl_Encoding (*tcl_CreateEncoding) (const Tcl_EncodingType *typePtr); /* 287 */
2141     void (*tcl_CreateThreadExitHandler) (Tcl_ExitProc *proc, ClientData clientData); /* 288 */
2142     void (*tcl_DeleteThreadExitHandler) (Tcl_ExitProc *proc, ClientData clientData); /* 289 */
2143     void (*tcl_DiscardResult) (Tcl_SavedResult *statePtr); /* 290 */
2144     int (*tcl_EvalEx) (Tcl_Interp *interp, const char *script, int numBytes, int flags); /* 291 */
2145     int (*tcl_EvalObjv) (Tcl_Interp *interp, int objc, Tcl_Obj *const objv[], int flags); /* 292 */
2146     int (*tcl_EvalObjEx) (Tcl_Interp *interp, Tcl_Obj *objPtr, int flags); /* 293 */
2147     void (*tcl_ExitThread) (int status); /* 294 */
2148     int (*tcl_ExternalToUtf) (Tcl_Interp *interp, Tcl_Encoding encoding, const char *src, int srcLen, int flags, Tcl_EncodingState *statePtr, char *dst, int dstLen, int *srcReadPtr, int *dstWrotePtr, int *dstCharsPtr); /* 295 */
2149     char * (*tcl_ExternalToUtfDString) (Tcl_Encoding encoding, const char *src, int srcLen, Tcl_DString *dsPtr); /* 296 */
2150     void (*tcl_FinalizeThread) (void); /* 297 */
2151     void (*tcl_FinalizeNotifier) (ClientData clientData); /* 298 */
2152     void (*tcl_FreeEncoding) (Tcl_Encoding encoding); /* 299 */
2153     Tcl_ThreadId (*tcl_GetCurrentThread) (void); /* 300 */
2154     Tcl_Encoding (*tcl_GetEncoding) (Tcl_Interp *interp, const char *name); /* 301 */
2155     CONST84_RETURN char * (*tcl_GetEncodingName) (Tcl_Encoding encoding); /* 302 */
2156     void (*tcl_GetEncodingNames) (Tcl_Interp *interp); /* 303 */
2157     int (*tcl_GetIndexFromObjStruct) (Tcl_Interp *interp, Tcl_Obj *objPtr, const void *tablePtr, int offset, const char *msg, int flags, int *indexPtr); /* 304 */
2158     void * (*tcl_GetThreadData) (Tcl_ThreadDataKey *keyPtr, int size); /* 305 */
2159     Tcl_Obj * (*tcl_GetVar2Ex) (Tcl_Interp *interp, const char *part1, const char *part2, int flags); /* 306 */
2160     ClientData (*tcl_InitNotifier) (void); /* 307 */
2161     void (*tcl_MutexLock) (Tcl_Mutex *mutexPtr); /* 308 */
2162     void (*tcl_MutexUnlock) (Tcl_Mutex *mutexPtr); /* 309 */
2163     void (*tcl_ConditionNotify) (Tcl_Condition *condPtr); /* 310 */
2164     void (*tcl_ConditionWait) (Tcl_Condition *condPtr, Tcl_Mutex *mutexPtr, const Tcl_Time *timePtr); /* 311 */
2165     int (*tcl_NumUtfChars) (const char *src, int length); /* 312 */
2166     int (*tcl_ReadChars) (Tcl_Channel channel, Tcl_Obj *objPtr, int charsToRead, int appendFlag); /* 313 */
2167     void (*tcl_RestoreResult) (Tcl_Interp *interp, Tcl_SavedResult *statePtr); /* 314 */
2168     void (*tcl_SaveResult) (Tcl_Interp *interp, Tcl_SavedResult *statePtr); /* 315 */
2169     int (*tcl_SetSystemEncoding) (Tcl_Interp *interp, const char *name); /* 316 */
2170     Tcl_Obj * (*tcl_SetVar2Ex) (Tcl_Interp *interp, const char *part1, const char *part2, Tcl_Obj *newValuePtr, int flags); /* 317 */
2171     void (*tcl_ThreadAlert) (Tcl_ThreadId threadId); /* 318 */
2172     void (*tcl_ThreadQueueEvent) (Tcl_ThreadId threadId, Tcl_Event *evPtr, Tcl_QueuePosition position); /* 319 */
2173     Tcl_UniChar (*tcl_UniCharAtIndex) (const char *src, int index); /* 320 */
2174     Tcl_UniChar (*tcl_UniCharToLower) (int ch); /* 321 */
2175     Tcl_UniChar (*tcl_UniCharToTitle) (int ch); /* 322 */
2176     Tcl_UniChar (*tcl_UniCharToUpper) (int ch); /* 323 */
2177     int (*tcl_UniCharToUtf) (int ch, char *buf); /* 324 */
2178     CONST84_RETURN char * (*tcl_UtfAtIndex) (const char *src, int index); /* 325 */
2179     int (*tcl_UtfCharComplete) (const char *src, int length); /* 326 */
2180     int (*tcl_UtfBackslash) (const char *src, int *readPtr, char *dst); /* 327 */
2181     CONST84_RETURN char * (*tcl_UtfFindFirst) (const char *src, int ch); /* 328 */
2182     CONST84_RETURN char * (*tcl_UtfFindLast) (const char *src, int ch); /* 329 */
2183     CONST84_RETURN char * (*tcl_UtfNext) (const char *src); /* 330 */
2184     CONST84_RETURN char * (*tcl_UtfPrev) (const char *src, const char *start); /* 331 */
2185     int (*tcl_UtfToExternal) (Tcl_Interp *interp, Tcl_Encoding encoding, const char *src, int srcLen, int flags, Tcl_EncodingState *statePtr, char *dst, int dstLen, int *srcReadPtr, int *dstWrotePtr, int *dstCharsPtr); /* 332 */
2186     char * (*tcl_UtfToExternalDString) (Tcl_Encoding encoding, const char *src, int srcLen, Tcl_DString *dsPtr); /* 333 */
2187     int (*tcl_UtfToLower) (char *src); /* 334 */
2188     int (*tcl_UtfToTitle) (char *src); /* 335 */
2189     int (*tcl_UtfToUniChar) (const char *src, Tcl_UniChar *chPtr); /* 336 */
2190     int (*tcl_UtfToUpper) (char *src); /* 337 */
2191     int (*tcl_WriteChars) (Tcl_Channel chan, const char *src, int srcLen); /* 338 */
2192     int (*tcl_WriteObj) (Tcl_Channel chan, Tcl_Obj *objPtr); /* 339 */
2193     char * (*tcl_GetString) (Tcl_Obj *objPtr); /* 340 */
2194     CONST84_RETURN char * (*tcl_GetDefaultEncodingDir) (void); /* 341 */
2195     void (*tcl_SetDefaultEncodingDir) (const char *path); /* 342 */
2196     void (*tcl_AlertNotifier) (ClientData clientData); /* 343 */
2197     void (*tcl_ServiceModeHook) (int mode); /* 344 */
2198     int (*tcl_UniCharIsAlnum) (int ch); /* 345 */
2199     int (*tcl_UniCharIsAlpha) (int ch); /* 346 */
2200     int (*tcl_UniCharIsDigit) (int ch); /* 347 */
2201     int (*tcl_UniCharIsLower) (int ch); /* 348 */
2202     int (*tcl_UniCharIsSpace) (int ch); /* 349 */
2203     int (*tcl_UniCharIsUpper) (int ch); /* 350 */
2204     int (*tcl_UniCharIsWordChar) (int ch); /* 351 */
2205     int (*tcl_UniCharLen) (const Tcl_UniChar *uniStr); /* 352 */
2206     int (*tcl_UniCharNcmp) (const Tcl_UniChar *ucs, const Tcl_UniChar *uct, unsigned long numChars); /* 353 */
2207     char * (*tcl_UniCharToUtfDString) (const Tcl_UniChar *uniStr, int uniLength, Tcl_DString *dsPtr); /* 354 */
2208     Tcl_UniChar * (*tcl_UtfToUniCharDString) (const char *src, int length, Tcl_DString *dsPtr); /* 355 */
2209     Tcl_RegExp (*tcl_GetRegExpFromObj) (Tcl_Interp *interp, Tcl_Obj *patObj, int flags); /* 356 */
2210     Tcl_Obj * (*tcl_EvalTokens) (Tcl_Interp *interp, Tcl_Token *tokenPtr, int count); /* 357 */
2211     void (*tcl_FreeParse) (Tcl_Parse *parsePtr); /* 358 */
2212     void (*tcl_LogCommandInfo) (Tcl_Interp *interp, const char *script, const char *command, int length); /* 359 */
2213     int (*tcl_ParseBraces) (Tcl_Interp *interp, const char *start, int numBytes, Tcl_Parse *parsePtr, int append, CONST84 char **termPtr); /* 360 */
2214     int (*tcl_ParseCommand) (Tcl_Interp *interp, const char *start, int numBytes, int nested, Tcl_Parse *parsePtr); /* 361 */
2215     int (*tcl_ParseExpr) (Tcl_Interp *interp, const char *start, int numBytes, Tcl_Parse *parsePtr); /* 362 */
2216     int (*tcl_ParseQuotedString) (Tcl_Interp *interp, const char *start, int numBytes, Tcl_Parse *parsePtr, int append, CONST84 char **termPtr); /* 363 */
2217     int (*tcl_ParseVarName) (Tcl_Interp *interp, const char *start, int numBytes, Tcl_Parse *parsePtr, int append); /* 364 */
2218     char * (*tcl_GetCwd) (Tcl_Interp *interp, Tcl_DString *cwdPtr); /* 365 */
2219     int (*tcl_Chdir) (const char *dirName); /* 366 */
2220     int (*tcl_Access) (const char *path, int mode); /* 367 */
2221     int (*tcl_Stat) (const char *path, struct stat *bufPtr); /* 368 */
2222     int (*tcl_UtfNcmp) (const char *s1, const char *s2, unsigned long n); /* 369 */
2223     int (*tcl_UtfNcasecmp) (const char *s1, const char *s2, unsigned long n); /* 370 */
2224     int (*tcl_StringCaseMatch) (const char *str, const char *pattern, int nocase); /* 371 */
2225     int (*tcl_UniCharIsControl) (int ch); /* 372 */
2226     int (*tcl_UniCharIsGraph) (int ch); /* 373 */
2227     int (*tcl_UniCharIsPrint) (int ch); /* 374 */
2228     int (*tcl_UniCharIsPunct) (int ch); /* 375 */
2229     int (*tcl_RegExpExecObj) (Tcl_Interp *interp, Tcl_RegExp regexp, Tcl_Obj *textObj, int offset, int nmatches, int flags); /* 376 */
2230     void (*tcl_RegExpGetInfo) (Tcl_RegExp regexp, Tcl_RegExpInfo *infoPtr); /* 377 */
2231     Tcl_Obj * (*tcl_NewUnicodeObj) (const Tcl_UniChar *unicode, int numChars); /* 378 */
2232     void (*tcl_SetUnicodeObj) (Tcl_Obj *objPtr, const Tcl_UniChar *unicode, int numChars); /* 379 */
2233     int (*tcl_GetCharLength) (Tcl_Obj *objPtr); /* 380 */
2234     Tcl_UniChar (*tcl_GetUniChar) (Tcl_Obj *objPtr, int index); /* 381 */
2235     Tcl_UniChar * (*tcl_GetUnicode) (Tcl_Obj *objPtr); /* 382 */
2236     Tcl_Obj * (*tcl_GetRange) (Tcl_Obj *objPtr, int first, int last); /* 383 */
2237     void (*tcl_AppendUnicodeToObj) (Tcl_Obj *objPtr, const Tcl_UniChar *unicode, int length); /* 384 */
2238     int (*tcl_RegExpMatchObj) (Tcl_Interp *interp, Tcl_Obj *textObj, Tcl_Obj *patternObj); /* 385 */
2239     void (*tcl_SetNotifier) (Tcl_NotifierProcs *notifierProcPtr); /* 386 */
2240     Tcl_Mutex * (*tcl_GetAllocMutex) (void); /* 387 */
2241     int (*tcl_GetChannelNames) (Tcl_Interp *interp); /* 388 */
2242     int (*tcl_GetChannelNamesEx) (Tcl_Interp *interp, const char *pattern); /* 389 */
2243     int (*tcl_ProcObjCmd) (ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *const objv[]); /* 390 */
2244     void (*tcl_ConditionFinalize) (Tcl_Condition *condPtr); /* 391 */
2245     void (*tcl_MutexFinalize) (Tcl_Mutex *mutex); /* 392 */
2246     int (*tcl_CreateThread) (Tcl_ThreadId *idPtr, Tcl_ThreadCreateProc *proc, ClientData clientData, int stackSize, int flags); /* 393 */
2247     int (*tcl_ReadRaw) (Tcl_Channel chan, char *dst, int bytesToRead); /* 394 */
2248     int (*tcl_WriteRaw) (Tcl_Channel chan, const char *src, int srcLen); /* 395 */
2249     Tcl_Channel (*tcl_GetTopChannel) (Tcl_Channel chan); /* 396 */
2250     int (*tcl_ChannelBuffered) (Tcl_Channel chan); /* 397 */
2251     CONST84_RETURN char * (*tcl_ChannelName) (const Tcl_ChannelType *chanTypePtr); /* 398 */
2252     Tcl_ChannelTypeVersion (*tcl_ChannelVersion) (const Tcl_ChannelType *chanTypePtr); /* 399 */
2253     Tcl_DriverBlockModeProc * (*tcl_ChannelBlockModeProc) (const Tcl_ChannelType *chanTypePtr); /* 400 */
2254     Tcl_DriverCloseProc * (*tcl_ChannelCloseProc) (const Tcl_ChannelType *chanTypePtr); /* 401 */
2255     Tcl_DriverClose2Proc * (*tcl_ChannelClose2Proc) (const Tcl_ChannelType *chanTypePtr); /* 402 */
2256     Tcl_DriverInputProc * (*tcl_ChannelInputProc) (const Tcl_ChannelType *chanTypePtr); /* 403 */
2257     Tcl_DriverOutputProc * (*tcl_ChannelOutputProc) (const Tcl_ChannelType *chanTypePtr); /* 404 */
2258     Tcl_DriverSeekProc * (*tcl_ChannelSeekProc) (const Tcl_ChannelType *chanTypePtr); /* 405 */
2259     Tcl_DriverSetOptionProc * (*tcl_ChannelSetOptionProc) (const Tcl_ChannelType *chanTypePtr); /* 406 */
2260     Tcl_DriverGetOptionProc * (*tcl_ChannelGetOptionProc) (const Tcl_ChannelType *chanTypePtr); /* 407 */
2261     Tcl_DriverWatchProc * (*tcl_ChannelWatchProc) (const Tcl_ChannelType *chanTypePtr); /* 408 */
2262     Tcl_DriverGetHandleProc * (*tcl_ChannelGetHandleProc) (const Tcl_ChannelType *chanTypePtr); /* 409 */
2263     Tcl_DriverFlushProc * (*tcl_ChannelFlushProc) (const Tcl_ChannelType *chanTypePtr); /* 410 */
2264     Tcl_DriverHandlerProc * (*tcl_ChannelHandlerProc) (const Tcl_ChannelType *chanTypePtr); /* 411 */
2265     int (*tcl_JoinThread) (Tcl_ThreadId threadId, int *result); /* 412 */
2266     int (*tcl_IsChannelShared) (Tcl_Channel channel); /* 413 */
2267     int (*tcl_IsChannelRegistered) (Tcl_Interp *interp, Tcl_Channel channel); /* 414 */
2268     void (*tcl_CutChannel) (Tcl_Channel channel); /* 415 */
2269     void (*tcl_SpliceChannel) (Tcl_Channel channel); /* 416 */
2270     void (*tcl_ClearChannelHandlers) (Tcl_Channel channel); /* 417 */
2271     int (*tcl_IsChannelExisting) (const char *channelName); /* 418 */
2272     int (*tcl_UniCharNcasecmp) (const Tcl_UniChar *ucs, const Tcl_UniChar *uct, unsigned long numChars); /* 419 */
2273     int (*tcl_UniCharCaseMatch) (const Tcl_UniChar *uniStr, const Tcl_UniChar *uniPattern, int nocase); /* 420 */
2274     Tcl_HashEntry * (*tcl_FindHashEntry) (Tcl_HashTable *tablePtr, const void *key); /* 421 */
2275     Tcl_HashEntry * (*tcl_CreateHashEntry) (Tcl_HashTable *tablePtr, const void *key, int *newPtr); /* 422 */
2276     void (*tcl_InitCustomHashTable) (Tcl_HashTable *tablePtr, int keyType, const Tcl_HashKeyType *typePtr); /* 423 */
2277     void (*tcl_InitObjHashTable) (Tcl_HashTable *tablePtr); /* 424 */
2278     ClientData (*tcl_CommandTraceInfo) (Tcl_Interp *interp, const char *varName, int flags, Tcl_CommandTraceProc *procPtr, ClientData prevClientData); /* 425 */
2279     int (*tcl_TraceCommand) (Tcl_Interp *interp, const char *varName, int flags, Tcl_CommandTraceProc *proc, ClientData clientData); /* 426 */
2280     void (*tcl_UntraceCommand) (Tcl_Interp *interp, const char *varName, int flags, Tcl_CommandTraceProc *proc, ClientData clientData); /* 427 */
2281     char * (*tcl_AttemptAlloc) (unsigned int size); /* 428 */
2282     char * (*tcl_AttemptDbCkalloc) (unsigned int size, const char *file, int line); /* 429 */
2283     char * (*tcl_AttemptRealloc) (char *ptr, unsigned int size); /* 430 */
2284     char * (*tcl_AttemptDbCkrealloc) (char *ptr, unsigned int size, const char *file, int line); /* 431 */
2285     int (*tcl_AttemptSetObjLength) (Tcl_Obj *objPtr, int length); /* 432 */
2286     Tcl_ThreadId (*tcl_GetChannelThread) (Tcl_Channel channel); /* 433 */
2287     Tcl_UniChar * (*tcl_GetUnicodeFromObj) (Tcl_Obj *objPtr, int *lengthPtr); /* 434 */
2288     int (*tcl_GetMathFuncInfo) (Tcl_Interp *interp, const char *name, int *numArgsPtr, Tcl_ValueType **argTypesPtr, Tcl_MathProc **procPtr, ClientData *clientDataPtr); /* 435 */
2289     Tcl_Obj * (*tcl_ListMathFuncs) (Tcl_Interp *interp, const char *pattern); /* 436 */
2290     Tcl_Obj * (*tcl_SubstObj) (Tcl_Interp *interp, Tcl_Obj *objPtr, int flags); /* 437 */
2291     int (*tcl_DetachChannel) (Tcl_Interp *interp, Tcl_Channel channel); /* 438 */
2292     int (*tcl_IsStandardChannel) (Tcl_Channel channel); /* 439 */
2293     int (*tcl_FSCopyFile) (Tcl_Obj *srcPathPtr, Tcl_Obj *destPathPtr); /* 440 */
2294     int (*tcl_FSCopyDirectory) (Tcl_Obj *srcPathPtr, Tcl_Obj *destPathPtr, Tcl_Obj **errorPtr); /* 441 */
2295     int (*tcl_FSCreateDirectory) (Tcl_Obj *pathPtr); /* 442 */
2296     int (*tcl_FSDeleteFile) (Tcl_Obj *pathPtr); /* 443 */
2297     int (*tcl_FSLoadFile) (Tcl_Interp *interp, Tcl_Obj *pathPtr, const char *sym1, const char *sym2, Tcl_PackageInitProc **proc1Ptr, Tcl_PackageInitProc **proc2Ptr, Tcl_LoadHandle *handlePtr, Tcl_FSUnloadFileProc **unloadProcPtr); /* 444 */
2298     int (*tcl_FSMatchInDirectory) (Tcl_Interp *interp, Tcl_Obj *result, Tcl_Obj *pathPtr, const char *pattern, Tcl_GlobTypeData *types); /* 445 */
2299     Tcl_Obj * (*tcl_FSLink) (Tcl_Obj *pathPtr, Tcl_Obj *toPtr, int linkAction); /* 446 */
2300     int (*tcl_FSRemoveDirectory) (Tcl_Obj *pathPtr, int recursive, Tcl_Obj **errorPtr); /* 447 */
2301     int (*tcl_FSRenameFile) (Tcl_Obj *srcPathPtr, Tcl_Obj *destPathPtr); /* 448 */
2302     int (*tcl_FSLstat) (Tcl_Obj *pathPtr, Tcl_StatBuf *buf); /* 449 */
2303     int (*tcl_FSUtime) (Tcl_Obj *pathPtr, struct utimbuf *tval); /* 450 */
2304     int (*tcl_FSFileAttrsGet) (Tcl_Interp *interp, int index, Tcl_Obj *pathPtr, Tcl_Obj **objPtrRef); /* 451 */
2305     int (*tcl_FSFileAttrsSet) (Tcl_Interp *interp, int index, Tcl_Obj *pathPtr, Tcl_Obj *objPtr); /* 452 */
2306     const char *CONST86 * (*tcl_FSFileAttrStrings) (Tcl_Obj *pathPtr, Tcl_Obj **objPtrRef); /* 453 */
2307     int (*tcl_FSStat) (Tcl_Obj *pathPtr, Tcl_StatBuf *buf); /* 454 */
2308     int (*tcl_FSAccess) (Tcl_Obj *pathPtr, int mode); /* 455 */
2309     Tcl_Channel (*tcl_FSOpenFileChannel) (Tcl_Interp *interp, Tcl_Obj *pathPtr, const char *modeString, int permissions); /* 456 */
2310     Tcl_Obj * (*tcl_FSGetCwd) (Tcl_Interp *interp); /* 457 */
2311     int (*tcl_FSChdir) (Tcl_Obj *pathPtr); /* 458 */
2312     int (*tcl_FSConvertToPathType) (Tcl_Interp *interp, Tcl_Obj *pathPtr); /* 459 */
2313     Tcl_Obj * (*tcl_FSJoinPath) (Tcl_Obj *listObj, int elements); /* 460 */
2314     Tcl_Obj * (*tcl_FSSplitPath) (Tcl_Obj *pathPtr, int *lenPtr); /* 461 */
2315     int (*tcl_FSEqualPaths) (Tcl_Obj *firstPtr, Tcl_Obj *secondPtr); /* 462 */
2316     Tcl_Obj * (*tcl_FSGetNormalizedPath) (Tcl_Interp *interp, Tcl_Obj *pathPtr); /* 463 */
2317     Tcl_Obj * (*tcl_FSJoinToPath) (Tcl_Obj *pathPtr, int objc, Tcl_Obj *const objv[]); /* 464 */
2318     ClientData (*tcl_FSGetInternalRep) (Tcl_Obj *pathPtr, const Tcl_Filesystem *fsPtr); /* 465 */
2319     Tcl_Obj * (*tcl_FSGetTranslatedPath) (Tcl_Interp *interp, Tcl_Obj *pathPtr); /* 466 */
2320     int (*tcl_FSEvalFile) (Tcl_Interp *interp, Tcl_Obj *fileName); /* 467 */
2321     Tcl_Obj * (*tcl_FSNewNativePath) (const Tcl_Filesystem *fromFilesystem, ClientData clientData); /* 468 */
2322     const void * (*tcl_FSGetNativePath) (Tcl_Obj *pathPtr); /* 469 */
2323     Tcl_Obj * (*tcl_FSFileSystemInfo) (Tcl_Obj *pathPtr); /* 470 */
2324     Tcl_Obj * (*tcl_FSPathSeparator) (Tcl_Obj *pathPtr); /* 471 */
2325     Tcl_Obj * (*tcl_FSListVolumes) (void); /* 472 */
2326     int (*tcl_FSRegister) (ClientData clientData, const Tcl_Filesystem *fsPtr); /* 473 */
2327     int (*tcl_FSUnregister) (const Tcl_Filesystem *fsPtr); /* 474 */
2328     ClientData (*tcl_FSData) (const Tcl_Filesystem *fsPtr); /* 475 */
2329     const char * (*tcl_FSGetTranslatedStringPath) (Tcl_Interp *interp, Tcl_Obj *pathPtr); /* 476 */
2330     CONST86 Tcl_Filesystem * (*tcl_FSGetFileSystemForPath) (Tcl_Obj *pathPtr); /* 477 */
2331     Tcl_PathType (*tcl_FSGetPathType) (Tcl_Obj *pathPtr); /* 478 */
2332     int (*tcl_OutputBuffered) (Tcl_Channel chan); /* 479 */
2333     void (*tcl_FSMountsChanged) (const Tcl_Filesystem *fsPtr); /* 480 */
2334     int (*tcl_EvalTokensStandard) (Tcl_Interp *interp, Tcl_Token *tokenPtr, int count); /* 481 */
2335     void (*tcl_GetTime) (Tcl_Time *timeBuf); /* 482 */
2336     Tcl_Trace (*tcl_CreateObjTrace) (Tcl_Interp *interp, int level, int flags, Tcl_CmdObjTraceProc *objProc, ClientData clientData, Tcl_CmdObjTraceDeleteProc *delProc); /* 483 */
2337     int (*tcl_GetCommandInfoFromToken) (Tcl_Command token, Tcl_CmdInfo *infoPtr); /* 484 */
2338     int (*tcl_SetCommandInfoFromToken) (Tcl_Command token, const Tcl_CmdInfo *infoPtr); /* 485 */
2339     Tcl_Obj * (*tcl_DbNewWideIntObj) (Tcl_WideInt wideValue, const char *file, int line); /* 486 */
2340     int (*tcl_GetWideIntFromObj) (Tcl_Interp *interp, Tcl_Obj *objPtr, Tcl_WideInt *widePtr); /* 487 */
2341     Tcl_Obj * (*tcl_NewWideIntObj) (Tcl_WideInt wideValue); /* 488 */
2342     void (*tcl_SetWideIntObj) (Tcl_Obj *objPtr, Tcl_WideInt wideValue); /* 489 */
2343     Tcl_StatBuf * (*tcl_AllocStatBuf) (void); /* 490 */
2344     Tcl_WideInt (*tcl_Seek) (Tcl_Channel chan, Tcl_WideInt offset, int mode); /* 491 */
2345     Tcl_WideInt (*tcl_Tell) (Tcl_Channel chan); /* 492 */
2346     Tcl_DriverWideSeekProc * (*tcl_ChannelWideSeekProc) (const Tcl_ChannelType *chanTypePtr); /* 493 */
2347     int (*tcl_DictObjPut) (Tcl_Interp *interp, Tcl_Obj *dictPtr, Tcl_Obj *keyPtr, Tcl_Obj *valuePtr); /* 494 */
2348     int (*tcl_DictObjGet) (Tcl_Interp *interp, Tcl_Obj *dictPtr, Tcl_Obj *keyPtr, Tcl_Obj **valuePtrPtr); /* 495 */
2349     int (*tcl_DictObjRemove) (Tcl_Interp *interp, Tcl_Obj *dictPtr, Tcl_Obj *keyPtr); /* 496 */
2350     int (*tcl_DictObjSize) (Tcl_Interp *interp, Tcl_Obj *dictPtr, int *sizePtr); /* 497 */
2351     int (*tcl_DictObjFirst) (Tcl_Interp *interp, Tcl_Obj *dictPtr, Tcl_DictSearch *searchPtr, Tcl_Obj **keyPtrPtr, Tcl_Obj **valuePtrPtr, int *donePtr); /* 498 */
2352     void (*tcl_DictObjNext) (Tcl_DictSearch *searchPtr, Tcl_Obj **keyPtrPtr, Tcl_Obj **valuePtrPtr, int *donePtr); /* 499 */
2353     void (*tcl_DictObjDone) (Tcl_DictSearch *searchPtr); /* 500 */
2354     int (*tcl_DictObjPutKeyList) (Tcl_Interp *interp, Tcl_Obj *dictPtr, int keyc, Tcl_Obj *const *keyv, Tcl_Obj *valuePtr); /* 501 */
2355     int (*tcl_DictObjRemoveKeyList) (Tcl_Interp *interp, Tcl_Obj *dictPtr, int keyc, Tcl_Obj *const *keyv); /* 502 */
2356     Tcl_Obj * (*tcl_NewDictObj) (void); /* 503 */
2357     Tcl_Obj * (*tcl_DbNewDictObj) (const char *file, int line); /* 504 */
2358     void (*tcl_RegisterConfig) (Tcl_Interp *interp, const char *pkgName, const Tcl_Config *configuration, const char *valEncoding); /* 505 */
2359     Tcl_Namespace * (*tcl_CreateNamespace) (Tcl_Interp *interp, const char *name, ClientData clientData, Tcl_NamespaceDeleteProc *deleteProc); /* 506 */
2360     void (*tcl_DeleteNamespace) (Tcl_Namespace *nsPtr); /* 507 */
2361     int (*tcl_AppendExportList) (Tcl_Interp *interp, Tcl_Namespace *nsPtr, Tcl_Obj *objPtr); /* 508 */
2362     int (*tcl_Export) (Tcl_Interp *interp, Tcl_Namespace *nsPtr, const char *pattern, int resetListFirst); /* 509 */
2363     int (*tcl_Import) (Tcl_Interp *interp, Tcl_Namespace *nsPtr, const char *pattern, int allowOverwrite); /* 510 */
2364     int (*tcl_ForgetImport) (Tcl_Interp *interp, Tcl_Namespace *nsPtr, const char *pattern); /* 511 */
2365     Tcl_Namespace * (*tcl_GetCurrentNamespace) (Tcl_Interp *interp); /* 512 */
2366     Tcl_Namespace * (*tcl_GetGlobalNamespace) (Tcl_Interp *interp); /* 513 */
2367     Tcl_Namespace * (*tcl_FindNamespace) (Tcl_Interp *interp, const char *name, Tcl_Namespace *contextNsPtr, int flags); /* 514 */
2368     Tcl_Command (*tcl_FindCommand) (Tcl_Interp *interp, const char *name, Tcl_Namespace *contextNsPtr, int flags); /* 515 */
2369     Tcl_Command (*tcl_GetCommandFromObj) (Tcl_Interp *interp, Tcl_Obj *objPtr); /* 516 */
2370     void (*tcl_GetCommandFullName) (Tcl_Interp *interp, Tcl_Command command, Tcl_Obj *objPtr); /* 517 */
2371     int (*tcl_FSEvalFileEx) (Tcl_Interp *interp, Tcl_Obj *fileName, const char *encodingName); /* 518 */
2372     Tcl_ExitProc * (*tcl_SetExitProc) (Tcl_ExitProc *proc); /* 519 */
2373     void (*tcl_LimitAddHandler) (Tcl_Interp *interp, int type, Tcl_LimitHandlerProc *handlerProc, ClientData clientData, Tcl_LimitHandlerDeleteProc *deleteProc); /* 520 */
2374     void (*tcl_LimitRemoveHandler) (Tcl_Interp *interp, int type, Tcl_LimitHandlerProc *handlerProc, ClientData clientData); /* 521 */
2375     int (*tcl_LimitReady) (Tcl_Interp *interp); /* 522 */
2376     int (*tcl_LimitCheck) (Tcl_Interp *interp); /* 523 */
2377     int (*tcl_LimitExceeded) (Tcl_Interp *interp); /* 524 */
2378     void (*tcl_LimitSetCommands) (Tcl_Interp *interp, int commandLimit); /* 525 */
2379     void (*tcl_LimitSetTime) (Tcl_Interp *interp, Tcl_Time *timeLimitPtr); /* 526 */
2380     void (*tcl_LimitSetGranularity) (Tcl_Interp *interp, int type, int granularity); /* 527 */
2381     int (*tcl_LimitTypeEnabled) (Tcl_Interp *interp, int type); /* 528 */
2382     int (*tcl_LimitTypeExceeded) (Tcl_Interp *interp, int type); /* 529 */
2383     void (*tcl_LimitTypeSet) (Tcl_Interp *interp, int type); /* 530 */
2384     void (*tcl_LimitTypeReset) (Tcl_Interp *interp, int type); /* 531 */
2385     int (*tcl_LimitGetCommands) (Tcl_Interp *interp); /* 532 */
2386     void (*tcl_LimitGetTime) (Tcl_Interp *interp, Tcl_Time *timeLimitPtr); /* 533 */
2387     int (*tcl_LimitGetGranularity) (Tcl_Interp *interp, int type); /* 534 */
2388     Tcl_InterpState (*tcl_SaveInterpState) (Tcl_Interp *interp, int status); /* 535 */
2389     int (*tcl_RestoreInterpState) (Tcl_Interp *interp, Tcl_InterpState state); /* 536 */
2390     void (*tcl_DiscardInterpState) (Tcl_InterpState state); /* 537 */
2391     int (*tcl_SetReturnOptions) (Tcl_Interp *interp, Tcl_Obj *options); /* 538 */
2392     Tcl_Obj * (*tcl_GetReturnOptions) (Tcl_Interp *interp, int result); /* 539 */
2393     int (*tcl_IsEnsemble) (Tcl_Command token); /* 540 */
2394     Tcl_Command (*tcl_CreateEnsemble) (Tcl_Interp *interp, const char *name, Tcl_Namespace *namespacePtr, int flags); /* 541 */
2395     Tcl_Command (*tcl_FindEnsemble) (Tcl_Interp *interp, Tcl_Obj *cmdNameObj, int flags); /* 542 */
2396     int (*tcl_SetEnsembleSubcommandList) (Tcl_Interp *interp, Tcl_Command token, Tcl_Obj *subcmdList); /* 543 */
2397     int (*tcl_SetEnsembleMappingDict) (Tcl_Interp *interp, Tcl_Command token, Tcl_Obj *mapDict); /* 544 */
2398     int (*tcl_SetEnsembleUnknownHandler) (Tcl_Interp *interp, Tcl_Command token, Tcl_Obj *unknownList); /* 545 */
2399     int (*tcl_SetEnsembleFlags) (Tcl_Interp *interp, Tcl_Command token, int flags); /* 546 */
2400     int (*tcl_GetEnsembleSubcommandList) (Tcl_Interp *interp, Tcl_Command token, Tcl_Obj **subcmdListPtr); /* 547 */
2401     int (*tcl_GetEnsembleMappingDict) (Tcl_Interp *interp, Tcl_Command token, Tcl_Obj **mapDictPtr); /* 548 */
2402     int (*tcl_GetEnsembleUnknownHandler) (Tcl_Interp *interp, Tcl_Command token, Tcl_Obj **unknownListPtr); /* 549 */
2403     int (*tcl_GetEnsembleFlags) (Tcl_Interp *interp, Tcl_Command token, int *flagsPtr); /* 550 */
2404     int (*tcl_GetEnsembleNamespace) (Tcl_Interp *interp, Tcl_Command token, Tcl_Namespace **namespacePtrPtr); /* 551 */
2405     void (*tcl_SetTimeProc) (Tcl_GetTimeProc *getProc, Tcl_ScaleTimeProc *scaleProc, ClientData clientData); /* 552 */
2406     void (*tcl_QueryTimeProc) (Tcl_GetTimeProc **getProc, Tcl_ScaleTimeProc **scaleProc, ClientData *clientData); /* 553 */
2407     Tcl_DriverThreadActionProc * (*tcl_ChannelThreadActionProc) (const Tcl_ChannelType *chanTypePtr); /* 554 */
2408     Tcl_Obj * (*tcl_NewBignumObj) (mp_int *value); /* 555 */
2409     Tcl_Obj * (*tcl_DbNewBignumObj) (mp_int *value, const char *file, int line); /* 556 */
2410     void (*tcl_SetBignumObj) (Tcl_Obj *obj, mp_int *value); /* 557 */
2411     int (*tcl_GetBignumFromObj) (Tcl_Interp *interp, Tcl_Obj *obj, mp_int *value); /* 558 */
2412     int (*tcl_TakeBignumFromObj) (Tcl_Interp *interp, Tcl_Obj *obj, mp_int *value); /* 559 */
2413     int (*tcl_TruncateChannel) (Tcl_Channel chan, Tcl_WideInt length); /* 560 */
2414     Tcl_DriverTruncateProc * (*tcl_ChannelTruncateProc) (const Tcl_ChannelType *chanTypePtr); /* 561 */
2415     void (*tcl_SetChannelErrorInterp) (Tcl_Interp *interp, Tcl_Obj *msg); /* 562 */
2416     void (*tcl_GetChannelErrorInterp) (Tcl_Interp *interp, Tcl_Obj **msg); /* 563 */
2417     void (*tcl_SetChannelError) (Tcl_Channel chan, Tcl_Obj *msg); /* 564 */
2418     void (*tcl_GetChannelError) (Tcl_Channel chan, Tcl_Obj **msg); /* 565 */
2419     int (*tcl_InitBignumFromDouble) (Tcl_Interp *interp, double initval, mp_int *toInit); /* 566 */
2420     Tcl_Obj * (*tcl_GetNamespaceUnknownHandler) (Tcl_Interp *interp, Tcl_Namespace *nsPtr); /* 567 */
2421     int (*tcl_SetNamespaceUnknownHandler) (Tcl_Interp *interp, Tcl_Namespace *nsPtr, Tcl_Obj *handlerPtr); /* 568 */
2422     int (*tcl_GetEncodingFromObj) (Tcl_Interp *interp, Tcl_Obj *objPtr, Tcl_Encoding *encodingPtr); /* 569 */
2423     Tcl_Obj * (*tcl_GetEncodingSearchPath) (void); /* 570 */
2424     int (*tcl_SetEncodingSearchPath) (Tcl_Obj *searchPath); /* 571 */
2425     const char * (*tcl_GetEncodingNameFromEnvironment) (Tcl_DString *bufPtr); /* 572 */
2426     int (*tcl_PkgRequireProc) (Tcl_Interp *interp, const char *name, int objc, Tcl_Obj *const objv[], void *clientDataPtr); /* 573 */
2427     void (*tcl_AppendObjToErrorInfo) (Tcl_Interp *interp, Tcl_Obj *objPtr); /* 574 */
2428     void (*tcl_AppendLimitedToObj) (Tcl_Obj *objPtr, const char *bytes, int length, int limit, const char *ellipsis); /* 575 */
2429     Tcl_Obj * (*tcl_Format) (Tcl_Interp *interp, const char *format, int objc, Tcl_Obj *const objv[]); /* 576 */
2430     int (*tcl_AppendFormatToObj) (Tcl_Interp *interp, Tcl_Obj *objPtr, const char *format, int objc, Tcl_Obj *const objv[]); /* 577 */
2431     Tcl_Obj * (*tcl_ObjPrintf) (const char *format, ...) TCL_FORMAT_PRINTF(1, 2); /* 578 */
2432     void (*tcl_AppendPrintfToObj) (Tcl_Obj *objPtr, const char *format, ...) TCL_FORMAT_PRINTF(2, 3); /* 579 */
2433     int (*tcl_CancelEval) (Tcl_Interp *interp, Tcl_Obj *resultObjPtr, ClientData clientData, int flags); /* 580 */
2434     int (*tcl_Canceled) (Tcl_Interp *interp, int flags); /* 581 */
2435     int (*tcl_CreatePipe) (Tcl_Interp *interp, Tcl_Channel *rchan, Tcl_Channel *wchan, int flags); /* 582 */
2436     Tcl_Command (*tcl_NRCreateCommand) (Tcl_Interp *interp, const char *cmdName, Tcl_ObjCmdProc *proc, Tcl_ObjCmdProc *nreProc, ClientData clientData, Tcl_CmdDeleteProc *deleteProc); /* 583 */
2437     int (*tcl_NREvalObj) (Tcl_Interp *interp, Tcl_Obj *objPtr, int flags); /* 584 */
2438     int (*tcl_NREvalObjv) (Tcl_Interp *interp, int objc, Tcl_Obj *const objv[], int flags); /* 585 */
2439     int (*tcl_NRCmdSwap) (Tcl_Interp *interp, Tcl_Command cmd, int objc, Tcl_Obj *const objv[], int flags); /* 586 */
2440     void (*tcl_NRAddCallback) (Tcl_Interp *interp, Tcl_NRPostProc *postProcPtr, ClientData data0, ClientData data1, ClientData data2, ClientData data3); /* 587 */
2441     int (*tcl_NRCallObjProc) (Tcl_Interp *interp, Tcl_ObjCmdProc *objProc, ClientData clientData, int objc, Tcl_Obj *const objv[]); /* 588 */
2442     unsigned (*tcl_GetFSDeviceFromStat) (const Tcl_StatBuf *statPtr); /* 589 */
2443     unsigned (*tcl_GetFSInodeFromStat) (const Tcl_StatBuf *statPtr); /* 590 */
2444     unsigned (*tcl_GetModeFromStat) (const Tcl_StatBuf *statPtr); /* 591 */
2445     int (*tcl_GetLinkCountFromStat) (const Tcl_StatBuf *statPtr); /* 592 */
2446     int (*tcl_GetUserIdFromStat) (const Tcl_StatBuf *statPtr); /* 593 */
2447     int (*tcl_GetGroupIdFromStat) (const Tcl_StatBuf *statPtr); /* 594 */
2448     int (*tcl_GetDeviceTypeFromStat) (const Tcl_StatBuf *statPtr); /* 595 */
2449     Tcl_WideInt (*tcl_GetAccessTimeFromStat) (const Tcl_StatBuf *statPtr); /* 596 */
2450     Tcl_WideInt (*tcl_GetModificationTimeFromStat) (const Tcl_StatBuf *statPtr); /* 597 */
2451     Tcl_WideInt (*tcl_GetChangeTimeFromStat) (const Tcl_StatBuf *statPtr); /* 598 */
2452     Tcl_WideUInt (*tcl_GetSizeFromStat) (const Tcl_StatBuf *statPtr); /* 599 */
2453     Tcl_WideUInt (*tcl_GetBlocksFromStat) (const Tcl_StatBuf *statPtr); /* 600 */
2454     unsigned (*tcl_GetBlockSizeFromStat) (const Tcl_StatBuf *statPtr); /* 601 */
2455     int (*tcl_SetEnsembleParameterList) (Tcl_Interp *interp, Tcl_Command token, Tcl_Obj *paramList); /* 602 */
2456     int (*tcl_GetEnsembleParameterList) (Tcl_Interp *interp, Tcl_Command token, Tcl_Obj **paramListPtr); /* 603 */
2457     int (*tcl_ParseArgsObjv) (Tcl_Interp *interp, const Tcl_ArgvInfo *argTable, int *objcPtr, Tcl_Obj *const *objv, Tcl_Obj ***remObjv); /* 604 */
2458     int (*tcl_GetErrorLine) (Tcl_Interp *interp); /* 605 */
2459     void (*tcl_SetErrorLine) (Tcl_Interp *interp, int lineNum); /* 606 */
2460     void (*tcl_TransferResult) (Tcl_Interp *sourceInterp, int result, Tcl_Interp *targetInterp); /* 607 */
2461     int (*tcl_InterpActive) (Tcl_Interp *interp); /* 608 */
2462     void (*tcl_BackgroundException) (Tcl_Interp *interp, int code); /* 609 */
2463     int (*tcl_ZlibDeflate) (Tcl_Interp *interp, int format, Tcl_Obj *data, int level, Tcl_Obj *gzipHeaderDictObj); /* 610 */
2464     int (*tcl_ZlibInflate) (Tcl_Interp *interp, int format, Tcl_Obj *data, int buffersize, Tcl_Obj *gzipHeaderDictObj); /* 611 */
2465     unsigned int (*tcl_ZlibCRC32) (unsigned int crc, const unsigned char *buf, int len); /* 612 */
2466     unsigned int (*tcl_ZlibAdler32) (unsigned int adler, const unsigned char *buf, int len); /* 613 */
2467     int (*tcl_ZlibStreamInit) (Tcl_Interp *interp, int mode, int format, int level, Tcl_Obj *dictObj, Tcl_ZlibStream *zshandle); /* 614 */
2468     Tcl_Obj * (*tcl_ZlibStreamGetCommandName) (Tcl_ZlibStream zshandle); /* 615 */
2469     int (*tcl_ZlibStreamEof) (Tcl_ZlibStream zshandle); /* 616 */
2470     int (*tcl_ZlibStreamChecksum) (Tcl_ZlibStream zshandle); /* 617 */
2471     int (*tcl_ZlibStreamPut) (Tcl_ZlibStream zshandle, Tcl_Obj *data, int flush); /* 618 */
2472     int (*tcl_ZlibStreamGet) (Tcl_ZlibStream zshandle, Tcl_Obj *data, int count); /* 619 */
2473     int (*tcl_ZlibStreamClose) (Tcl_ZlibStream zshandle); /* 620 */
2474     int (*tcl_ZlibStreamReset) (Tcl_ZlibStream zshandle); /* 621 */
2475     void (*tcl_SetStartupScript) (Tcl_Obj *path, const char *encoding); /* 622 */
2476     Tcl_Obj * (*tcl_GetStartupScript) (const char **encodingPtr); /* 623 */
2477     int (*tcl_CloseEx) (Tcl_Interp *interp, Tcl_Channel chan, int flags); /* 624 */
2478     int (*tcl_NRExprObj) (Tcl_Interp *interp, Tcl_Obj *objPtr, Tcl_Obj *resultPtr); /* 625 */
2479     int (*tcl_NRSubstObj) (Tcl_Interp *interp, Tcl_Obj *objPtr, int flags); /* 626 */
2480     int (*tcl_LoadFile) (Tcl_Interp *interp, Tcl_Obj *pathPtr, const char *const symv[], int flags, void *procPtrs, Tcl_LoadHandle *handlePtr); /* 627 */
2481     void * (*tcl_FindSymbol) (Tcl_Interp *interp, Tcl_LoadHandle handle, const char *symbol); /* 628 */
2482     int (*tcl_FSUnloadFile) (Tcl_Interp *interp, Tcl_LoadHandle handlePtr); /* 629 */
2483     void (*tcl_ZlibStreamSetCompressionDictionary) (Tcl_ZlibStream zhandle, Tcl_Obj *compressionDictionaryObj); /* 630 */
2484 } TclStubs;
2485
2486 extern const TclStubs *tclStubsPtr;
2487
2488 #ifdef __cplusplus
2489 }
2490 #endif
2491
2492 #if defined(USE_TCL_STUBS)
2493
2494 /*
2495  * Inline function declarations:
2496  */
2497
2498 #define Tcl_PkgProvideEx \
2499         (tclStubsPtr->tcl_PkgProvideEx) /* 0 */
2500 #define Tcl_PkgRequireEx \
2501         (tclStubsPtr->tcl_PkgRequireEx) /* 1 */
2502 #define Tcl_Panic \
2503         (tclStubsPtr->tcl_Panic) /* 2 */
2504 #define Tcl_Alloc \
2505         (tclStubsPtr->tcl_Alloc) /* 3 */
2506 #define Tcl_Free \
2507         (tclStubsPtr->tcl_Free) /* 4 */
2508 #define Tcl_Realloc \
2509         (tclStubsPtr->tcl_Realloc) /* 5 */
2510 #define Tcl_DbCkalloc \
2511         (tclStubsPtr->tcl_DbCkalloc) /* 6 */
2512 #define Tcl_DbCkfree \
2513         (tclStubsPtr->tcl_DbCkfree) /* 7 */
2514 #define Tcl_DbCkrealloc \
2515         (tclStubsPtr->tcl_DbCkrealloc) /* 8 */
2516 #if !defined(_WIN32) && !defined(MAC_OSX_TCL) /* UNIX */
2517 #define Tcl_CreateFileHandler \
2518         (tclStubsPtr->tcl_CreateFileHandler) /* 9 */
2519 #endif /* UNIX */
2520 #ifdef MAC_OSX_TCL /* MACOSX */
2521 #define Tcl_CreateFileHandler \
2522         (tclStubsPtr->tcl_CreateFileHandler) /* 9 */
2523 #endif /* MACOSX */
2524 #if !defined(_WIN32) && !defined(MAC_OSX_TCL) /* UNIX */
2525 #define Tcl_DeleteFileHandler \
2526         (tclStubsPtr->tcl_DeleteFileHandler) /* 10 */
2527 #endif /* UNIX */
2528 #ifdef MAC_OSX_TCL /* MACOSX */
2529 #define Tcl_DeleteFileHandler \
2530         (tclStubsPtr->tcl_DeleteFileHandler) /* 10 */
2531 #endif /* MACOSX */
2532 #define Tcl_SetTimer \
2533         (tclStubsPtr->tcl_SetTimer) /* 11 */
2534 #define Tcl_Sleep \
2535         (tclStubsPtr->tcl_Sleep) /* 12 */
2536 #define Tcl_WaitForEvent \
2537         (tclStubsPtr->tcl_WaitForEvent) /* 13 */
2538 #define Tcl_AppendAllObjTypes \
2539         (tclStubsPtr->tcl_AppendAllObjTypes) /* 14 */
2540 #define Tcl_AppendStringsToObj \
2541         (tclStubsPtr->tcl_AppendStringsToObj) /* 15 */
2542 #define Tcl_AppendToObj \
2543         (tclStubsPtr->tcl_AppendToObj) /* 16 */
2544 #define Tcl_ConcatObj \
2545         (tclStubsPtr->tcl_ConcatObj) /* 17 */
2546 #define Tcl_ConvertToType \
2547         (tclStubsPtr->tcl_ConvertToType) /* 18 */
2548 #define Tcl_DbDecrRefCount \
2549         (tclStubsPtr->tcl_DbDecrRefCount) /* 19 */
2550 #define Tcl_DbIncrRefCount \
2551         (tclStubsPtr->tcl_DbIncrRefCount) /* 20 */
2552 #define Tcl_DbIsShared \
2553         (tclStubsPtr->tcl_DbIsShared) /* 21 */
2554 #define Tcl_DbNewBooleanObj \
2555         (tclStubsPtr->tcl_DbNewBooleanObj) /* 22 */
2556 #define Tcl_DbNewByteArrayObj \
2557         (tclStubsPtr->tcl_DbNewByteArrayObj) /* 23 */
2558 #define Tcl_DbNewDoubleObj \
2559         (tclStubsPtr->tcl_DbNewDoubleObj) /* 24 */
2560 #define Tcl_DbNewListObj \
2561         (tclStubsPtr->tcl_DbNewListObj) /* 25 */
2562 #define Tcl_DbNewLongObj \
2563         (tclStubsPtr->tcl_DbNewLongObj) /* 26 */
2564 #define Tcl_DbNewObj \
2565         (tclStubsPtr->tcl_DbNewObj) /* 27 */
2566 #define Tcl_DbNewStringObj \
2567         (tclStubsPtr->tcl_DbNewStringObj) /* 28 */
2568 #define Tcl_DuplicateObj \
2569         (tclStubsPtr->tcl_DuplicateObj) /* 29 */
2570 #define TclFreeObj \
2571         (tclStubsPtr->tclFreeObj) /* 30 */
2572 #define Tcl_GetBoolean \
2573         (tclStubsPtr->tcl_GetBoolean) /* 31 */
2574 #define Tcl_GetBooleanFromObj \
2575         (tclStubsPtr->tcl_GetBooleanFromObj) /* 32 */
2576 #define Tcl_GetByteArrayFromObj \
2577         (tclStubsPtr->tcl_GetByteArrayFromObj) /* 33 */
2578 #define Tcl_GetDouble \
2579         (tclStubsPtr->tcl_GetDouble) /* 34 */
2580 #define Tcl_GetDoubleFromObj \
2581         (tclStubsPtr->tcl_GetDoubleFromObj) /* 35 */
2582 #define Tcl_GetIndexFromObj \
2583         (tclStubsPtr->tcl_GetIndexFromObj) /* 36 */
2584 #define Tcl_GetInt \
2585         (tclStubsPtr->tcl_GetInt) /* 37 */
2586 #define Tcl_GetIntFromObj \
2587         (tclStubsPtr->tcl_GetIntFromObj) /* 38 */
2588 #define Tcl_GetLongFromObj \
2589         (tclStubsPtr->tcl_GetLongFromObj) /* 39 */
2590 #define Tcl_GetObjType \
2591         (tclStubsPtr->tcl_GetObjType) /* 40 */
2592 #define Tcl_GetStringFromObj \
2593         (tclStubsPtr->tcl_GetStringFromObj) /* 41 */
2594 #define Tcl_InvalidateStringRep \
2595         (tclStubsPtr->tcl_InvalidateStringRep) /* 42 */
2596 #define Tcl_ListObjAppendList \
2597         (tclStubsPtr->tcl_ListObjAppendList) /* 43 */
2598 #define Tcl_ListObjAppendElement \
2599         (tclStubsPtr->tcl_ListObjAppendElement) /* 44 */
2600 #define Tcl_ListObjGetElements \
2601         (tclStubsPtr->tcl_ListObjGetElements) /* 45 */
2602 #define Tcl_ListObjIndex \
2603         (tclStubsPtr->tcl_ListObjIndex) /* 46 */
2604 #define Tcl_ListObjLength \
2605         (tclStubsPtr->tcl_ListObjLength) /* 47 */
2606 #define Tcl_ListObjReplace \
2607         (tclStubsPtr->tcl_ListObjReplace) /* 48 */
2608 #define Tcl_NewBooleanObj \
2609         (tclStubsPtr->tcl_NewBooleanObj) /* 49 */
2610 #define Tcl_NewByteArrayObj \
2611         (tclStubsPtr->tcl_NewByteArrayObj) /* 50 */
2612 #define Tcl_NewDoubleObj \
2613         (tclStubsPtr->tcl_NewDoubleObj) /* 51 */
2614 #define Tcl_NewIntObj \
2615         (tclStubsPtr->tcl_NewIntObj) /* 52 */
2616 #define Tcl_NewListObj \
2617         (tclStubsPtr->tcl_NewListObj) /* 53 */
2618 #define Tcl_NewLongObj \
2619         (tclStubsPtr->tcl_NewLongObj) /* 54 */
2620 #define Tcl_NewObj \
2621         (tclStubsPtr->tcl_NewObj) /* 55 */
2622 #define Tcl_NewStringObj \
2623         (tclStubsPtr->tcl_NewStringObj) /* 56 */
2624 #define Tcl_SetBooleanObj \
2625         (tclStubsPtr->tcl_SetBooleanObj) /* 57 */
2626 #define Tcl_SetByteArrayLength \
2627         (tclStubsPtr->tcl_SetByteArrayLength) /* 58 */
2628 #define Tcl_SetByteArrayObj \
2629         (tclStubsPtr->tcl_SetByteArrayObj) /* 59 */
2630 #define Tcl_SetDoubleObj \
2631         (tclStubsPtr->tcl_SetDoubleObj) /* 60 */
2632 #define Tcl_SetIntObj \
2633         (tclStubsPtr->tcl_SetIntObj) /* 61 */
2634 #define Tcl_SetListObj \
2635         (tclStubsPtr->tcl_SetListObj) /* 62 */
2636 #define Tcl_SetLongObj \
2637         (tclStubsPtr->tcl_SetLongObj) /* 63 */
2638 #define Tcl_SetObjLength \
2639         (tclStubsPtr->tcl_SetObjLength) /* 64 */
2640 #define Tcl_SetStringObj \
2641         (tclStubsPtr->tcl_SetStringObj) /* 65 */
2642 #define Tcl_AddErrorInfo \
2643         (tclStubsPtr->tcl_AddErrorInfo) /* 66 */
2644 #define Tcl_AddObjErrorInfo \
2645         (tclStubsPtr->tcl_AddObjErrorInfo) /* 67 */
2646 #define Tcl_AllowExceptions \
2647         (tclStubsPtr->tcl_AllowExceptions) /* 68 */
2648 #define Tcl_AppendElement \
2649         (tclStubsPtr->tcl_AppendElement) /* 69 */
2650 #define Tcl_AppendResult \
2651         (tclStubsPtr->tcl_AppendResult) /* 70 */
2652 #define Tcl_AsyncCreate \
2653         (tclStubsPtr->tcl_AsyncCreate) /* 71 */
2654 #define Tcl_AsyncDelete \
2655         (tclStubsPtr->tcl_AsyncDelete) /* 72 */
2656 #define Tcl_AsyncInvoke \
2657         (tclStubsPtr->tcl_AsyncInvoke) /* 73 */
2658 #define Tcl_AsyncMark \
2659         (tclStubsPtr->tcl_AsyncMark) /* 74 */
2660 #define Tcl_AsyncReady \
2661         (tclStubsPtr->tcl_AsyncReady) /* 75 */
2662 #define Tcl_BackgroundError \
2663         (tclStubsPtr->tcl_BackgroundError) /* 76 */
2664 #define Tcl_Backslash \
2665         (tclStubsPtr->tcl_Backslash) /* 77 */
2666 #define Tcl_BadChannelOption \
2667         (tclStubsPtr->tcl_BadChannelOption) /* 78 */
2668 #define Tcl_CallWhenDeleted \
2669         (tclStubsPtr->tcl_CallWhenDeleted) /* 79 */
2670 #define Tcl_CancelIdleCall \
2671         (tclStubsPtr->tcl_CancelIdleCall) /* 80 */
2672 #define Tcl_Close \
2673         (tclStubsPtr->tcl_Close) /* 81 */
2674 #define Tcl_CommandComplete \
2675         (tclStubsPtr->tcl_CommandComplete) /* 82 */
2676 #define Tcl_Concat \
2677         (tclStubsPtr->tcl_Concat) /* 83 */
2678 #define Tcl_ConvertElement \
2679         (tclStubsPtr->tcl_ConvertElement) /* 84 */
2680 #define Tcl_ConvertCountedElement \
2681         (tclStubsPtr->tcl_ConvertCountedElement) /* 85 */
2682 #define Tcl_CreateAlias \
2683         (tclStubsPtr->tcl_CreateAlias) /* 86 */
2684 #define Tcl_CreateAliasObj \
2685         (tclStubsPtr->tcl_CreateAliasObj) /* 87 */
2686 #define Tcl_CreateChannel \
2687         (tclStubsPtr->tcl_CreateChannel) /* 88 */
2688 #define Tcl_CreateChannelHandler \
2689         (tclStubsPtr->tcl_CreateChannelHandler) /* 89 */
2690 #define Tcl_CreateCloseHandler \
2691         (tclStubsPtr->tcl_CreateCloseHandler) /* 90 */
2692 #define Tcl_CreateCommand \
2693         (tclStubsPtr->tcl_CreateCommand) /* 91 */
2694 #define Tcl_CreateEventSource \
2695         (tclStubsPtr->tcl_CreateEventSource) /* 92 */
2696 #define Tcl_CreateExitHandler \
2697         (tclStubsPtr->tcl_CreateExitHandler) /* 93 */
2698 #define Tcl_CreateInterp \
2699         (tclStubsPtr->tcl_CreateInterp) /* 94 */
2700 #define Tcl_CreateMathFunc \
2701         (tclStubsPtr->tcl_CreateMathFunc) /* 95 */
2702 #define Tcl_CreateObjCommand \
2703         (tclStubsPtr->tcl_CreateObjCommand) /* 96 */
2704 #define Tcl_CreateSlave \
2705         (tclStubsPtr->tcl_CreateSlave) /* 97 */
2706 #define Tcl_CreateTimerHandler \
2707         (tclStubsPtr->tcl_CreateTimerHandler) /* 98 */
2708 #define Tcl_CreateTrace \
2709         (tclStubsPtr->tcl_CreateTrace) /* 99 */
2710 #define Tcl_DeleteAssocData \
2711         (tclStubsPtr->tcl_DeleteAssocData) /* 100 */
2712 #define Tcl_DeleteChannelHandler \
2713         (tclStubsPtr->tcl_DeleteChannelHandler) /* 101 */
2714 #define Tcl_DeleteCloseHandler \
2715         (tclStubsPtr->tcl_DeleteCloseHandler) /* 102 */
2716 #define Tcl_DeleteCommand \
2717         (tclStubsPtr->tcl_DeleteCommand) /* 103 */
2718 #define Tcl_DeleteCommandFromToken \
2719         (tclStubsPtr->tcl_DeleteCommandFromToken) /* 104 */
2720 #define Tcl_DeleteEvents \
2721         (tclStubsPtr->tcl_DeleteEvents) /* 105 */
2722 #define Tcl_DeleteEventSource \
2723         (tclStubsPtr->tcl_DeleteEventSource) /* 106 */
2724 #define Tcl_DeleteExitHandler \
2725         (tclStubsPtr->tcl_DeleteExitHandler) /* 107 */
2726 #define Tcl_DeleteHashEntry \
2727         (tclStubsPtr->tcl_DeleteHashEntry) /* 108 */
2728 #define Tcl_DeleteHashTable \
2729         (tclStubsPtr->tcl_DeleteHashTable) /* 109 */
2730 #define Tcl_DeleteInterp \
2731         (tclStubsPtr->tcl_DeleteInterp) /* 110 */
2732 #define Tcl_DetachPids \
2733         (tclStubsPtr->tcl_DetachPids) /* 111 */
2734 #define Tcl_DeleteTimerHandler \
2735         (tclStubsPtr->tcl_DeleteTimerHandler) /* 112 */
2736 #define Tcl_DeleteTrace \
2737         (tclStubsPtr->tcl_DeleteTrace) /* 113 */
2738 #define Tcl_DontCallWhenDeleted \
2739         (tclStubsPtr->tcl_DontCallWhenDeleted) /* 114 */
2740 #define Tcl_DoOneEvent \
2741         (tclStubsPtr->tcl_DoOneEvent) /* 115 */
2742 #define Tcl_DoWhenIdle \
2743         (tclStubsPtr->tcl_DoWhenIdle) /* 116 */
2744 #define Tcl_DStringAppend \
2745         (tclStubsPtr->tcl_DStringAppend) /* 117 */
2746 #define Tcl_DStringAppendElement \
2747         (tclStubsPtr->tcl_DStringAppendElement) /* 118 */
2748 #define Tcl_DStringEndSublist \
2749         (tclStubsPtr->tcl_DStringEndSublist) /* 119 */
2750 #define Tcl_DStringFree \
2751         (tclStubsPtr->tcl_DStringFree) /* 120 */
2752 #define Tcl_DStringGetResult \
2753         (tclStubsPtr->tcl_DStringGetResult) /* 121 */
2754 #define Tcl_DStringInit \
2755         (tclStubsPtr->tcl_DStringInit) /* 122 */
2756 #define Tcl_DStringResult \
2757         (tclStubsPtr->tcl_DStringResult) /* 123 */
2758 #define Tcl_DStringSetLength \
2759         (tclStubsPtr->tcl_DStringSetLength) /* 124 */
2760 #define Tcl_DStringStartSublist \
2761         (tclStubsPtr->tcl_DStringStartSublist) /* 125 */
2762 #define Tcl_Eof \
2763         (tclStubsPtr->tcl_Eof) /* 126 */
2764 #define Tcl_ErrnoId \
2765         (tclStubsPtr->tcl_ErrnoId) /* 127 */
2766 #define Tcl_ErrnoMsg \
2767         (tclStubsPtr->tcl_ErrnoMsg) /* 128 */
2768 #define Tcl_Eval \
2769         (tclStubsPtr->tcl_Eval) /* 129 */
2770 #define Tcl_EvalFile \
2771         (tclStubsPtr->tcl_EvalFile) /* 130 */
2772 #define Tcl_EvalObj \
2773         (tclStubsPtr->tcl_EvalObj) /* 131 */
2774 #define Tcl_EventuallyFree \
2775         (tclStubsPtr->tcl_EventuallyFree) /* 132 */
2776 #define Tcl_Exit \
2777         (tclStubsPtr->tcl_Exit) /* 133 */
2778 #define Tcl_ExposeCommand \
2779         (tclStubsPtr->tcl_ExposeCommand) /* 134 */
2780 #define Tcl_ExprBoolean \
2781         (tclStubsPtr->tcl_ExprBoolean) /* 135 */
2782 #define Tcl_ExprBooleanObj \
2783         (tclStubsPtr->tcl_ExprBooleanObj) /* 136 */
2784 #define Tcl_ExprDouble \
2785         (tclStubsPtr->tcl_ExprDouble) /* 137 */
2786 #define Tcl_ExprDoubleObj \
2787         (tclStubsPtr->tcl_ExprDoubleObj) /* 138 */
2788 #define Tcl_ExprLong \
2789         (tclStubsPtr->tcl_ExprLong) /* 139 */
2790 #define Tcl_ExprLongObj \
2791         (tclStubsPtr->tcl_ExprLongObj) /* 140 */
2792 #define Tcl_ExprObj \
2793         (tclStubsPtr->tcl_ExprObj) /* 141 */
2794 #define Tcl_ExprString \
2795         (tclStubsPtr->tcl_ExprString) /* 142 */
2796 #define Tcl_Finalize \
2797         (tclStubsPtr->tcl_Finalize) /* 143 */
2798 #define Tcl_FindExecutable \
2799         (tclStubsPtr->tcl_FindExecutable) /* 144 */
2800 #define Tcl_FirstHashEntry \
2801         (tclStubsPtr->tcl_FirstHashEntry) /* 145 */
2802 #define Tcl_Flush \
2803         (tclStubsPtr->tcl_Flush) /* 146 */
2804 #define Tcl_FreeResult \
2805         (tclStubsPtr->tcl_FreeResult) /* 147 */
2806 #define Tcl_GetAlias \
2807         (tclStubsPtr->tcl_GetAlias) /* 148 */
2808 #define Tcl_GetAliasObj \
2809         (tclStubsPtr->tcl_GetAliasObj) /* 149 */
2810 #define Tcl_GetAssocData \
2811         (tclStubsPtr->tcl_GetAssocData) /* 150 */
2812 #define Tcl_GetChannel \
2813         (tclStubsPtr->tcl_GetChannel) /* 151 */
2814 #define Tcl_GetChannelBufferSize \
2815         (tclStubsPtr->tcl_GetChannelBufferSize) /* 152 */
2816 #define Tcl_GetChannelHandle \
2817         (tclStubsPtr->tcl_GetChannelHandle) /* 153 */
2818 #define Tcl_GetChannelInstanceData \
2819         (tclStubsPtr->tcl_GetChannelInstanceData) /* 154 */
2820 #define Tcl_GetChannelMode \
2821         (tclStubsPtr->tcl_GetChannelMode) /* 155 */
2822 #define Tcl_GetChannelName \
2823         (tclStubsPtr->tcl_GetChannelName) /* 156 */
2824 #define Tcl_GetChannelOption \
2825         (tclStubsPtr->tcl_GetChannelOption) /* 157 */
2826 #define Tcl_GetChannelType \
2827         (tclStubsPtr->tcl_GetChannelType) /* 158 */
2828 #define Tcl_GetCommandInfo \
2829         (tclStubsPtr->tcl_GetCommandInfo) /* 159 */
2830 #define Tcl_GetCommandName \
2831         (tclStubsPtr->tcl_GetCommandName) /* 160 */
2832 #define Tcl_GetErrno \
2833         (tclStubsPtr->tcl_GetErrno) /* 161 */
2834 #define Tcl_GetHostName \
2835         (tclStubsPtr->tcl_GetHostName) /* 162 */
2836 #define Tcl_GetInterpPath \
2837         (tclStubsPtr->tcl_GetInterpPath) /* 163 */
2838 #define Tcl_GetMaster \
2839         (tclStubsPtr->tcl_GetMaster) /* 164 */
2840 #define Tcl_GetNameOfExecutable \
2841         (tclStubsPtr->tcl_GetNameOfExecutable) /* 165 */
2842 #define Tcl_GetObjResult \
2843         (tclStubsPtr->tcl_GetObjResult) /* 166 */
2844 #if !defined(_WIN32) && !defined(MAC_OSX_TCL) /* UNIX */
2845 #define Tcl_GetOpenFile \
2846         (tclStubsPtr->tcl_GetOpenFile) /* 167 */
2847 #endif /* UNIX */
2848 #ifdef MAC_OSX_TCL /* MACOSX */
2849 #define Tcl_GetOpenFile \
2850         (tclStubsPtr->tcl_GetOpenFile) /* 167 */
2851 #endif /* MACOSX */
2852 #define Tcl_GetPathType \
2853         (tclStubsPtr->tcl_GetPathType) /* 168 */
2854 #define Tcl_Gets \
2855         (tclStubsPtr->tcl_Gets) /* 169 */
2856 #define Tcl_GetsObj \
2857         (tclStubsPtr->tcl_GetsObj) /* 170 */
2858 #define Tcl_GetServiceMode \
2859         (tclStubsPtr->tcl_GetServiceMode) /* 171 */
2860 #define Tcl_GetSlave \
2861         (tclStubsPtr->tcl_GetSlave) /* 172 */
2862 #define Tcl_GetStdChannel \
2863         (tclStubsPtr->tcl_GetStdChannel) /* 173 */
2864 #define Tcl_GetStringResult \
2865         (tclStubsPtr->tcl_GetStringResult) /* 174 */
2866 #define Tcl_GetVar \
2867         (tclStubsPtr->tcl_GetVar) /* 175 */
2868 #define Tcl_GetVar2 \
2869         (tclStubsPtr->tcl_GetVar2) /* 176 */
2870 #define Tcl_GlobalEval \
2871         (tclStubsPtr->tcl_GlobalEval) /* 177 */
2872 #define Tcl_GlobalEvalObj \
2873         (tclStubsPtr->tcl_GlobalEvalObj) /* 178 */
2874 #define Tcl_HideCommand \
2875         (tclStubsPtr->tcl_HideCommand) /* 179 */
2876 #define Tcl_Init \
2877         (tclStubsPtr->tcl_Init) /* 180 */
2878 #define Tcl_InitHashTable \
2879         (tclStubsPtr->tcl_InitHashTable) /* 181 */
2880 #define Tcl_InputBlocked \
2881         (tclStubsPtr->tcl_InputBlocked) /* 182 */
2882 #define Tcl_InputBuffered \
2883         (tclStubsPtr->tcl_InputBuffered) /* 183 */
2884 #define Tcl_InterpDeleted \
2885         (tclStubsPtr->tcl_InterpDeleted) /* 184 */
2886 #define Tcl_IsSafe \
2887         (tclStubsPtr->tcl_IsSafe) /* 185 */
2888 #define Tcl_JoinPath \
2889         (tclStubsPtr->tcl_JoinPath) /* 186 */
2890 #define Tcl_LinkVar \
2891         (tclStubsPtr->tcl_LinkVar) /* 187 */
2892 /* Slot 188 is reserved */
2893 #define Tcl_MakeFileChannel \
2894         (tclStubsPtr->tcl_MakeFileChannel) /* 189 */
2895 #define Tcl_MakeSafe \
2896         (tclStubsPtr->tcl_MakeSafe) /* 190 */
2897 #define Tcl_MakeTcpClientChannel \
2898         (tclStubsPtr->tcl_MakeTcpClientChannel) /* 191 */
2899 #define Tcl_Merge \
2900         (tclStubsPtr->tcl_Merge) /* 192 */
2901 #define Tcl_NextHashEntry \
2902         (tclStubsPtr->tcl_NextHashEntry) /* 193 */
2903 #define Tcl_NotifyChannel \
2904         (tclStubsPtr->tcl_NotifyChannel) /* 194 */
2905 #define Tcl_ObjGetVar2 \
2906         (tclStubsPtr->tcl_ObjGetVar2) /* 195 */
2907 #define Tcl_ObjSetVar2 \
2908         (tclStubsPtr->tcl_ObjSetVar2) /* 196 */
2909 #define Tcl_OpenCommandChannel \
2910         (tclStubsPtr->tcl_OpenCommandChannel) /* 197 */
2911 #define Tcl_OpenFileChannel \
2912         (tclStubsPtr->tcl_OpenFileChannel) /* 198 */
2913 #define Tcl_OpenTcpClient \
2914         (tclStubsPtr->tcl_OpenTcpClient) /* 199 */
2915 #define Tcl_OpenTcpServer \
2916         (tclStubsPtr->tcl_OpenTcpServer) /* 200 */
2917 #define Tcl_Preserve \
2918         (tclStubsPtr->tcl_Preserve) /* 201 */
2919 #define Tcl_PrintDouble \
2920         (tclStubsPtr->tcl_PrintDouble) /* 202 */
2921 #define Tcl_PutEnv \
2922         (tclStubsPtr->tcl_PutEnv) /* 203 */
2923 #define Tcl_PosixError \
2924         (tclStubsPtr->tcl_PosixError) /* 204 */
2925 #define Tcl_QueueEvent \
2926         (tclStubsPtr->tcl_QueueEvent) /* 205 */
2927 #define Tcl_Read \
2928         (tclStubsPtr->tcl_Read) /* 206 */
2929 #define Tcl_ReapDetachedProcs \
2930         (tclStubsPtr->tcl_ReapDetachedProcs) /* 207 */
2931 #define Tcl_RecordAndEval \
2932         (tclStubsPtr->tcl_RecordAndEval) /* 208 */
2933 #define Tcl_RecordAndEvalObj \
2934         (tclStubsPtr->tcl_RecordAndEvalObj) /* 209 */
2935 #define Tcl_RegisterChannel \
2936         (tclStubsPtr->tcl_RegisterChannel) /* 210 */
2937 #define Tcl_RegisterObjType \
2938         (tclStubsPtr->tcl_RegisterObjType) /* 211 */
2939 #define Tcl_RegExpCompile \
2940         (tclStubsPtr->tcl_RegExpCompile) /* 212 */
2941 #define Tcl_RegExpExec \
2942         (tclStubsPtr->tcl_RegExpExec) /* 213 */
2943 #define Tcl_RegExpMatch \
2944         (tclStubsPtr->tcl_RegExpMatch) /* 214 */
2945 #define Tcl_RegExpRange \
2946         (tclStubsPtr->tcl_RegExpRange) /* 215 */
2947 #define Tcl_Release \
2948         (tclStubsPtr->tcl_Release) /* 216 */
2949 #define Tcl_ResetResult \
2950         (tclStubsPtr->tcl_ResetResult) /* 217 */
2951 #define Tcl_ScanElement \
2952         (tclStubsPtr->tcl_ScanElement) /* 218 */
2953 #define Tcl_ScanCountedElement \
2954         (tclStubsPtr->tcl_ScanCountedElement) /* 219 */
2955 #define Tcl_SeekOld \
2956         (tclStubsPtr->tcl_SeekOld) /* 220 */
2957 #define Tcl_ServiceAll \
2958         (tclStubsPtr->tcl_ServiceAll) /* 221 */
2959 #define Tcl_ServiceEvent \
2960         (tclStubsPtr->tcl_ServiceEvent) /* 222 */
2961 #define Tcl_SetAssocData \
2962         (tclStubsPtr->tcl_SetAssocData) /* 223 */
2963 #define Tcl_SetChannelBufferSize \
2964         (tclStubsPtr->tcl_SetChannelBufferSize) /* 224 */
2965 #define Tcl_SetChannelOption \
2966         (tclStubsPtr->tcl_SetChannelOption) /* 225 */
2967 #define Tcl_SetCommandInfo \
2968         (tclStubsPtr->tcl_SetCommandInfo) /* 226 */
2969 #define Tcl_SetErrno \
2970         (tclStubsPtr->tcl_SetErrno) /* 227 */
2971 #define Tcl_SetErrorCode \
2972         (tclStubsPtr->tcl_SetErrorCode) /* 228 */
2973 #define Tcl_SetMaxBlockTime \
2974         (tclStubsPtr->tcl_SetMaxBlockTime) /* 229 */
2975 #define Tcl_SetPanicProc \
2976         (tclStubsPtr->tcl_SetPanicProc) /* 230 */
2977 #define Tcl_SetRecursionLimit \
2978         (tclStubsPtr->tcl_SetRecursionLimit) /* 231 */
2979 #define Tcl_SetResult \
2980         (tclStubsPtr->tcl_SetResult) /* 232 */
2981 #define Tcl_SetServiceMode \
2982         (tclStubsPtr->tcl_SetServiceMode) /* 233 */
2983 #define Tcl_SetObjErrorCode \
2984         (tclStubsPtr->tcl_SetObjErrorCode) /* 234 */
2985 #define Tcl_SetObjResult \
2986         (tclStubsPtr->tcl_SetObjResult) /* 235 */
2987 #define Tcl_SetStdChannel \
2988         (tclStubsPtr->tcl_SetStdChannel) /* 236 */
2989 #define Tcl_SetVar \
2990         (tclStubsPtr->tcl_SetVar) /* 237 */
2991 #define Tcl_SetVar2 \
2992         (tclStubsPtr->tcl_SetVar2) /* 238 */
2993 #define Tcl_SignalId \
2994         (tclStubsPtr->tcl_SignalId) /* 239 */
2995 #define Tcl_SignalMsg \
2996         (tclStubsPtr->tcl_SignalMsg) /* 240 */
2997 #define Tcl_SourceRCFile \
2998         (tclStubsPtr->tcl_SourceRCFile) /* 241 */
2999 #define Tcl_SplitList \
3000         (tclStubsPtr->tcl_SplitList) /* 242 */
3001 #define Tcl_SplitPath \
3002         (tclStubsPtr->tcl_SplitPath) /* 243 */
3003 #define Tcl_StaticPackage \
3004         (tclStubsPtr->tcl_StaticPackage) /* 244 */
3005 #define Tcl_StringMatch \
3006         (tclStubsPtr->tcl_StringMatch) /* 245 */
3007 #define Tcl_TellOld \
3008         (tclStubsPtr->tcl_TellOld) /* 246 */
3009 #define Tcl_TraceVar \
3010         (tclStubsPtr->tcl_TraceVar) /* 247 */
3011 #define Tcl_TraceVar2 \
3012         (tclStubsPtr->tcl_TraceVar2) /* 248 */
3013 #define Tcl_TranslateFileName \
3014         (tclStubsPtr->tcl_TranslateFileName) /* 249 */
3015 #define Tcl_Ungets \
3016         (tclStubsPtr->tcl_Ungets) /* 250 */
3017 #define Tcl_UnlinkVar \
3018         (tclStubsPtr->tcl_UnlinkVar) /* 251 */
3019 #define Tcl_UnregisterChannel \
3020         (tclStubsPtr->tcl_UnregisterChannel) /* 252 */
3021 #define Tcl_UnsetVar \
3022         (tclStubsPtr->tcl_UnsetVar) /* 253 */
3023 #define Tcl_UnsetVar2 \
3024         (tclStubsPtr->tcl_UnsetVar2) /* 254 */
3025 #define Tcl_UntraceVar \
3026         (tclStubsPtr->tcl_UntraceVar) /* 255 */
3027 #define Tcl_UntraceVar2 \
3028         (tclStubsPtr->tcl_UntraceVar2) /* 256 */
3029 #define Tcl_UpdateLinkedVar \
3030         (tclStubsPtr->tcl_UpdateLinkedVar) /* 257 */
3031 #define Tcl_UpVar \
3032         (tclStubsPtr->tcl_UpVar) /* 258 */
3033 #define Tcl_UpVar2 \
3034         (tclStubsPtr->tcl_UpVar2) /* 259 */
3035 #define Tcl_VarEval \
3036         (tclStubsPtr->tcl_VarEval) /* 260 */
3037 #define Tcl_VarTraceInfo \
3038         (tclStubsPtr->tcl_VarTraceInfo) /* 261 */
3039 #define Tcl_VarTraceInfo2 \
3040         (tclStubsPtr->tcl_VarTraceInfo2) /* 262 */
3041 #define Tcl_Write \
3042         (tclStubsPtr->tcl_Write) /* 263 */
3043 #define Tcl_WrongNumArgs \
3044         (tclStubsPtr->tcl_WrongNumArgs) /* 264 */
3045 #define Tcl_DumpActiveMemory \
3046         (tclStubsPtr->tcl_DumpActiveMemory) /* 265 */
3047 #define Tcl_ValidateAllMemory \
3048         (tclStubsPtr->tcl_ValidateAllMemory) /* 266 */
3049 #define Tcl_AppendResultVA \
3050         (tclStubsPtr->tcl_AppendResultVA) /* 267 */
3051 #define Tcl_AppendStringsToObjVA \
3052         (tclStubsPtr->tcl_AppendStringsToObjVA) /* 268 */
3053 #define Tcl_HashStats \
3054         (tclStubsPtr->tcl_HashStats) /* 269 */
3055 #define Tcl_ParseVar \
3056         (tclStubsPtr->tcl_ParseVar) /* 270 */
3057 #define Tcl_PkgPresent \
3058         (tclStubsPtr->tcl_PkgPresent) /* 271 */
3059 #define Tcl_PkgPresentEx \
3060         (tclStubsPtr->tcl_PkgPresentEx) /* 272 */
3061 #define Tcl_PkgProvide \
3062         (tclStubsPtr->tcl_PkgProvide) /* 273 */
3063 #define Tcl_PkgRequire \
3064         (tclStubsPtr->tcl_PkgRequire) /* 274 */
3065 #define Tcl_SetErrorCodeVA \
3066         (tclStubsPtr->tcl_SetErrorCodeVA) /* 275 */
3067 #define Tcl_VarEvalVA \
3068         (tclStubsPtr->tcl_VarEvalVA) /* 276 */
3069 #define Tcl_WaitPid \
3070         (tclStubsPtr->tcl_WaitPid) /* 277 */
3071 #define Tcl_PanicVA \
3072         (tclStubsPtr->tcl_PanicVA) /* 278 */
3073 #define Tcl_GetVersion \
3074         (tclStubsPtr->tcl_GetVersion) /* 279 */
3075 #define Tcl_InitMemory \
3076         (tclStubsPtr->tcl_InitMemory) /* 280 */
3077 #define Tcl_StackChannel \
3078         (tclStubsPtr->tcl_StackChannel) /* 281 */
3079 #define Tcl_UnstackChannel \
3080         (tclStubsPtr->tcl_UnstackChannel) /* 282 */
3081 #define Tcl_GetStackedChannel \
3082         (tclStubsPtr->tcl_GetStackedChannel) /* 283 */
3083 #define Tcl_SetMainLoop \
3084         (tclStubsPtr->tcl_SetMainLoop) /* 284 */
3085 /* Slot 285 is reserved */
3086 #define Tcl_AppendObjToObj \
3087         (tclStubsPtr->tcl_AppendObjToObj) /* 286 */
3088 #define Tcl_CreateEncoding \
3089         (tclStubsPtr->tcl_CreateEncoding) /* 287 */
3090 #define Tcl_CreateThreadExitHandler \
3091         (tclStubsPtr->tcl_CreateThreadExitHandler) /* 288 */
3092 #define Tcl_DeleteThreadExitHandler \
3093         (tclStubsPtr->tcl_DeleteThreadExitHandler) /* 289 */
3094 #define Tcl_DiscardResult \
3095         (tclStubsPtr->tcl_DiscardResult) /* 290 */
3096 #define Tcl_EvalEx \
3097         (tclStubsPtr->tcl_EvalEx) /* 291 */
3098 #define Tcl_EvalObjv \
3099         (tclStubsPtr->tcl_EvalObjv) /* 292 */
3100 #define Tcl_EvalObjEx \
3101         (tclStubsPtr->tcl_EvalObjEx) /* 293 */
3102 #define Tcl_ExitThread \
3103         (tclStubsPtr->tcl_ExitThread) /* 294 */
3104 #define Tcl_ExternalToUtf \
3105         (tclStubsPtr->tcl_ExternalToUtf) /* 295 */
3106 #define Tcl_ExternalToUtfDString \
3107         (tclStubsPtr->tcl_ExternalToUtfDString) /* 296 */
3108 #define Tcl_FinalizeThread \
3109         (tclStubsPtr->tcl_FinalizeThread) /* 297 */
3110 #define Tcl_FinalizeNotifier \
3111         (tclStubsPtr->tcl_FinalizeNotifier) /* 298 */
3112 #define Tcl_FreeEncoding \
3113         (tclStubsPtr->tcl_FreeEncoding) /* 299 */
3114 #define Tcl_GetCurrentThread \
3115         (tclStubsPtr->tcl_GetCurrentThread) /* 300 */
3116 #define Tcl_GetEncoding \
3117         (tclStubsPtr->tcl_GetEncoding) /* 301 */
3118 #define Tcl_GetEncodingName \
3119         (tclStubsPtr->tcl_GetEncodingName) /* 302 */
3120 #define Tcl_GetEncodingNames \
3121         (tclStubsPtr->tcl_GetEncodingNames) /* 303 */
3122 #define Tcl_GetIndexFromObjStruct \
3123         (tclStubsPtr->tcl_GetIndexFromObjStruct) /* 304 */
3124 #define Tcl_GetThreadData \
3125         (tclStubsPtr->tcl_GetThreadData) /* 305 */
3126 #define Tcl_GetVar2Ex \
3127         (tclStubsPtr->tcl_GetVar2Ex) /* 306 */
3128 #define Tcl_InitNotifier \
3129         (tclStubsPtr->tcl_InitNotifier) /* 307 */
3130 #define Tcl_MutexLock \
3131         (tclStubsPtr->tcl_MutexLock) /* 308 */
3132 #define Tcl_MutexUnlock \
3133         (tclStubsPtr->tcl_MutexUnlock) /* 309 */
3134 #define Tcl_ConditionNotify \
3135         (tclStubsPtr->tcl_ConditionNotify) /* 310 */
3136 #define Tcl_ConditionWait \
3137         (tclStubsPtr->tcl_ConditionWait) /* 311 */
3138 #define Tcl_NumUtfChars \
3139         (tclStubsPtr->tcl_NumUtfChars) /* 312 */
3140 #define Tcl_ReadChars \
3141         (tclStubsPtr->tcl_ReadChars) /* 313 */
3142 #define Tcl_RestoreResult \
3143         (tclStubsPtr->tcl_RestoreResult) /* 314 */
3144 #define Tcl_SaveResult \
3145         (tclStubsPtr->tcl_SaveResult) /* 315 */
3146 #define Tcl_SetSystemEncoding \
3147         (tclStubsPtr->tcl_SetSystemEncoding) /* 316 */
3148 #define Tcl_SetVar2Ex \
3149         (tclStubsPtr->tcl_SetVar2Ex) /* 317 */
3150 #define Tcl_ThreadAlert \
3151         (tclStubsPtr->tcl_ThreadAlert) /* 318 */
3152 #define Tcl_ThreadQueueEvent \
3153         (tclStubsPtr->tcl_ThreadQueueEvent) /* 319 */
3154 #define Tcl_UniCharAtIndex \
3155         (tclStubsPtr->tcl_UniCharAtIndex) /* 320 */
3156 #define Tcl_UniCharToLower \
3157         (tclStubsPtr->tcl_UniCharToLower) /* 321 */
3158 #define Tcl_UniCharToTitle \
3159         (tclStubsPtr->tcl_UniCharToTitle) /* 322 */
3160 #define Tcl_UniCharToUpper \
3161         (tclStubsPtr->tcl_UniCharToUpper) /* 323 */
3162 #define Tcl_UniCharToUtf \
3163         (tclStubsPtr->tcl_UniCharToUtf) /* 324 */
3164 #define Tcl_UtfAtIndex \
3165         (tclStubsPtr->tcl_UtfAtIndex) /* 325 */
3166 #define Tcl_UtfCharComplete \
3167         (tclStubsPtr->tcl_UtfCharComplete) /* 326 */
3168 #define Tcl_UtfBackslash \
3169         (tclStubsPtr->tcl_UtfBackslash) /* 327 */
3170 #define Tcl_UtfFindFirst \
3171         (tclStubsPtr->tcl_UtfFindFirst) /* 328 */
3172 #define Tcl_UtfFindLast \
3173         (tclStubsPtr->tcl_UtfFindLast) /* 329 */
3174 #define Tcl_UtfNext \
3175         (tclStubsPtr->tcl_UtfNext) /* 330 */
3176 #define Tcl_UtfPrev \
3177         (tclStubsPtr->tcl_UtfPrev) /* 331 */
3178 #define Tcl_UtfToExternal \
3179         (tclStubsPtr->tcl_UtfToExternal) /* 332 */
3180 #define Tcl_UtfToExternalDString \
3181         (tclStubsPtr->tcl_UtfToExternalDString) /* 333 */
3182 #define Tcl_UtfToLower \
3183         (tclStubsPtr->tcl_UtfToLower) /* 334 */
3184 #define Tcl_UtfToTitle \
3185         (tclStubsPtr->tcl_UtfToTitle) /* 335 */
3186 #define Tcl_UtfToUniChar \
3187         (tclStubsPtr->tcl_UtfToUniChar) /* 336 */
3188 #define Tcl_UtfToUpper \
3189         (tclStubsPtr->tcl_UtfToUpper) /* 337 */
3190 #define Tcl_WriteChars \
3191         (tclStubsPtr->tcl_WriteChars) /* 338 */
3192 #define Tcl_WriteObj \
3193         (tclStubsPtr->tcl_WriteObj) /* 339 */
3194 #define Tcl_GetString \
3195         (tclStubsPtr->tcl_GetString) /* 340 */
3196 #define Tcl_GetDefaultEncodingDir \
3197         (tclStubsPtr->tcl_GetDefaultEncodingDir) /* 341 */
3198 #define Tcl_SetDefaultEncodingDir \
3199         (tclStubsPtr->tcl_SetDefaultEncodingDir) /* 342 */
3200 #define Tcl_AlertNotifier \
3201         (tclStubsPtr->tcl_AlertNotifier) /* 343 */
3202 #define Tcl_ServiceModeHook \
3203         (tclStubsPtr->tcl_ServiceModeHook) /* 344 */
3204 #define Tcl_UniCharIsAlnum \
3205         (tclStubsPtr->tcl_UniCharIsAlnum) /* 345 */
3206 #define Tcl_UniCharIsAlpha \
3207         (tclStubsPtr->tcl_UniCharIsAlpha) /* 346 */
3208 #define Tcl_UniCharIsDigit \
3209         (tclStubsPtr->tcl_UniCharIsDigit) /* 347 */
3210 #define Tcl_UniCharIsLower \
3211         (tclStubsPtr->tcl_UniCharIsLower) /* 348 */
3212 #define Tcl_UniCharIsSpace \
3213         (tclStubsPtr->tcl_UniCharIsSpace) /* 349 */
3214 #define Tcl_UniCharIsUpper \
3215         (tclStubsPtr->tcl_UniCharIsUpper) /* 350 */
3216 #define Tcl_UniCharIsWordChar \
3217         (tclStubsPtr->tcl_UniCharIsWordChar) /* 351 */
3218 #define Tcl_UniCharLen \
3219         (tclStubsPtr->tcl_UniCharLen) /* 352 */
3220 #define Tcl_UniCharNcmp \
3221         (tclStubsPtr->tcl_UniCharNcmp) /* 353 */
3222 #define Tcl_UniCharToUtfDString \
3223         (tclStubsPtr->tcl_UniCharToUtfDString) /* 354 */
3224 #define Tcl_UtfToUniCharDString \
3225         (tclStubsPtr->tcl_UtfToUniCharDString) /* 355 */
3226 #define Tcl_GetRegExpFromObj \
3227         (tclStubsPtr->tcl_GetRegExpFromObj) /* 356 */
3228 #define Tcl_EvalTokens \
3229         (tclStubsPtr->tcl_EvalTokens) /* 357 */
3230 #define Tcl_FreeParse \
3231         (tclStubsPtr->tcl_FreeParse) /* 358 */
3232 #define Tcl_LogCommandInfo \
3233         (tclStubsPtr->tcl_LogCommandInfo) /* 359 */
3234 #define Tcl_ParseBraces \
3235         (tclStubsPtr->tcl_ParseBraces) /* 360 */
3236 #define Tcl_ParseCommand \
3237         (tclStubsPtr->tcl_ParseCommand) /* 361 */
3238 #define Tcl_ParseExpr \
3239         (tclStubsPtr->tcl_ParseExpr) /* 362 */
3240 #define Tcl_ParseQuotedString \
3241         (tclStubsPtr->tcl_ParseQuotedString) /* 363 */
3242 #define Tcl_ParseVarName \
3243         (tclStubsPtr->tcl_ParseVarName) /* 364 */
3244 #define Tcl_GetCwd \
3245         (tclStubsPtr->tcl_GetCwd) /* 365 */
3246 #define Tcl_Chdir \
3247         (tclStubsPtr->tcl_Chdir) /* 366 */
3248 #define Tcl_Access \
3249         (tclStubsPtr->tcl_Access) /* 367 */
3250 #define Tcl_Stat \
3251         (tclStubsPtr->tcl_Stat) /* 368 */
3252 #define Tcl_UtfNcmp \
3253         (tclStubsPtr->tcl_UtfNcmp) /* 369 */
3254 #define Tcl_UtfNcasecmp \
3255         (tclStubsPtr->tcl_UtfNcasecmp) /* 370 */
3256 #define Tcl_StringCaseMatch \
3257         (tclStubsPtr->tcl_StringCaseMatch) /* 371 */
3258 #define Tcl_UniCharIsControl \
3259         (tclStubsPtr->tcl_UniCharIsControl) /* 372 */
3260 #define Tcl_UniCharIsGraph \
3261         (tclStubsPtr->tcl_UniCharIsGraph) /* 373 */
3262 #define Tcl_UniCharIsPrint \
3263         (tclStubsPtr->tcl_UniCharIsPrint) /* 374 */
3264 #define Tcl_UniCharIsPunct \
3265         (tclStubsPtr->tcl_UniCharIsPunct) /* 375 */
3266 #define Tcl_RegExpExecObj \
3267         (tclStubsPtr->tcl_RegExpExecObj) /* 376 */
3268 #define Tcl_RegExpGetInfo \
3269         (tclStubsPtr->tcl_RegExpGetInfo) /* 377 */
3270 #define Tcl_NewUnicodeObj \
3271         (tclStubsPtr->tcl_NewUnicodeObj) /* 378 */
3272 #define Tcl_SetUnicodeObj \
3273         (tclStubsPtr->tcl_SetUnicodeObj) /* 379 */
3274 #define Tcl_GetCharLength \
3275         (tclStubsPtr->tcl_GetCharLength) /* 380 */
3276 #define Tcl_GetUniChar \
3277         (tclStubsPtr->tcl_GetUniChar) /* 381 */
3278 #define Tcl_GetUnicode \
3279         (tclStubsPtr->tcl_GetUnicode) /* 382 */
3280 #define Tcl_GetRange \
3281         (tclStubsPtr->tcl_GetRange) /* 383 */
3282 #define Tcl_AppendUnicodeToObj \
3283         (tclStubsPtr->tcl_AppendUnicodeToObj) /* 384 */
3284 #define Tcl_RegExpMatchObj \
3285         (tclStubsPtr->tcl_RegExpMatchObj) /* 385 */
3286 #define Tcl_SetNotifier \
3287         (tclStubsPtr->tcl_SetNotifier) /* 386 */
3288 #define Tcl_GetAllocMutex \
3289         (tclStubsPtr->tcl_GetAllocMutex) /* 387 */
3290 #define Tcl_GetChannelNames \
3291         (tclStubsPtr->tcl_GetChannelNames) /* 388 */
3292 #define Tcl_GetChannelNamesEx \
3293         (tclStubsPtr->tcl_GetChannelNamesEx) /* 389 */
3294 #define Tcl_ProcObjCmd \
3295         (tclStubsPtr->tcl_ProcObjCmd) /* 390 */
3296 #define Tcl_ConditionFinalize \
3297         (tclStubsPtr->tcl_ConditionFinalize) /* 391 */
3298 #define Tcl_MutexFinalize \
3299         (tclStubsPtr->tcl_MutexFinalize) /* 392 */
3300 #define Tcl_CreateThread \
3301         (tclStubsPtr->tcl_CreateThread) /* 393 */
3302 #define Tcl_ReadRaw \
3303         (tclStubsPtr->tcl_ReadRaw) /* 394 */
3304 #define Tcl_WriteRaw \
3305         (tclStubsPtr->tcl_WriteRaw) /* 395 */
3306 #define Tcl_GetTopChannel \
3307         (tclStubsPtr->tcl_GetTopChannel) /* 396 */
3308 #define Tcl_ChannelBuffered \
3309         (tclStubsPtr->tcl_ChannelBuffered) /* 397 */
3310 #define Tcl_ChannelName \
3311         (tclStubsPtr->tcl_ChannelName) /* 398 */
3312 #define Tcl_ChannelVersion \
3313         (tclStubsPtr->tcl_ChannelVersion) /* 399 */
3314 #define Tcl_ChannelBlockModeProc \
3315         (tclStubsPtr->tcl_ChannelBlockModeProc) /* 400 */
3316 #define Tcl_ChannelCloseProc \
3317         (tclStubsPtr->tcl_ChannelCloseProc) /* 401 */
3318 #define Tcl_ChannelClose2Proc \
3319         (tclStubsPtr->tcl_ChannelClose2Proc) /* 402 */
3320 #define Tcl_ChannelInputProc \
3321         (tclStubsPtr->tcl_ChannelInputProc) /* 403 */
3322 #define Tcl_ChannelOutputProc \
3323         (tclStubsPtr->tcl_ChannelOutputProc) /* 404 */
3324 #define Tcl_ChannelSeekProc \
3325         (tclStubsPtr->tcl_ChannelSeekProc) /* 405 */
3326 #define Tcl_ChannelSetOptionProc \
3327         (tclStubsPtr->tcl_ChannelSetOptionProc) /* 406 */
3328 #define Tcl_ChannelGetOptionProc \
3329         (tclStubsPtr->tcl_ChannelGetOptionProc) /* 407 */
3330 #define Tcl_ChannelWatchProc \
3331         (tclStubsPtr->tcl_ChannelWatchProc) /* 408 */
3332 #define Tcl_ChannelGetHandleProc \
3333         (tclStubsPtr->tcl_ChannelGetHandleProc) /* 409 */
3334 #define Tcl_ChannelFlushProc \
3335         (tclStubsPtr->tcl_ChannelFlushProc) /* 410 */
3336 #define Tcl_ChannelHandlerProc \
3337         (tclStubsPtr->tcl_ChannelHandlerProc) /* 411 */
3338 #define Tcl_JoinThread \
3339         (tclStubsPtr->tcl_JoinThread) /* 412 */
3340 #define Tcl_IsChannelShared \
3341         (tclStubsPtr->tcl_IsChannelShared) /* 413 */
3342 #define Tcl_IsChannelRegistered \
3343         (tclStubsPtr->tcl_IsChannelRegistered) /* 414 */
3344 #define Tcl_CutChannel \
3345         (tclStubsPtr->tcl_CutChannel) /* 415 */
3346 #define Tcl_SpliceChannel \
3347         (tclStubsPtr->tcl_SpliceChannel) /* 416 */
3348 #define Tcl_ClearChannelHandlers \
3349         (tclStubsPtr->tcl_ClearChannelHandlers) /* 417 */
3350 #define Tcl_IsChannelExisting \
3351         (tclStubsPtr->tcl_IsChannelExisting) /* 418 */
3352 #define Tcl_UniCharNcasecmp \
3353         (tclStubsPtr->tcl_UniCharNcasecmp) /* 419 */
3354 #define Tcl_UniCharCaseMatch \
3355         (tclStubsPtr->tcl_UniCharCaseMatch) /* 420 */
3356 #define Tcl_FindHashEntry \
3357         (tclStubsPtr->tcl_FindHashEntry) /* 421 */
3358 #define Tcl_CreateHashEntry \
3359         (tclStubsPtr->tcl_CreateHashEntry) /* 422 */
3360 #define Tcl_InitCustomHashTable \
3361         (tclStubsPtr->tcl_InitCustomHashTable) /* 423 */
3362 #define Tcl_InitObjHashTable \
3363         (tclStubsPtr->tcl_InitObjHashTable) /* 424 */
3364 #define Tcl_CommandTraceInfo \
3365         (tclStubsPtr->tcl_CommandTraceInfo) /* 425 */
3366 #define Tcl_TraceCommand \
3367         (tclStubsPtr->tcl_TraceCommand) /* 426 */
3368 #define Tcl_UntraceCommand \
3369         (tclStubsPtr->tcl_UntraceCommand) /* 427 */
3370 #define Tcl_AttemptAlloc \
3371         (tclStubsPtr->tcl_AttemptAlloc) /* 428 */
3372 #define Tcl_AttemptDbCkalloc \
3373         (tclStubsPtr->tcl_AttemptDbCkalloc) /* 429 */
3374 #define Tcl_AttemptRealloc \
3375         (tclStubsPtr->tcl_AttemptRealloc) /* 430 */
3376 #define Tcl_AttemptDbCkrealloc \
3377         (tclStubsPtr->tcl_AttemptDbCkrealloc) /* 431 */
3378 #define Tcl_AttemptSetObjLength \
3379         (tclStubsPtr->tcl_AttemptSetObjLength) /* 432 */
3380 #define Tcl_GetChannelThread \
3381         (tclStubsPtr->tcl_GetChannelThread) /* 433 */
3382 #define Tcl_GetUnicodeFromObj \
3383         (tclStubsPtr->tcl_GetUnicodeFromObj) /* 434 */
3384 #define Tcl_GetMathFuncInfo \
3385         (tclStubsPtr->tcl_GetMathFuncInfo) /* 435 */
3386 #define Tcl_ListMathFuncs \
3387         (tclStubsPtr->tcl_ListMathFuncs) /* 436 */
3388 #define Tcl_SubstObj \
3389         (tclStubsPtr->tcl_SubstObj) /* 437 */
3390 #define Tcl_DetachChannel \
3391         (tclStubsPtr->tcl_DetachChannel) /* 438 */
3392 #define Tcl_IsStandardChannel \
3393         (tclStubsPtr->tcl_IsStandardChannel) /* 439 */
3394 #define Tcl_FSCopyFile \
3395         (tclStubsPtr->tcl_FSCopyFile) /* 440 */
3396 #define Tcl_FSCopyDirectory \
3397         (tclStubsPtr->tcl_FSCopyDirectory) /* 441 */
3398 #define Tcl_FSCreateDirectory \
3399         (tclStubsPtr->tcl_FSCreateDirectory) /* 442 */
3400 #define Tcl_FSDeleteFile \
3401         (tclStubsPtr->tcl_FSDeleteFile) /* 443 */
3402 #define Tcl_FSLoadFile \
3403         (tclStubsPtr->tcl_FSLoadFile) /* 444 */
3404 #define Tcl_FSMatchInDirectory \
3405         (tclStubsPtr->tcl_FSMatchInDirectory) /* 445 */
3406 #define Tcl_FSLink \
3407         (tclStubsPtr->tcl_FSLink) /* 446 */
3408 #define Tcl_FSRemoveDirectory \
3409         (tclStubsPtr->tcl_FSRemoveDirectory) /* 447 */
3410 #define Tcl_FSRenameFile \
3411         (tclStubsPtr->tcl_FSRenameFile) /* 448 */
3412 #define Tcl_FSLstat \
3413         (tclStubsPtr->tcl_FSLstat) /* 449 */
3414 #define Tcl_FSUtime \
3415         (tclStubsPtr->tcl_FSUtime) /* 450 */
3416 #define Tcl_FSFileAttrsGet \
3417         (tclStubsPtr->tcl_FSFileAttrsGet) /* 451 */
3418 #define Tcl_FSFileAttrsSet \
3419         (tclStubsPtr->tcl_FSFileAttrsSet) /* 452 */
3420 #define Tcl_FSFileAttrStrings \
3421         (tclStubsPtr->tcl_FSFileAttrStrings) /* 453 */
3422 #define Tcl_FSStat \
3423         (tclStubsPtr->tcl_FSStat) /* 454 */
3424 #define Tcl_FSAccess \
3425         (tclStubsPtr->tcl_FSAccess) /* 455 */
3426 #define Tcl_FSOpenFileChannel \
3427         (tclStubsPtr->tcl_FSOpenFileChannel) /* 456 */
3428 #define Tcl_FSGetCwd \
3429         (tclStubsPtr->tcl_FSGetCwd) /* 457 */
3430 #define Tcl_FSChdir \
3431         (tclStubsPtr->tcl_FSChdir) /* 458 */
3432 #define Tcl_FSConvertToPathType \
3433         (tclStubsPtr->tcl_FSConvertToPathType) /* 459 */
3434 #define Tcl_FSJoinPath \
3435         (tclStubsPtr->tcl_FSJoinPath) /* 460 */
3436 #define Tcl_FSSplitPath \
3437         (tclStubsPtr->tcl_FSSplitPath) /* 461 */
3438 #define Tcl_FSEqualPaths \
3439         (tclStubsPtr->tcl_FSEqualPaths) /* 462 */
3440 #define Tcl_FSGetNormalizedPath \
3441         (tclStubsPtr->tcl_FSGetNormalizedPath) /* 463 */
3442 #define Tcl_FSJoinToPath \
3443         (tclStubsPtr->tcl_FSJoinToPath) /* 464 */
3444 #define Tcl_FSGetInternalRep \
3445         (tclStubsPtr->tcl_FSGetInternalRep) /* 465 */
3446 #define Tcl_FSGetTranslatedPath \
3447         (tclStubsPtr->tcl_FSGetTranslatedPath) /* 466 */
3448 #define Tcl_FSEvalFile \
3449         (tclStubsPtr->tcl_FSEvalFile) /* 467 */
3450 #define Tcl_FSNewNativePath \
3451         (tclStubsPtr->tcl_FSNewNativePath) /* 468 */
3452 #define Tcl_FSGetNativePath \
3453         (tclStubsPtr->tcl_FSGetNativePath) /* 469 */
3454 #define Tcl_FSFileSystemInfo \
3455         (tclStubsPtr->tcl_FSFileSystemInfo) /* 470 */
3456 #define Tcl_FSPathSeparator \
3457         (tclStubsPtr->tcl_FSPathSeparator) /* 471 */
3458 #define Tcl_FSListVolumes \
3459         (tclStubsPtr->tcl_FSListVolumes) /* 472 */
3460 #define Tcl_FSRegister \
3461         (tclStubsPtr->tcl_FSRegister) /* 473 */
3462 #define Tcl_FSUnregister \
3463         (tclStubsPtr->tcl_FSUnregister) /* 474 */
3464 #define Tcl_FSData \
3465         (tclStubsPtr->tcl_FSData) /* 475 */
3466 #define Tcl_FSGetTranslatedStringPath \
3467         (tclStubsPtr->tcl_FSGetTranslatedStringPath) /* 476 */
3468 #define Tcl_FSGetFileSystemForPath \
3469         (tclStubsPtr->tcl_FSGetFileSystemForPath) /* 477 */
3470 #define Tcl_FSGetPathType \
3471         (tclStubsPtr->tcl_FSGetPathType) /* 478 */
3472 #define Tcl_OutputBuffered \
3473         (tclStubsPtr->tcl_OutputBuffered) /* 479 */
3474 #define Tcl_FSMountsChanged \
3475         (tclStubsPtr->tcl_FSMountsChanged) /* 480 */
3476 #define Tcl_EvalTokensStandard \
3477         (tclStubsPtr->tcl_EvalTokensStandard) /* 481 */
3478 #define Tcl_GetTime \
3479         (tclStubsPtr->tcl_GetTime) /* 482 */
3480 #define Tcl_CreateObjTrace \
3481         (tclStubsPtr->tcl_CreateObjTrace) /* 483 */
3482 #define Tcl_GetCommandInfoFromToken \
3483         (tclStubsPtr->tcl_GetCommandInfoFromToken) /* 484 */
3484 #define Tcl_SetCommandInfoFromToken \
3485         (tclStubsPtr->tcl_SetCommandInfoFromToken) /* 485 */
3486 #define Tcl_DbNewWideIntObj \
3487         (tclStubsPtr->tcl_DbNewWideIntObj) /* 486 */
3488 #define Tcl_GetWideIntFromObj \
3489         (tclStubsPtr->tcl_GetWideIntFromObj) /* 487 */
3490 #define Tcl_NewWideIntObj \
3491         (tclStubsPtr->tcl_NewWideIntObj) /* 488 */
3492 #define Tcl_SetWideIntObj \
3493         (tclStubsPtr->tcl_SetWideIntObj) /* 489 */
3494 #define Tcl_AllocStatBuf \
3495         (tclStubsPtr->tcl_AllocStatBuf) /* 490 */
3496 #define Tcl_Seek \
3497         (tclStubsPtr->tcl_Seek) /* 491 */
3498 #define Tcl_Tell \
3499         (tclStubsPtr->tcl_Tell) /* 492 */
3500 #define Tcl_ChannelWideSeekProc \
3501         (tclStubsPtr->tcl_ChannelWideSeekProc) /* 493 */
3502 #define Tcl_DictObjPut \
3503         (tclStubsPtr->tcl_DictObjPut) /* 494 */
3504 #define Tcl_DictObjGet \
3505         (tclStubsPtr->tcl_DictObjGet) /* 495 */
3506 #define Tcl_DictObjRemove \
3507         (tclStubsPtr->tcl_DictObjRemove) /* 496 */
3508 #define Tcl_DictObjSize \
3509         (tclStubsPtr->tcl_DictObjSize) /* 497 */
3510 #define Tcl_DictObjFirst \
3511         (tclStubsPtr->tcl_DictObjFirst) /* 498 */
3512 #define Tcl_DictObjNext \
3513         (tclStubsPtr->tcl_DictObjNext) /* 499 */
3514 #define Tcl_DictObjDone \
3515         (tclStubsPtr->tcl_DictObjDone) /* 500 */
3516 #define Tcl_DictObjPutKeyList \
3517         (tclStubsPtr->tcl_DictObjPutKeyList) /* 501 */
3518 #define Tcl_DictObjRemoveKeyList \
3519         (tclStubsPtr->tcl_DictObjRemoveKeyList) /* 502 */
3520 #define Tcl_NewDictObj \
3521         (tclStubsPtr->tcl_NewDictObj) /* 503 */
3522 #define Tcl_DbNewDictObj \
3523         (tclStubsPtr->tcl_DbNewDictObj) /* 504 */
3524 #define Tcl_RegisterConfig \
3525         (tclStubsPtr->tcl_RegisterConfig) /* 505 */
3526 #define Tcl_CreateNamespace \
3527         (tclStubsPtr->tcl_CreateNamespace) /* 506 */
3528 #define Tcl_DeleteNamespace \
3529         (tclStubsPtr->tcl_DeleteNamespace) /* 507 */
3530 #define Tcl_AppendExportList \
3531         (tclStubsPtr->tcl_AppendExportList) /* 508 */
3532 #define Tcl_Export \
3533         (tclStubsPtr->tcl_Export) /* 509 */
3534 #define Tcl_Import \
3535         (tclStubsPtr->tcl_Import) /* 510 */
3536 #define Tcl_ForgetImport \
3537         (tclStubsPtr->tcl_ForgetImport) /* 511 */
3538 #define Tcl_GetCurrentNamespace \
3539         (tclStubsPtr->tcl_GetCurrentNamespace) /* 512 */
3540 #define Tcl_GetGlobalNamespace \
3541         (tclStubsPtr->tcl_GetGlobalNamespace) /* 513 */
3542 #define Tcl_FindNamespace \
3543         (tclStubsPtr->tcl_FindNamespace) /* 514 */
3544 #define Tcl_FindCommand \
3545         (tclStubsPtr->tcl_FindCommand) /* 515 */
3546 #define Tcl_GetCommandFromObj \
3547         (tclStubsPtr->tcl_GetCommandFromObj) /* 516 */
3548 #define Tcl_GetCommandFullName \
3549         (tclStubsPtr->tcl_GetCommandFullName) /* 517 */
3550 #define Tcl_FSEvalFileEx \
3551         (tclStubsPtr->tcl_FSEvalFileEx) /* 518 */
3552 #define Tcl_SetExitProc \
3553         (tclStubsPtr->tcl_SetExitProc) /* 519 */
3554 #define Tcl_LimitAddHandler \
3555         (tclStubsPtr->tcl_LimitAddHandler) /* 520 */
3556 #define Tcl_LimitRemoveHandler \
3557         (tclStubsPtr->tcl_LimitRemoveHandler) /* 521 */
3558 #define Tcl_LimitReady \
3559         (tclStubsPtr->tcl_LimitReady) /* 522 */
3560 #define Tcl_LimitCheck \
3561         (tclStubsPtr->tcl_LimitCheck) /* 523 */
3562 #define Tcl_LimitExceeded \
3563         (tclStubsPtr->tcl_LimitExceeded) /* 524 */
3564 #define Tcl_LimitSetCommands \
3565         (tclStubsPtr->tcl_LimitSetCommands) /* 525 */
3566 #define Tcl_LimitSetTime \
3567         (tclStubsPtr->tcl_LimitSetTime) /* 526 */
3568 #define Tcl_LimitSetGranularity \
3569         (tclStubsPtr->tcl_LimitSetGranularity) /* 527 */
3570 #define Tcl_LimitTypeEnabled \
3571         (tclStubsPtr->tcl_LimitTypeEnabled) /* 528 */
3572 #define Tcl_LimitTypeExceeded \
3573         (tclStubsPtr->tcl_LimitTypeExceeded) /* 529 */
3574 #define Tcl_LimitTypeSet \
3575         (tclStubsPtr->tcl_LimitTypeSet) /* 530 */
3576 #define Tcl_LimitTypeReset \
3577         (tclStubsPtr->tcl_LimitTypeReset) /* 531 */
3578 #define Tcl_LimitGetCommands \
3579         (tclStubsPtr->tcl_LimitGetCommands) /* 532 */
3580 #define Tcl_LimitGetTime \
3581         (tclStubsPtr->tcl_LimitGetTime) /* 533 */
3582 #define Tcl_LimitGetGranularity \
3583         (tclStubsPtr->tcl_LimitGetGranularity) /* 534 */
3584 #define Tcl_SaveInterpState \
3585         (tclStubsPtr->tcl_SaveInterpState) /* 535 */
3586 #define Tcl_RestoreInterpState \
3587         (tclStubsPtr->tcl_RestoreInterpState) /* 536 */
3588 #define Tcl_DiscardInterpState \
3589         (tclStubsPtr->tcl_DiscardInterpState) /* 537 */
3590 #define Tcl_SetReturnOptions \
3591         (tclStubsPtr->tcl_SetReturnOptions) /* 538 */
3592 #define Tcl_GetReturnOptions \
3593         (tclStubsPtr->tcl_GetReturnOptions) /* 539 */
3594 #define Tcl_IsEnsemble \
3595         (tclStubsPtr->tcl_IsEnsemble) /* 540 */
3596 #define Tcl_CreateEnsemble \
3597         (tclStubsPtr->tcl_CreateEnsemble) /* 541 */
3598 #define Tcl_FindEnsemble \
3599         (tclStubsPtr->tcl_FindEnsemble) /* 542 */
3600 #define Tcl_SetEnsembleSubcommandList \
3601         (tclStubsPtr->tcl_SetEnsembleSubcommandList) /* 543 */
3602 #define Tcl_SetEnsembleMappingDict \
3603         (tclStubsPtr->tcl_SetEnsembleMappingDict) /* 544 */
3604 #define Tcl_SetEnsembleUnknownHandler \
3605         (tclStubsPtr->tcl_SetEnsembleUnknownHandler) /* 545 */
3606 #define Tcl_SetEnsembleFlags \
3607         (tclStubsPtr->tcl_SetEnsembleFlags) /* 546 */
3608 #define Tcl_GetEnsembleSubcommandList \
3609         (tclStubsPtr->tcl_GetEnsembleSubcommandList) /* 547 */
3610 #define Tcl_GetEnsembleMappingDict \
3611         (tclStubsPtr->tcl_GetEnsembleMappingDict) /* 548 */
3612 #define Tcl_GetEnsembleUnknownHandler \
3613         (tclStubsPtr->tcl_GetEnsembleUnknownHandler) /* 549 */
3614 #define Tcl_GetEnsembleFlags \
3615         (tclStubsPtr->tcl_GetEnsembleFlags) /* 550 */
3616 #define Tcl_GetEnsembleNamespace \
3617         (tclStubsPtr->tcl_GetEnsembleNamespace) /* 551 */
3618 #define Tcl_SetTimeProc \
3619         (tclStubsPtr->tcl_SetTimeProc) /* 552 */
3620 #define Tcl_QueryTimeProc \
3621         (tclStubsPtr->tcl_QueryTimeProc) /* 553 */
3622 #define Tcl_ChannelThreadActionProc \
3623         (tclStubsPtr->tcl_ChannelThreadActionProc) /* 554 */
3624 #define Tcl_NewBignumObj \
3625         (tclStubsPtr->tcl_NewBignumObj) /* 555 */
3626 #define Tcl_DbNewBignumObj \
3627         (tclStubsPtr->tcl_DbNewBignumObj) /* 556 */
3628 #define Tcl_SetBignumObj \
3629         (tclStubsPtr->tcl_SetBignumObj) /* 557 */
3630 #define Tcl_GetBignumFromObj \
3631         (tclStubsPtr->tcl_GetBignumFromObj) /* 558 */
3632 #define Tcl_TakeBignumFromObj \
3633         (tclStubsPtr->tcl_TakeBignumFromObj) /* 559 */
3634 #define Tcl_TruncateChannel \
3635         (tclStubsPtr->tcl_TruncateChannel) /* 560 */
3636 #define Tcl_ChannelTruncateProc \
3637         (tclStubsPtr->tcl_ChannelTruncateProc) /* 561 */
3638 #define Tcl_SetChannelErrorInterp \
3639         (tclStubsPtr->tcl_SetChannelErrorInterp) /* 562 */
3640 #define Tcl_GetChannelErrorInterp \
3641         (tclStubsPtr->tcl_GetChannelErrorInterp) /* 563 */
3642 #define Tcl_SetChannelError \
3643         (tclStubsPtr->tcl_SetChannelError) /* 564 */
3644 #define Tcl_GetChannelError \
3645         (tclStubsPtr->tcl_GetChannelError) /* 565 */
3646 #define Tcl_InitBignumFromDouble \
3647         (tclStubsPtr->tcl_InitBignumFromDouble) /* 566 */
3648 #define Tcl_GetNamespaceUnknownHandler \
3649         (tclStubsPtr->tcl_GetNamespaceUnknownHandler) /* 567 */
3650 #define Tcl_SetNamespaceUnknownHandler \
3651         (tclStubsPtr->tcl_SetNamespaceUnknownHandler) /* 568 */
3652 #define Tcl_GetEncodingFromObj \
3653         (tclStubsPtr->tcl_GetEncodingFromObj) /* 569 */
3654 #define Tcl_GetEncodingSearchPath \
3655         (tclStubsPtr->tcl_GetEncodingSearchPath) /* 570 */
3656 #define Tcl_SetEncodingSearchPath \
3657         (tclStubsPtr->tcl_SetEncodingSearchPath) /* 571 */
3658 #define Tcl_GetEncodingNameFromEnvironment \
3659         (tclStubsPtr->tcl_GetEncodingNameFromEnvironment) /* 572 */
3660 #define Tcl_PkgRequireProc \
3661         (tclStubsPtr->tcl_PkgRequireProc) /* 573 */
3662 #define Tcl_AppendObjToErrorInfo \
3663         (tclStubsPtr->tcl_AppendObjToErrorInfo) /* 574 */
3664 #define Tcl_AppendLimitedToObj \
3665         (tclStubsPtr->tcl_AppendLimitedToObj) /* 575 */
3666 #define Tcl_Format \
3667         (tclStubsPtr->tcl_Format) /* 576 */
3668 #define Tcl_AppendFormatToObj \
3669         (tclStubsPtr->tcl_AppendFormatToObj) /* 577 */
3670 #define Tcl_ObjPrintf \
3671         (tclStubsPtr->tcl_ObjPrintf) /* 578 */
3672 #define Tcl_AppendPrintfToObj \
3673         (tclStubsPtr->tcl_AppendPrintfToObj) /* 579 */
3674 #define Tcl_CancelEval \
3675         (tclStubsPtr->tcl_CancelEval) /* 580 */
3676 #define Tcl_Canceled \
3677         (tclStubsPtr->tcl_Canceled) /* 581 */
3678 #define Tcl_CreatePipe \
3679         (tclStubsPtr->tcl_CreatePipe) /* 582 */
3680 #define Tcl_NRCreateCommand \
3681         (tclStubsPtr->tcl_NRCreateCommand) /* 583 */
3682 #define Tcl_NREvalObj \
3683         (tclStubsPtr->tcl_NREvalObj) /* 584 */
3684 #define Tcl_NREvalObjv \
3685         (tclStubsPtr->tcl_NREvalObjv) /* 585 */
3686 #define Tcl_NRCmdSwap \
3687         (tclStubsPtr->tcl_NRCmdSwap) /* 586 */
3688 #define Tcl_NRAddCallback \
3689         (tclStubsPtr->tcl_NRAddCallback) /* 587 */
3690 #define Tcl_NRCallObjProc \
3691         (tclStubsPtr->tcl_NRCallObjProc) /* 588 */
3692 #define Tcl_GetFSDeviceFromStat \
3693         (tclStubsPtr->tcl_GetFSDeviceFromStat) /* 589 */
3694 #define Tcl_GetFSInodeFromStat \
3695         (tclStubsPtr->tcl_GetFSInodeFromStat) /* 590 */
3696 #define Tcl_GetModeFromStat \
3697         (tclStubsPtr->tcl_GetModeFromStat) /* 591 */
3698 #define Tcl_GetLinkCountFromStat \
3699         (tclStubsPtr->tcl_GetLinkCountFromStat) /* 592 */
3700 #define Tcl_GetUserIdFromStat \
3701         (tclStubsPtr->tcl_GetUserIdFromStat) /* 593 */
3702 #define Tcl_GetGroupIdFromStat \
3703         (tclStubsPtr->tcl_GetGroupIdFromStat) /* 594 */
3704 #define Tcl_GetDeviceTypeFromStat \
3705         (tclStubsPtr->tcl_GetDeviceTypeFromStat) /* 595 */
3706 #define Tcl_GetAccessTimeFromStat \
3707         (tclStubsPtr->tcl_GetAccessTimeFromStat) /* 596 */
3708 #define Tcl_GetModificationTimeFromStat \
3709         (tclStubsPtr->tcl_GetModificationTimeFromStat) /* 597 */
3710 #define Tcl_GetChangeTimeFromStat \
3711         (tclStubsPtr->tcl_GetChangeTimeFromStat) /* 598 */
3712 #define Tcl_GetSizeFromStat \
3713         (tclStubsPtr->tcl_GetSizeFromStat) /* 599 */
3714 #define Tcl_GetBlocksFromStat \
3715         (tclStubsPtr->tcl_GetBlocksFromStat) /* 600 */
3716 #define Tcl_GetBlockSizeFromStat \
3717         (tclStubsPtr->tcl_GetBlockSizeFromStat) /* 601 */
3718 #define Tcl_SetEnsembleParameterList \
3719         (tclStubsPtr->tcl_SetEnsembleParameterList) /* 602 */
3720 #define Tcl_GetEnsembleParameterList \
3721         (tclStubsPtr->tcl_GetEnsembleParameterList) /* 603 */
3722 #define Tcl_ParseArgsObjv \
3723         (tclStubsPtr->tcl_ParseArgsObjv) /* 604 */
3724 #define Tcl_GetErrorLine \
3725         (tclStubsPtr->tcl_GetErrorLine) /* 605 */
3726 #define Tcl_SetErrorLine \
3727         (tclStubsPtr->tcl_SetErrorLine) /* 606 */
3728 #define Tcl_TransferResult \
3729         (tclStubsPtr->tcl_TransferResult) /* 607 */
3730 #define Tcl_InterpActive \
3731         (tclStubsPtr->tcl_InterpActive) /* 608 */
3732 #define Tcl_BackgroundException \
3733         (tclStubsPtr->tcl_BackgroundException) /* 609 */
3734 #define Tcl_ZlibDeflate \
3735         (tclStubsPtr->tcl_ZlibDeflate) /* 610 */
3736 #define Tcl_ZlibInflate \
3737         (tclStubsPtr->tcl_ZlibInflate) /* 611 */
3738 #define Tcl_ZlibCRC32 \
3739         (tclStubsPtr->tcl_ZlibCRC32) /* 612 */
3740 #define Tcl_ZlibAdler32 \
3741         (tclStubsPtr->tcl_ZlibAdler32) /* 613 */
3742 #define Tcl_ZlibStreamInit \
3743         (tclStubsPtr->tcl_ZlibStreamInit) /* 614 */
3744 #define Tcl_ZlibStreamGetCommandName \
3745         (tclStubsPtr->tcl_ZlibStreamGetCommandName) /* 615 */
3746 #define Tcl_ZlibStreamEof \
3747         (tclStubsPtr->tcl_ZlibStreamEof) /* 616 */
3748 #define Tcl_ZlibStreamChecksum \
3749         (tclStubsPtr->tcl_ZlibStreamChecksum) /* 617 */
3750 #define Tcl_ZlibStreamPut \
3751         (tclStubsPtr->tcl_ZlibStreamPut) /* 618 */
3752 #define Tcl_ZlibStreamGet \
3753         (tclStubsPtr->tcl_ZlibStreamGet) /* 619 */
3754 #define Tcl_ZlibStreamClose \
3755         (tclStubsPtr->tcl_ZlibStreamClose) /* 620 */
3756 #define Tcl_ZlibStreamReset \
3757         (tclStubsPtr->tcl_ZlibStreamReset) /* 621 */
3758 #define Tcl_SetStartupScript \
3759         (tclStubsPtr->tcl_SetStartupScript) /* 622 */
3760 #define Tcl_GetStartupScript \
3761         (tclStubsPtr->tcl_GetStartupScript) /* 623 */
3762 #define Tcl_CloseEx \
3763         (tclStubsPtr->tcl_CloseEx) /* 624 */
3764 #define Tcl_NRExprObj \
3765         (tclStubsPtr->tcl_NRExprObj) /* 625 */
3766 #define Tcl_NRSubstObj \
3767         (tclStubsPtr->tcl_NRSubstObj) /* 626 */
3768 #define Tcl_LoadFile \
3769         (tclStubsPtr->tcl_LoadFile) /* 627 */
3770 #define Tcl_FindSymbol \
3771         (tclStubsPtr->tcl_FindSymbol) /* 628 */
3772 #define Tcl_FSUnloadFile \
3773         (tclStubsPtr->tcl_FSUnloadFile) /* 629 */
3774 #define Tcl_ZlibStreamSetCompressionDictionary \
3775         (tclStubsPtr->tcl_ZlibStreamSetCompressionDictionary) /* 630 */
3776
3777 #endif /* defined(USE_TCL_STUBS) */
3778
3779 /* !END!: Do not edit above this line. */
3780
3781 #if defined(USE_TCL_STUBS)
3782 #   undef Tcl_CreateInterp
3783 #   undef Tcl_FindExecutable
3784 #   undef Tcl_GetStringResult
3785 #   undef Tcl_Init
3786 #   undef Tcl_SetPanicProc
3787 #   undef Tcl_SetVar
3788 #   undef Tcl_ObjSetVar2
3789 #   undef Tcl_StaticPackage
3790 #   undef TclFSGetNativePath
3791 #   define Tcl_CreateInterp() (tclStubsPtr->tcl_CreateInterp())
3792 #   define Tcl_GetStringResult(interp) (tclStubsPtr->tcl_GetStringResult(interp))
3793 #   define Tcl_Init(interp) (tclStubsPtr->tcl_Init(interp))
3794 #   define Tcl_SetPanicProc(proc) (tclStubsPtr->tcl_SetPanicProc(proc))
3795 #   define Tcl_SetVar(interp, varName, newValue, flags) \
3796             (tclStubsPtr->tcl_SetVar(interp, varName, newValue, flags))
3797 #   define Tcl_ObjSetVar2(interp, part1, part2, newValue, flags) \
3798             (tclStubsPtr->tcl_ObjSetVar2(interp, part1, part2, newValue, flags))
3799 #endif
3800
3801 #if defined(_WIN32) && defined(UNICODE)
3802 #   define Tcl_FindExecutable(arg) ((Tcl_FindExecutable)((const char *)(arg)))
3803 #   define Tcl_MainEx Tcl_MainExW
3804     EXTERN void Tcl_MainExW(int argc, wchar_t **argv,
3805             Tcl_AppInitProc *appInitProc, Tcl_Interp *interp);
3806 #endif
3807
3808 #undef TCL_STORAGE_CLASS
3809 #define TCL_STORAGE_CLASS DLLIMPORT
3810
3811 #undef Tcl_SeekOld
3812 #undef Tcl_TellOld
3813
3814 #undef Tcl_PkgPresent
3815 #define Tcl_PkgPresent(interp, name, version, exact) \
3816         Tcl_PkgPresentEx(interp, name, version, exact, NULL)
3817 #undef Tcl_PkgProvide
3818 #define Tcl_PkgProvide(interp, name, version) \
3819         Tcl_PkgProvideEx(interp, name, version, NULL)
3820 #undef Tcl_PkgRequire
3821 #define Tcl_PkgRequire(interp, name, version, exact) \
3822         Tcl_PkgRequireEx(interp, name, version, exact, NULL)
3823 #undef Tcl_GetIndexFromObj
3824 #define Tcl_GetIndexFromObj(interp, objPtr, tablePtr, msg, flags, indexPtr) \
3825         Tcl_GetIndexFromObjStruct(interp, objPtr, tablePtr, \
3826         sizeof(char *), msg, flags, indexPtr)
3827 #undef Tcl_NewBooleanObj
3828 #define Tcl_NewBooleanObj(boolValue) \
3829         Tcl_NewIntObj((boolValue)!=0)
3830 #undef Tcl_DbNewBooleanObj
3831 #define Tcl_DbNewBooleanObj(boolValue, file, line) \
3832         Tcl_DbNewLongObj((boolValue)!=0, file, line)
3833 #undef Tcl_SetBooleanObj
3834 #define Tcl_SetBooleanObj(objPtr, boolValue) \
3835         Tcl_SetIntObj((objPtr), (boolValue)!=0)
3836 #undef Tcl_SetVar
3837 #define Tcl_SetVar(interp, varName, newValue, flags) \
3838         Tcl_SetVar2(interp, varName, NULL, newValue, flags)
3839 #undef Tcl_UnsetVar
3840 #define Tcl_UnsetVar(interp, varName, flags) \
3841         Tcl_UnsetVar2(interp, varName, NULL, flags)
3842 #undef Tcl_GetVar
3843 #define Tcl_GetVar(interp, varName, flags) \
3844         Tcl_GetVar2(interp, varName, NULL, flags)
3845 #undef Tcl_TraceVar
3846 #define Tcl_TraceVar(interp, varName, flags, proc, clientData) \
3847         Tcl_TraceVar2(interp, varName, NULL, flags, proc, clientData)
3848 #undef Tcl_UntraceVar
3849 #define Tcl_UntraceVar(interp, varName, flags, proc, clientData) \
3850         Tcl_UntraceVar2(interp, varName, NULL, flags, proc, clientData)
3851 #undef Tcl_VarTraceInfo
3852 #define Tcl_VarTraceInfo(interp, varName, flags, proc, prevClientData) \
3853         Tcl_VarTraceInfo2(interp, varName, NULL, flags, proc, prevClientData)
3854 #undef Tcl_UpVar
3855 #define Tcl_UpVar(interp, frameName, varName, localName, flags) \
3856         Tcl_UpVar2(interp, frameName, varName, NULL, localName, flags)
3857
3858 #if defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS)
3859 #   if defined(__CYGWIN__) && defined(TCL_WIDE_INT_IS_LONG)
3860 /* On Cygwin64, long is 64-bit while on Win64 long is 32-bit. Therefore
3861  * we have to make sure that all stub entries on Cygwin64 follow the
3862  * Win64 signature. Cygwin64 stubbed extensions cannot use those stub
3863  * entries any more, they should use the 64-bit alternatives where
3864  * possible. Tcl 9 must find a better solution, but that cannot be done
3865  * without introducing a binary incompatibility.
3866  */
3867 #       undef Tcl_DbNewLongObj
3868 #       undef Tcl_GetLongFromObj
3869 #       undef Tcl_NewLongObj
3870 #       undef Tcl_SetLongObj
3871 #       undef Tcl_ExprLong
3872 #       undef Tcl_ExprLongObj
3873 #       undef Tcl_UniCharNcmp
3874 #       undef Tcl_UtfNcmp
3875 #       undef Tcl_UtfNcasecmp
3876 #       undef Tcl_UniCharNcasecmp
3877 #       define Tcl_DbNewLongObj ((Tcl_Obj*(*)(long,const char*,int))Tcl_DbNewWideIntObj)
3878 #       define Tcl_GetLongFromObj ((int(*)(Tcl_Interp*,Tcl_Obj*,long*))Tcl_GetWideIntFromObj)
3879 #       define Tcl_NewLongObj ((Tcl_Obj*(*)(long))Tcl_NewWideIntObj)
3880 #       define Tcl_SetLongObj ((void(*)(Tcl_Obj*,long))Tcl_SetWideIntObj)
3881 #       define Tcl_ExprLong TclExprLong
3882         static inline int TclExprLong(Tcl_Interp *interp, const char *string, long *ptr){
3883             int intValue;
3884             int result = tclStubsPtr->tcl_ExprLong(interp, string, (long *)&intValue);
3885             if (result == TCL_OK) *ptr = (long)intValue;
3886             return result;
3887         }
3888 #       define Tcl_ExprLongObj TclExprLongObj
3889         static inline int TclExprLongObj(Tcl_Interp *interp, Tcl_Obj *obj, long *ptr){
3890             int intValue;
3891             int result = tclStubsPtr->tcl_ExprLongObj(interp, obj, (long *)&intValue);
3892             if (result == TCL_OK) *ptr = (long)intValue;
3893             return result;
3894         }
3895 #       define Tcl_UniCharNcmp(ucs,uct,n) \
3896                 ((int(*)(const Tcl_UniChar*,const Tcl_UniChar*,unsigned int))tclStubsPtr->tcl_UniCharNcmp)(ucs,uct,(unsigned int)(n))
3897 #       define Tcl_UtfNcmp(s1,s2,n) \
3898                 ((int(*)(const char*,const char*,unsigned int))tclStubsPtr->tcl_UtfNcmp)(s1,s2,(unsigned int)(n))
3899 #       define Tcl_UtfNcasecmp(s1,s2,n) \
3900                 ((int(*)(const char*,const char*,unsigned int))tclStubsPtr->tcl_UtfNcasecmp)(s1,s2,(unsigned int)(n))
3901 #       define Tcl_UniCharNcasecmp(ucs,uct,n) \
3902                 ((int(*)(const Tcl_UniChar*,const Tcl_UniChar*,unsigned int))tclStubsPtr->tcl_UniCharNcasecmp)(ucs,uct,(unsigned int)(n))
3903 #   endif
3904 #endif
3905
3906 /*
3907  * Deprecated Tcl procedures:
3908  */
3909
3910 #undef Tcl_EvalObj
3911 #define Tcl_EvalObj(interp,objPtr) \
3912     Tcl_EvalObjEx((interp),(objPtr),0)
3913 #undef Tcl_GlobalEvalObj
3914 #define Tcl_GlobalEvalObj(interp,objPtr) \
3915     Tcl_EvalObjEx((interp),(objPtr),TCL_EVAL_GLOBAL)
3916
3917 #endif /* _TCLDECLS */