Struct rust_tcl_sys::tcl::Struct_TclStubs [-] [+] [src]

pub struct Struct_TclStubs {
    pub magic: c_int,
    pub hooks: *const TclStubHooks,
    pub tcl_PkgProvideEx: Option< extern "C" fn(interp: *mut Tcl_Interp, name: *const c_char, version: *const c_char, clientData: *const c_void) -> c_int>,
    pub tcl_PkgRequireEx: Option< extern "C" fn(interp: *mut Tcl_Interp, name: *const c_char, version: *const c_char, exact: c_int, clientDataPtr: *mut c_void) -> *const c_char>,
    pub tcl_Panic: Option< extern "C" fn(format: *const c_char)>,
    pub tcl_Alloc: Option< extern "C" fn(size: c_uint) -> *mut c_char>,
    pub tcl_Free: Option< extern "C" fn(ptr: *mut c_char)>,
    pub tcl_Realloc: Option< extern "C" fn(ptr: *mut c_char, size: c_uint) -> *mut c_char>,
    pub tcl_DbCkalloc: Option< extern "C" fn(size: c_uint, file: *const c_char, line: c_int) -> *mut c_char>,
    pub tcl_DbCkfree: Option< extern "C" fn(ptr: *mut c_char, file: *const c_char, line: c_int)>,
    pub tcl_DbCkrealloc: Option< extern "C" fn(ptr: *mut c_char, size: c_uint, file: *const c_char, line: c_int) -> *mut c_char>,
    pub tcl_CreateFileHandler: Option< extern "C" fn(fd: c_int, mask: c_int, _proc: *mut Tcl_FileProc, clientData: ClientData)>,
    pub tcl_DeleteFileHandler: Option< extern "C" fn(fd: c_int)>,
    pub tcl_SetTimer: Option< extern "C" fn(timePtr: *const Tcl_Time)>,
    pub tcl_Sleep: Option< extern "C" fn(ms: c_int)>,
    pub tcl_WaitForEvent: Option< extern "C" fn(timePtr: *const Tcl_Time) -> c_int>,
    pub tcl_AppendAllObjTypes: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_AppendStringsToObj: Option< extern "C" fn(objPtr: *mut Tcl_Obj)>,
    pub tcl_AppendToObj: Option< extern "C" fn(objPtr: *mut Tcl_Obj, bytes: *const c_char, length: c_int)>,
    pub tcl_ConcatObj: Option< extern "C" fn(objc: c_int, objv: *const *mut Tcl_Obj) -> *mut Tcl_Obj>,
    pub tcl_ConvertToType: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj, typePtr: *const Tcl_ObjType) -> c_int>,
    pub tcl_DbDecrRefCount: Option< extern "C" fn(objPtr: *mut Tcl_Obj, file: *const c_char, line: c_int)>,
    pub tcl_DbIncrRefCount: Option< extern "C" fn(objPtr: *mut Tcl_Obj, file: *const c_char, line: c_int)>,
    pub tcl_DbIsShared: Option< extern "C" fn(objPtr: *mut Tcl_Obj, file: *const c_char, line: c_int) -> c_int>,
    pub tcl_DbNewBooleanObj: Option< extern "C" fn(boolValue: c_int, file: *const c_char, line: c_int) -> *mut Tcl_Obj>,
    pub tcl_DbNewByteArrayObj: Option< extern "C" fn(bytes: *const c_uchar, length: c_int, file: *const c_char, line: c_int) -> *mut Tcl_Obj>,
    pub tcl_DbNewDoubleObj: Option< extern "C" fn(doubleValue: c_double, file: *const c_char, line: c_int) -> *mut Tcl_Obj>,
    pub tcl_DbNewListObj: Option< extern "C" fn(objc: c_int, objv: *const *mut Tcl_Obj, file: *const c_char, line: c_int) -> *mut Tcl_Obj>,
    pub tcl_DbNewLongObj: Option< extern "C" fn(longValue: c_long, file: *const c_char, line: c_int) -> *mut Tcl_Obj>,
    pub tcl_DbNewObj: Option< extern "C" fn(file: *const c_char, line: c_int) -> *mut Tcl_Obj>,
    pub tcl_DbNewStringObj: Option< extern "C" fn(bytes: *const c_char, length: c_int, file: *const c_char, line: c_int) -> *mut Tcl_Obj>,
    pub tcl_DuplicateObj: Option< extern "C" fn(objPtr: *mut Tcl_Obj) -> *mut Tcl_Obj>,
    pub tclFreeObj: Option< extern "C" fn(objPtr: *mut Tcl_Obj)>,
    pub tcl_GetBoolean: Option< extern "C" fn(interp: *mut Tcl_Interp, src: *const c_char, boolPtr: *mut c_int) -> c_int>,
    pub tcl_GetBooleanFromObj: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj, boolPtr: *mut c_int) -> c_int>,
    pub tcl_GetByteArrayFromObj: Option< extern "C" fn(objPtr: *mut Tcl_Obj, lengthPtr: *mut c_int) -> *mut c_uchar>,
    pub tcl_GetDouble: Option< extern "C" fn(interp: *mut Tcl_Interp, src: *const c_char, doublePtr: *mut c_double) -> c_int>,
    pub tcl_GetDoubleFromObj: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj, doublePtr: *mut c_double) -> c_int>,
    pub tcl_GetIndexFromObj: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj, tablePtr: *const *const c_char, msg: *const c_char, flags: c_int, indexPtr: *mut c_int) -> c_int>,
    pub tcl_GetInt: Option< extern "C" fn(interp: *mut Tcl_Interp, src: *const c_char, intPtr: *mut c_int) -> c_int>,
    pub tcl_GetIntFromObj: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj, intPtr: *mut c_int) -> c_int>,
    pub tcl_GetLongFromObj: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj, longPtr: *mut c_long) -> c_int>,
    pub tcl_GetObjType: Option< extern "C" fn(typeName: *const c_char) -> *const Tcl_ObjType>,
    pub tcl_GetStringFromObj: Option< extern "C" fn(objPtr: *mut Tcl_Obj, lengthPtr: *mut c_int) -> *mut c_char>,
    pub tcl_InvalidateStringRep: Option< extern "C" fn(objPtr: *mut Tcl_Obj)>,
    pub tcl_ListObjAppendList: Option< extern "C" fn(interp: *mut Tcl_Interp, listPtr: *mut Tcl_Obj, elemListPtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_ListObjAppendElement: Option< extern "C" fn(interp: *mut Tcl_Interp, listPtr: *mut Tcl_Obj, objPtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_ListObjGetElements: Option< extern "C" fn(interp: *mut Tcl_Interp, listPtr: *mut Tcl_Obj, objcPtr: *mut c_int, objvPtr: *mut *mut *mut Tcl_Obj) -> c_int>,
    pub tcl_ListObjIndex: Option< extern "C" fn(interp: *mut Tcl_Interp, listPtr: *mut Tcl_Obj, index: c_int, objPtrPtr: *mut *mut Tcl_Obj) -> c_int>,
    pub tcl_ListObjLength: Option< extern "C" fn(interp: *mut Tcl_Interp, listPtr: *mut Tcl_Obj, lengthPtr: *mut c_int) -> c_int>,
    pub tcl_ListObjReplace: Option< extern "C" fn(interp: *mut Tcl_Interp, listPtr: *mut Tcl_Obj, first: c_int, count: c_int, objc: c_int, objv: *const *mut Tcl_Obj) -> c_int>,
    pub tcl_NewBooleanObj: Option< extern "C" fn(boolValue: c_int) -> *mut Tcl_Obj>,
    pub tcl_NewByteArrayObj: Option< extern "C" fn(bytes: *const c_uchar, length: c_int) -> *mut Tcl_Obj>,
    pub tcl_NewDoubleObj: Option< extern "C" fn(doubleValue: c_double) -> *mut Tcl_Obj>,
    pub tcl_NewIntObj: Option< extern "C" fn(intValue: c_int) -> *mut Tcl_Obj>,
    pub tcl_NewListObj: Option< extern "C" fn(objc: c_int, objv: *const *mut Tcl_Obj) -> *mut Tcl_Obj>,
    pub tcl_NewLongObj: Option< extern "C" fn(longValue: c_long) -> *mut Tcl_Obj>,
    pub tcl_NewObj: Option< extern "C" fn() -> *mut Tcl_Obj>,
    pub tcl_NewStringObj: Option< extern "C" fn(bytes: *const c_char, length: c_int) -> *mut Tcl_Obj>,
    pub tcl_SetBooleanObj: Option< extern "C" fn(objPtr: *mut Tcl_Obj, boolValue: c_int)>,
    pub tcl_SetByteArrayLength: Option< extern "C" fn(objPtr: *mut Tcl_Obj, length: c_int) -> *mut c_uchar>,
    pub tcl_SetByteArrayObj: Option< extern "C" fn(objPtr: *mut Tcl_Obj, bytes: *const c_uchar, length: c_int)>,
    pub tcl_SetDoubleObj: Option< extern "C" fn(objPtr: *mut Tcl_Obj, doubleValue: c_double)>,
    pub tcl_SetIntObj: Option< extern "C" fn(objPtr: *mut Tcl_Obj, intValue: c_int)>,
    pub tcl_SetListObj: Option< extern "C" fn(objPtr: *mut Tcl_Obj, objc: c_int, objv: *const *mut Tcl_Obj)>,
    pub tcl_SetLongObj: Option< extern "C" fn(objPtr: *mut Tcl_Obj, longValue: c_long)>,
    pub tcl_SetObjLength: Option< extern "C" fn(objPtr: *mut Tcl_Obj, length: c_int)>,
    pub tcl_SetStringObj: Option< extern "C" fn(objPtr: *mut Tcl_Obj, bytes: *const c_char, length: c_int)>,
    pub tcl_AddErrorInfo: Option< extern "C" fn(interp: *mut Tcl_Interp, message: *const c_char)>,
    pub tcl_AddObjErrorInfo: Option< extern "C" fn(interp: *mut Tcl_Interp, message: *const c_char, length: c_int)>,
    pub tcl_AllowExceptions: Option< extern "C" fn(interp: *mut Tcl_Interp)>,
    pub tcl_AppendElement: Option< extern "C" fn(interp: *mut Tcl_Interp, element: *const c_char)>,
    pub tcl_AppendResult: Option< extern "C" fn(interp: *mut Tcl_Interp)>,
    pub tcl_AsyncCreate: Option< extern "C" fn(_proc: *mut Tcl_AsyncProc, clientData: ClientData) -> Tcl_AsyncHandler>,
    pub tcl_AsyncDelete: Option< extern "C" fn(async: Tcl_AsyncHandler)>,
    pub tcl_AsyncInvoke: Option< extern "C" fn(interp: *mut Tcl_Interp, code: c_int) -> c_int>,
    pub tcl_AsyncMark: Option< extern "C" fn(async: Tcl_AsyncHandler)>,
    pub tcl_AsyncReady: Option< extern "C" fn() -> c_int>,
    pub tcl_BackgroundError: Option< extern "C" fn(interp: *mut Tcl_Interp)>,
    pub tcl_Backslash: Option< extern "C" fn(src: *const c_char, readPtr: *mut c_int) -> c_char>,
    pub tcl_BadChannelOption: Option< extern "C" fn(interp: *mut Tcl_Interp, optionName: *const c_char, optionList: *const c_char) -> c_int>,
    pub tcl_CallWhenDeleted: Option< extern "C" fn(interp: *mut Tcl_Interp, _proc: *mut Tcl_InterpDeleteProc, clientData: ClientData)>,
    pub tcl_CancelIdleCall: Option< extern "C" fn(idleProc: *mut Tcl_IdleProc, clientData: ClientData)>,
    pub tcl_Close: Option< extern "C" fn(interp: *mut Tcl_Interp, chan: Tcl_Channel) -> c_int>,
    pub tcl_CommandComplete: Option< extern "C" fn(cmd: *const c_char) -> c_int>,
    pub tcl_Concat: Option< extern "C" fn(argc: c_int, argv: *const *const c_char) -> *mut c_char>,
    pub tcl_ConvertElement: Option< extern "C" fn(src: *const c_char, dst: *mut c_char, flags: c_int) -> c_int>,
    pub tcl_ConvertCountedElement: Option< extern "C" fn(src: *const c_char, length: c_int, dst: *mut c_char, flags: c_int) -> c_int>,
    pub tcl_CreateAlias: Option< extern "C" fn(slave: *mut Tcl_Interp, slaveCmd: *const c_char, target: *mut Tcl_Interp, targetCmd: *const c_char, argc: c_int, argv: *const *const c_char) -> c_int>,
    pub tcl_CreateAliasObj: Option< extern "C" fn(slave: *mut Tcl_Interp, slaveCmd: *const c_char, target: *mut Tcl_Interp, targetCmd: *const c_char, objc: c_int, objv: *const *mut Tcl_Obj) -> c_int>,
    pub tcl_CreateChannel: Option< extern "C" fn(typePtr: *const Tcl_ChannelType, chanName: *const c_char, instanceData: ClientData, mask: c_int) -> Tcl_Channel>,
    pub tcl_CreateChannelHandler: Option< extern "C" fn(chan: Tcl_Channel, mask: c_int, _proc: *mut Tcl_ChannelProc, clientData: ClientData)>,
    pub tcl_CreateCloseHandler: Option< extern "C" fn(chan: Tcl_Channel, _proc: *mut Tcl_CloseProc, clientData: ClientData)>,
    pub tcl_CreateCommand: Option< extern "C" fn(interp: *mut Tcl_Interp, cmdName: *const c_char, _proc: *mut Tcl_CmdProc, clientData: ClientData, deleteProc: *mut Tcl_CmdDeleteProc) -> Tcl_Command>,
    pub tcl_CreateEventSource: Option< extern "C" fn(setupProc: *mut Tcl_EventSetupProc, checkProc: *mut Tcl_EventCheckProc, clientData: ClientData)>,
    pub tcl_CreateExitHandler: Option< extern "C" fn(_proc: *mut Tcl_ExitProc, clientData: ClientData)>,
    pub tcl_CreateInterp: Option< extern "C" fn() -> *mut Tcl_Interp>,
    pub tcl_CreateMathFunc: Option< extern "C" fn(interp: *mut Tcl_Interp, name: *const c_char, numArgs: c_int, argTypes: *mut Tcl_ValueType, _proc: *mut Tcl_MathProc, clientData: ClientData)>,
    pub tcl_CreateObjCommand: Option< extern "C" fn(interp: *mut Tcl_Interp, cmdName: *const c_char, _proc: *mut Tcl_ObjCmdProc, clientData: ClientData, deleteProc: *mut Tcl_CmdDeleteProc) -> Tcl_Command>,
    pub tcl_CreateSlave: Option< extern "C" fn(interp: *mut Tcl_Interp, slaveName: *const c_char, isSafe: c_int) -> *mut Tcl_Interp>,
    pub tcl_CreateTimerHandler: Option< extern "C" fn(milliseconds: c_int, _proc: *mut Tcl_TimerProc, clientData: ClientData) -> Tcl_TimerToken>,
    pub tcl_CreateTrace: Option< extern "C" fn(interp: *mut Tcl_Interp, level: c_int, _proc: *mut Tcl_CmdTraceProc, clientData: ClientData) -> Tcl_Trace>,
    pub tcl_DeleteAssocData: Option< extern "C" fn(interp: *mut Tcl_Interp, name: *const c_char)>,
    pub tcl_DeleteChannelHandler: Option< extern "C" fn(chan: Tcl_Channel, _proc: *mut Tcl_ChannelProc, clientData: ClientData)>,
    pub tcl_DeleteCloseHandler: Option< extern "C" fn(chan: Tcl_Channel, _proc: *mut Tcl_CloseProc, clientData: ClientData)>,
    pub tcl_DeleteCommand: Option< extern "C" fn(interp: *mut Tcl_Interp, cmdName: *const c_char) -> c_int>,
    pub tcl_DeleteCommandFromToken: Option< extern "C" fn(interp: *mut Tcl_Interp, command: Tcl_Command) -> c_int>,
    pub tcl_DeleteEvents: Option< extern "C" fn(_proc: *mut Tcl_EventDeleteProc, clientData: ClientData)>,
    pub tcl_DeleteEventSource: Option< extern "C" fn(setupProc: *mut Tcl_EventSetupProc, checkProc: *mut Tcl_EventCheckProc, clientData: ClientData)>,
    pub tcl_DeleteExitHandler: Option< extern "C" fn(_proc: *mut Tcl_ExitProc, clientData: ClientData)>,
    pub tcl_DeleteHashEntry: Option< extern "C" fn(entryPtr: *mut Tcl_HashEntry)>,
    pub tcl_DeleteHashTable: Option< extern "C" fn(tablePtr: *mut Tcl_HashTable)>,
    pub tcl_DeleteInterp: Option< extern "C" fn(interp: *mut Tcl_Interp)>,
    pub tcl_DetachPids: Option< extern "C" fn(numPids: c_int, pidPtr: *mut Tcl_Pid)>,
    pub tcl_DeleteTimerHandler: Option< extern "C" fn(token: Tcl_TimerToken)>,
    pub tcl_DeleteTrace: Option< extern "C" fn(interp: *mut Tcl_Interp, trace: Tcl_Trace)>,
    pub tcl_DontCallWhenDeleted: Option< extern "C" fn(interp: *mut Tcl_Interp, _proc: *mut Tcl_InterpDeleteProc, clientData: ClientData)>,
    pub tcl_DoOneEvent: Option< extern "C" fn(flags: c_int) -> c_int>,
    pub tcl_DoWhenIdle: Option< extern "C" fn(_proc: *mut Tcl_IdleProc, clientData: ClientData)>,
    pub tcl_DStringAppend: Option< extern "C" fn(dsPtr: *mut Tcl_DString, bytes: *const c_char, length: c_int) -> *mut c_char>,
    pub tcl_DStringAppendElement: Option< extern "C" fn(dsPtr: *mut Tcl_DString, element: *const c_char) -> *mut c_char>,
    pub tcl_DStringEndSublist: Option< extern "C" fn(dsPtr: *mut Tcl_DString)>,
    pub tcl_DStringFree: Option< extern "C" fn(dsPtr: *mut Tcl_DString)>,
    pub tcl_DStringGetResult: Option< extern "C" fn(interp: *mut Tcl_Interp, dsPtr: *mut Tcl_DString)>,
    pub tcl_DStringInit: Option< extern "C" fn(dsPtr: *mut Tcl_DString)>,
    pub tcl_DStringResult: Option< extern "C" fn(interp: *mut Tcl_Interp, dsPtr: *mut Tcl_DString)>,
    pub tcl_DStringSetLength: Option< extern "C" fn(dsPtr: *mut Tcl_DString, length: c_int)>,
    pub tcl_DStringStartSublist: Option< extern "C" fn(dsPtr: *mut Tcl_DString)>,
    pub tcl_Eof: Option< extern "C" fn(chan: Tcl_Channel) -> c_int>,
    pub tcl_ErrnoId: Option< extern "C" fn() -> *const c_char>,
    pub tcl_ErrnoMsg: Option< extern "C" fn(err: c_int) -> *const c_char>,
    pub tcl_Eval: Option< extern "C" fn(interp: *mut Tcl_Interp, script: *const c_char) -> c_int>,
    pub tcl_EvalFile: Option< extern "C" fn(interp: *mut Tcl_Interp, fileName: *const c_char) -> c_int>,
    pub tcl_EvalObj: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_EventuallyFree: Option< extern "C" fn(clientData: ClientData, freeProc: *mut Tcl_FreeProc)>,
    pub tcl_Exit: Option< extern "C" fn(status: c_int)>,
    pub tcl_ExposeCommand: Option< extern "C" fn(interp: *mut Tcl_Interp, hiddenCmdToken: *const c_char, cmdName: *const c_char) -> c_int>,
    pub tcl_ExprBoolean: Option< extern "C" fn(interp: *mut Tcl_Interp, expr: *const c_char, ptr: *mut c_int) -> c_int>,
    pub tcl_ExprBooleanObj: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj, ptr: *mut c_int) -> c_int>,
    pub tcl_ExprDouble: Option< extern "C" fn(interp: *mut Tcl_Interp, expr: *const c_char, ptr: *mut c_double) -> c_int>,
    pub tcl_ExprDoubleObj: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj, ptr: *mut c_double) -> c_int>,
    pub tcl_ExprLong: Option< extern "C" fn(interp: *mut Tcl_Interp, expr: *const c_char, ptr: *mut c_long) -> c_int>,
    pub tcl_ExprLongObj: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj, ptr: *mut c_long) -> c_int>,
    pub tcl_ExprObj: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj, resultPtrPtr: *mut *mut Tcl_Obj) -> c_int>,
    pub tcl_ExprString: Option< extern "C" fn(interp: *mut Tcl_Interp, expr: *const c_char) -> c_int>,
    pub tcl_Finalize: Option< extern "C" fn()>,
    pub tcl_FindExecutable: Option< extern "C" fn(argv0: *const c_char)>,
    pub tcl_FirstHashEntry: Option< extern "C" fn(tablePtr: *mut Tcl_HashTable, searchPtr: *mut Tcl_HashSearch) -> *mut Tcl_HashEntry>,
    pub tcl_Flush: Option< extern "C" fn(chan: Tcl_Channel) -> c_int>,
    pub tcl_FreeResult: Option< extern "C" fn(interp: *mut Tcl_Interp)>,
    pub tcl_GetAlias: Option< extern "C" fn(interp: *mut Tcl_Interp, slaveCmd: *const c_char, targetInterpPtr: *mut *mut Tcl_Interp, targetCmdPtr: *mut *const c_char, argcPtr: *mut c_int, argvPtr: *mut *mut *const c_char) -> c_int>,
    pub tcl_GetAliasObj: Option< extern "C" fn(interp: *mut Tcl_Interp, slaveCmd: *const c_char, targetInterpPtr: *mut *mut Tcl_Interp, targetCmdPtr: *mut *const c_char, objcPtr: *mut c_int, objv: *mut *mut *mut Tcl_Obj) -> c_int>,
    pub tcl_GetAssocData: Option< extern "C" fn(interp: *mut Tcl_Interp, name: *const c_char, procPtr: *mut *mut Tcl_InterpDeleteProc) -> ClientData>,
    pub tcl_GetChannel: Option< extern "C" fn(interp: *mut Tcl_Interp, chanName: *const c_char, modePtr: *mut c_int) -> Tcl_Channel>,
    pub tcl_GetChannelBufferSize: Option< extern "C" fn(chan: Tcl_Channel) -> c_int>,
    pub tcl_GetChannelHandle: Option< extern "C" fn(chan: Tcl_Channel, direction: c_int, handlePtr: *mut ClientData) -> c_int>,
    pub tcl_GetChannelInstanceData: Option< extern "C" fn(chan: Tcl_Channel) -> ClientData>,
    pub tcl_GetChannelMode: Option< extern "C" fn(chan: Tcl_Channel) -> c_int>,
    pub tcl_GetChannelName: Option< extern "C" fn(chan: Tcl_Channel) -> *const c_char>,
    pub tcl_GetChannelOption: Option< extern "C" fn(interp: *mut Tcl_Interp, chan: Tcl_Channel, optionName: *const c_char, dsPtr: *mut Tcl_DString) -> c_int>,
    pub tcl_GetChannelType: Option< extern "C" fn(chan: Tcl_Channel) -> *const Tcl_ChannelType>,
    pub tcl_GetCommandInfo: Option< extern "C" fn(interp: *mut Tcl_Interp, cmdName: *const c_char, infoPtr: *mut Tcl_CmdInfo) -> c_int>,
    pub tcl_GetCommandName: Option< extern "C" fn(interp: *mut Tcl_Interp, command: Tcl_Command) -> *const c_char>,
    pub tcl_GetErrno: Option< extern "C" fn() -> c_int>,
    pub tcl_GetHostName: Option< extern "C" fn() -> *const c_char>,
    pub tcl_GetInterpPath: Option< extern "C" fn(askInterp: *mut Tcl_Interp, slaveInterp: *mut Tcl_Interp) -> c_int>,
    pub tcl_GetMaster: Option< extern "C" fn(interp: *mut Tcl_Interp) -> *mut Tcl_Interp>,
    pub tcl_GetNameOfExecutable: Option< extern "C" fn() -> *const c_char>,
    pub tcl_GetObjResult: Option< extern "C" fn(interp: *mut Tcl_Interp) -> *mut Tcl_Obj>,
    pub tcl_GetOpenFile: Option< extern "C" fn(interp: *mut Tcl_Interp, chanID: *const c_char, forWriting: c_int, checkUsage: c_int, filePtr: *mut ClientData) -> c_int>,
    pub tcl_GetPathType: Option< extern "C" fn(path: *const c_char) -> Tcl_PathType>,
    pub tcl_Gets: Option< extern "C" fn(chan: Tcl_Channel, dsPtr: *mut Tcl_DString) -> c_int>,
    pub tcl_GetsObj: Option< extern "C" fn(chan: Tcl_Channel, objPtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_GetServiceMode: Option< extern "C" fn() -> c_int>,
    pub tcl_GetSlave: Option< extern "C" fn(interp: *mut Tcl_Interp, slaveName: *const c_char) -> *mut Tcl_Interp>,
    pub tcl_GetStdChannel: Option< extern "C" fn(_type: c_int) -> Tcl_Channel>,
    pub tcl_GetStringResult: Option< extern "C" fn(interp: *mut Tcl_Interp) -> *const c_char>,
    pub tcl_GetVar: Option< extern "C" fn(interp: *mut Tcl_Interp, varName: *const c_char, flags: c_int) -> *const c_char>,
    pub tcl_GetVar2: Option< extern "C" fn(interp: *mut Tcl_Interp, part1: *const c_char, part2: *const c_char, flags: c_int) -> *const c_char>,
    pub tcl_GlobalEval: Option< extern "C" fn(interp: *mut Tcl_Interp, command: *const c_char) -> c_int>,
    pub tcl_GlobalEvalObj: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_HideCommand: Option< extern "C" fn(interp: *mut Tcl_Interp, cmdName: *const c_char, hiddenCmdToken: *const c_char) -> c_int>,
    pub tcl_Init: Option< extern "C" fn(interp: *mut Tcl_Interp) -> c_int>,
    pub tcl_InitHashTable: Option< extern "C" fn(tablePtr: *mut Tcl_HashTable, keyType: c_int)>,
    pub tcl_InputBlocked: Option< extern "C" fn(chan: Tcl_Channel) -> c_int>,
    pub tcl_InputBuffered: Option< extern "C" fn(chan: Tcl_Channel) -> c_int>,
    pub tcl_InterpDeleted: Option< extern "C" fn(interp: *mut Tcl_Interp) -> c_int>,
    pub tcl_IsSafe: Option< extern "C" fn(interp: *mut Tcl_Interp) -> c_int>,
    pub tcl_JoinPath: Option< extern "C" fn(argc: c_int, argv: *const *const c_char, resultPtr: *mut Tcl_DString) -> *mut c_char>,
    pub tcl_LinkVar: Option< extern "C" fn(interp: *mut Tcl_Interp, varName: *const c_char, addr: *mut c_char, _type: c_int) -> c_int>,
    pub reserved188: Option< extern "C" fn()>,
    pub tcl_MakeFileChannel: Option< extern "C" fn(handle: ClientData, mode: c_int) -> Tcl_Channel>,
    pub tcl_MakeSafe: Option< extern "C" fn(interp: *mut Tcl_Interp) -> c_int>,
    pub tcl_MakeTcpClientChannel: Option< extern "C" fn(tcpSocket: ClientData) -> Tcl_Channel>,
    pub tcl_Merge: Option< extern "C" fn(argc: c_int, argv: *const *const c_char) -> *mut c_char>,
    pub tcl_NextHashEntry: Option< extern "C" fn(searchPtr: *mut Tcl_HashSearch) -> *mut Tcl_HashEntry>,
    pub tcl_NotifyChannel: Option< extern "C" fn(channel: Tcl_Channel, mask: c_int)>,
    pub tcl_ObjGetVar2: Option< extern "C" fn(interp: *mut Tcl_Interp, part1Ptr: *mut Tcl_Obj, part2Ptr: *mut Tcl_Obj, flags: c_int) -> *mut Tcl_Obj>,
    pub tcl_ObjSetVar2: Option< extern "C" fn(interp: *mut Tcl_Interp, part1Ptr: *mut Tcl_Obj, part2Ptr: *mut Tcl_Obj, newValuePtr: *mut Tcl_Obj, flags: c_int) -> *mut Tcl_Obj>,
    pub tcl_OpenCommandChannel: Option< extern "C" fn(interp: *mut Tcl_Interp, argc: c_int, argv: *mut *const c_char, flags: c_int) -> Tcl_Channel>,
    pub tcl_OpenFileChannel: Option< extern "C" fn(interp: *mut Tcl_Interp, fileName: *const c_char, modeString: *const c_char, permissions: c_int) -> Tcl_Channel>,
    pub tcl_OpenTcpClient: Option< extern "C" fn(interp: *mut Tcl_Interp, port: c_int, address: *const c_char, myaddr: *const c_char, myport: c_int, async: c_int) -> Tcl_Channel>,
    pub tcl_OpenTcpServer: Option< extern "C" fn(interp: *mut Tcl_Interp, port: c_int, host: *const c_char, acceptProc: *mut Tcl_TcpAcceptProc, callbackData: ClientData) -> Tcl_Channel>,
    pub tcl_Preserve: Option< extern "C" fn(data: ClientData)>,
    pub tcl_PrintDouble: Option< extern "C" fn(interp: *mut Tcl_Interp, value: c_double, dst: *mut c_char)>,
    pub tcl_PutEnv: Option< extern "C" fn(assignment: *const c_char) -> c_int>,
    pub tcl_PosixError: Option< extern "C" fn(interp: *mut Tcl_Interp) -> *const c_char>,
    pub tcl_QueueEvent: Option< extern "C" fn(evPtr: *mut Tcl_Event, position: Tcl_QueuePosition)>,
    pub tcl_Read: Option< extern "C" fn(chan: Tcl_Channel, bufPtr: *mut c_char, toRead: c_int) -> c_int>,
    pub tcl_ReapDetachedProcs: Option< extern "C" fn()>,
    pub tcl_RecordAndEval: Option< extern "C" fn(interp: *mut Tcl_Interp, cmd: *const c_char, flags: c_int) -> c_int>,
    pub tcl_RecordAndEvalObj: Option< extern "C" fn(interp: *mut Tcl_Interp, cmdPtr: *mut Tcl_Obj, flags: c_int) -> c_int>,
    pub tcl_RegisterChannel: Option< extern "C" fn(interp: *mut Tcl_Interp, chan: Tcl_Channel)>,
    pub tcl_RegisterObjType: Option< extern "C" fn(typePtr: *const Tcl_ObjType)>,
    pub tcl_RegExpCompile: Option< extern "C" fn(interp: *mut Tcl_Interp, pattern: *const c_char) -> Tcl_RegExp>,
    pub tcl_RegExpExec: Option< extern "C" fn(interp: *mut Tcl_Interp, regexp: Tcl_RegExp, text: *const c_char, start: *const c_char) -> c_int>,
    pub tcl_RegExpMatch: Option< extern "C" fn(interp: *mut Tcl_Interp, text: *const c_char, pattern: *const c_char) -> c_int>,
    pub tcl_RegExpRange: Option< extern "C" fn(regexp: Tcl_RegExp, index: c_int, startPtr: *mut *const c_char, endPtr: *mut *const c_char)>,
    pub tcl_Release: Option< extern "C" fn(clientData: ClientData)>,
    pub tcl_ResetResult: Option< extern "C" fn(interp: *mut Tcl_Interp)>,
    pub tcl_ScanElement: Option< extern "C" fn(src: *const c_char, flagPtr: *mut c_int) -> c_int>,
    pub tcl_ScanCountedElement: Option< extern "C" fn(src: *const c_char, length: c_int, flagPtr: *mut c_int) -> c_int>,
    pub tcl_SeekOld: Option< extern "C" fn(chan: Tcl_Channel, offset: c_int, mode: c_int) -> c_int>,
    pub tcl_ServiceAll: Option< extern "C" fn() -> c_int>,
    pub tcl_ServiceEvent: Option< extern "C" fn(flags: c_int) -> c_int>,
    pub tcl_SetAssocData: Option< extern "C" fn(interp: *mut Tcl_Interp, name: *const c_char, _proc: *mut Tcl_InterpDeleteProc, clientData: ClientData)>,
    pub tcl_SetChannelBufferSize: Option< extern "C" fn(chan: Tcl_Channel, sz: c_int)>,
    pub tcl_SetChannelOption: Option< extern "C" fn(interp: *mut Tcl_Interp, chan: Tcl_Channel, optionName: *const c_char, newValue: *const c_char) -> c_int>,
    pub tcl_SetCommandInfo: Option< extern "C" fn(interp: *mut Tcl_Interp, cmdName: *const c_char, infoPtr: *const Tcl_CmdInfo) -> c_int>,
    pub tcl_SetErrno: Option< extern "C" fn(err: c_int)>,
    pub tcl_SetErrorCode: Option< extern "C" fn(interp: *mut Tcl_Interp)>,
    pub tcl_SetMaxBlockTime: Option< extern "C" fn(timePtr: *const Tcl_Time)>,
    pub tcl_SetPanicProc: Option< extern "C" fn(panicProc: *mut Tcl_PanicProc)>,
    pub tcl_SetRecursionLimit: Option< extern "C" fn(interp: *mut Tcl_Interp, depth: c_int) -> c_int>,
    pub tcl_SetResult: Option< extern "C" fn(interp: *mut Tcl_Interp, result: *mut c_char, freeProc: *mut Tcl_FreeProc)>,
    pub tcl_SetServiceMode: Option< extern "C" fn(mode: c_int) -> c_int>,
    pub tcl_SetObjErrorCode: Option< extern "C" fn(interp: *mut Tcl_Interp, errorObjPtr: *mut Tcl_Obj)>,
    pub tcl_SetObjResult: Option< extern "C" fn(interp: *mut Tcl_Interp, resultObjPtr: *mut Tcl_Obj)>,
    pub tcl_SetStdChannel: Option< extern "C" fn(channel: Tcl_Channel, _type: c_int)>,
    pub tcl_SetVar: Option< extern "C" fn(interp: *mut Tcl_Interp, varName: *const c_char, newValue: *const c_char, flags: c_int) -> *const c_char>,
    pub tcl_SetVar2: Option< extern "C" fn(interp: *mut Tcl_Interp, part1: *const c_char, part2: *const c_char, newValue: *const c_char, flags: c_int) -> *const c_char>,
    pub tcl_SignalId: Option< extern "C" fn(sig: c_int) -> *const c_char>,
    pub tcl_SignalMsg: Option< extern "C" fn(sig: c_int) -> *const c_char>,
    pub tcl_SourceRCFile: Option< extern "C" fn(interp: *mut Tcl_Interp)>,
    pub tcl_SplitList: Option< extern "C" fn(interp: *mut Tcl_Interp, listStr: *const c_char, argcPtr: *mut c_int, argvPtr: *mut *mut *const c_char) -> c_int>,
    pub tcl_SplitPath: Option< extern "C" fn(path: *const c_char, argcPtr: *mut c_int, argvPtr: *mut *mut *const c_char)>,
    pub tcl_StaticPackage: Option< extern "C" fn(interp: *mut Tcl_Interp, pkgName: *const c_char, initProc: *mut Tcl_PackageInitProc, safeInitProc: *mut Tcl_PackageInitProc)>,
    pub tcl_StringMatch: Option< extern "C" fn(str: *const c_char, pattern: *const c_char) -> c_int>,
    pub tcl_TellOld: Option< extern "C" fn(chan: Tcl_Channel) -> c_int>,
    pub tcl_TraceVar: Option< extern "C" fn(interp: *mut Tcl_Interp, varName: *const c_char, flags: c_int, _proc: *mut Tcl_VarTraceProc, clientData: ClientData) -> c_int>,
    pub tcl_TraceVar2: Option< extern "C" fn(interp: *mut Tcl_Interp, part1: *const c_char, part2: *const c_char, flags: c_int, _proc: *mut Tcl_VarTraceProc, clientData: ClientData) -> c_int>,
    pub tcl_TranslateFileName: Option< extern "C" fn(interp: *mut Tcl_Interp, name: *const c_char, bufferPtr: *mut Tcl_DString) -> *mut c_char>,
    pub tcl_Ungets: Option< extern "C" fn(chan: Tcl_Channel, str: *const c_char, len: c_int, atHead: c_int) -> c_int>,
    pub tcl_UnlinkVar: Option< extern "C" fn(interp: *mut Tcl_Interp, varName: *const c_char)>,
    pub tcl_UnregisterChannel: Option< extern "C" fn(interp: *mut Tcl_Interp, chan: Tcl_Channel) -> c_int>,
    pub tcl_UnsetVar: Option< extern "C" fn(interp: *mut Tcl_Interp, varName: *const c_char, flags: c_int) -> c_int>,
    pub tcl_UnsetVar2: Option< extern "C" fn(interp: *mut Tcl_Interp, part1: *const c_char, part2: *const c_char, flags: c_int) -> c_int>,
    pub tcl_UntraceVar: Option< extern "C" fn(interp: *mut Tcl_Interp, varName: *const c_char, flags: c_int, _proc: *mut Tcl_VarTraceProc, clientData: ClientData)>,
    pub tcl_UntraceVar2: Option< extern "C" fn(interp: *mut Tcl_Interp, part1: *const c_char, part2: *const c_char, flags: c_int, _proc: *mut Tcl_VarTraceProc, clientData: ClientData)>,
    pub tcl_UpdateLinkedVar: Option< extern "C" fn(interp: *mut Tcl_Interp, varName: *const c_char)>,
    pub tcl_UpVar: Option< extern "C" fn(interp: *mut Tcl_Interp, frameName: *const c_char, varName: *const c_char, localName: *const c_char, flags: c_int) -> c_int>,
    pub tcl_UpVar2: Option< extern "C" fn(interp: *mut Tcl_Interp, frameName: *const c_char, part1: *const c_char, part2: *const c_char, localName: *const c_char, flags: c_int) -> c_int>,
    pub tcl_VarEval: Option< extern "C" fn(interp: *mut Tcl_Interp) -> c_int>,
    pub tcl_VarTraceInfo: Option< extern "C" fn(interp: *mut Tcl_Interp, varName: *const c_char, flags: c_int, procPtr: *mut Tcl_VarTraceProc, prevClientData: ClientData) -> ClientData>,
    pub tcl_VarTraceInfo2: Option< extern "C" fn(interp: *mut Tcl_Interp, part1: *const c_char, part2: *const c_char, flags: c_int, procPtr: *mut Tcl_VarTraceProc, prevClientData: ClientData) -> ClientData>,
    pub tcl_Write: Option< extern "C" fn(chan: Tcl_Channel, s: *const c_char, slen: c_int) -> c_int>,
    pub tcl_WrongNumArgs: Option< extern "C" fn(interp: *mut Tcl_Interp, objc: c_int, objv: *const *mut Tcl_Obj, message: *const c_char)>,
    pub tcl_DumpActiveMemory: Option< extern "C" fn(fileName: *const c_char) -> c_int>,
    pub tcl_ValidateAllMemory: Option< extern "C" fn(file: *const c_char, line: c_int)>,
    pub tcl_HashStats: Option< extern "C" fn(tablePtr: *mut Tcl_HashTable) -> *mut c_char>,
    pub tcl_ParseVar: Option< extern "C" fn(interp: *mut Tcl_Interp, start: *const c_char, termPtr: *mut *const c_char) -> *const c_char>,
    pub tcl_PkgPresent: Option< extern "C" fn(interp: *mut Tcl_Interp, name: *const c_char, version: *const c_char, exact: c_int) -> *const c_char>,
    pub tcl_PkgPresentEx: Option< extern "C" fn(interp: *mut Tcl_Interp, name: *const c_char, version: *const c_char, exact: c_int, clientDataPtr: *mut c_void) -> *const c_char>,
    pub tcl_PkgProvide: Option< extern "C" fn(interp: *mut Tcl_Interp, name: *const c_char, version: *const c_char) -> c_int>,
    pub tcl_PkgRequire: Option< extern "C" fn(interp: *mut Tcl_Interp, name: *const c_char, version: *const c_char, exact: c_int) -> *const c_char>,
    pub tcl_WaitPid: Option< extern "C" fn(pid: Tcl_Pid, statPtr: *mut c_int, options: c_int) -> Tcl_Pid>,
    pub tcl_GetVersion: Option< extern "C" fn(major: *mut c_int, minor: *mut c_int, patchLevel: *mut c_int, _type: *mut c_int)>,
    pub tcl_InitMemory: Option< extern "C" fn(interp: *mut Tcl_Interp)>,
    pub tcl_StackChannel: Option< extern "C" fn(interp: *mut Tcl_Interp, typePtr: *const Tcl_ChannelType, instanceData: ClientData, mask: c_int, prevChan: Tcl_Channel) -> Tcl_Channel>,
    pub tcl_UnstackChannel: Option< extern "C" fn(interp: *mut Tcl_Interp, chan: Tcl_Channel) -> c_int>,
    pub tcl_GetStackedChannel: Option< extern "C" fn(chan: Tcl_Channel) -> Tcl_Channel>,
    pub tcl_SetMainLoop: Option< extern "C" fn(_proc: *mut Tcl_MainLoopProc)>,
    pub reserved285: Option< extern "C" fn()>,
    pub tcl_AppendObjToObj: Option< extern "C" fn(objPtr: *mut Tcl_Obj, appendObjPtr: *mut Tcl_Obj)>,
    pub tcl_CreateEncoding: Option< extern "C" fn(typePtr: *const Tcl_EncodingType) -> Tcl_Encoding>,
    pub tcl_CreateThreadExitHandler: Option< extern "C" fn(_proc: *mut Tcl_ExitProc, clientData: ClientData)>,
    pub tcl_DeleteThreadExitHandler: Option< extern "C" fn(_proc: *mut Tcl_ExitProc, clientData: ClientData)>,
    pub tcl_DiscardResult: Option< extern "C" fn(statePtr: *mut Tcl_SavedResult)>,
    pub tcl_EvalEx: Option< extern "C" fn(interp: *mut Tcl_Interp, script: *const c_char, numBytes: c_int, flags: c_int) -> c_int>,
    pub tcl_EvalObjv: Option< extern "C" fn(interp: *mut Tcl_Interp, objc: c_int, objv: *const *mut Tcl_Obj, flags: c_int) -> c_int>,
    pub tcl_EvalObjEx: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj, flags: c_int) -> c_int>,
    pub tcl_ExitThread: Option< extern "C" fn(status: c_int)>,
    pub tcl_ExternalToUtf: Option< extern "C" fn(interp: *mut Tcl_Interp, encoding: Tcl_Encoding, src: *const c_char, srcLen: c_int, flags: c_int, statePtr: *mut Tcl_EncodingState, dst: *mut c_char, dstLen: c_int, srcReadPtr: *mut c_int, dstWrotePtr: *mut c_int, dstCharsPtr: *mut c_int) -> c_int>,
    pub tcl_ExternalToUtfDString: Option< extern "C" fn(encoding: Tcl_Encoding, src: *const c_char, srcLen: c_int, dsPtr: *mut Tcl_DString) -> *mut c_char>,
    pub tcl_FinalizeThread: Option< extern "C" fn()>,
    pub tcl_FinalizeNotifier: Option< extern "C" fn(clientData: ClientData)>,
    pub tcl_FreeEncoding: Option< extern "C" fn(encoding: Tcl_Encoding)>,
    pub tcl_GetCurrentThread: Option< extern "C" fn() -> Tcl_ThreadId>,
    pub tcl_GetEncoding: Option< extern "C" fn(interp: *mut Tcl_Interp, name: *const c_char) -> Tcl_Encoding>,
    pub tcl_GetEncodingName: Option< extern "C" fn(encoding: Tcl_Encoding) -> *const c_char>,
    pub tcl_GetEncodingNames: Option< extern "C" fn(interp: *mut Tcl_Interp)>,
    pub tcl_GetIndexFromObjStruct: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj, tablePtr: *const c_void, offset: c_int, msg: *const c_char, flags: c_int, indexPtr: *mut c_int) -> c_int>,
    pub tcl_GetThreadData: Option< extern "C" fn(keyPtr: *mut Tcl_ThreadDataKey, size: c_int) -> *mut c_void>,
    pub tcl_GetVar2Ex: Option< extern "C" fn(interp: *mut Tcl_Interp, part1: *const c_char, part2: *const c_char, flags: c_int) -> *mut Tcl_Obj>,
    pub tcl_InitNotifier: Option< extern "C" fn() -> ClientData>,
    pub tcl_MutexLock: Option< extern "C" fn(mutexPtr: *mut Tcl_Mutex)>,
    pub tcl_MutexUnlock: Option< extern "C" fn(mutexPtr: *mut Tcl_Mutex)>,
    pub tcl_ConditionNotify: Option< extern "C" fn(condPtr: *mut Tcl_Condition)>,
    pub tcl_ConditionWait: Option< extern "C" fn(condPtr: *mut Tcl_Condition, mutexPtr: *mut Tcl_Mutex, timePtr: *const Tcl_Time)>,
    pub tcl_NumUtfChars: Option< extern "C" fn(src: *const c_char, length: c_int) -> c_int>,
    pub tcl_ReadChars: Option< extern "C" fn(channel: Tcl_Channel, objPtr: *mut Tcl_Obj, charsToRead: c_int, appendFlag: c_int) -> c_int>,
    pub tcl_RestoreResult: Option< extern "C" fn(interp: *mut Tcl_Interp, statePtr: *mut Tcl_SavedResult)>,
    pub tcl_SaveResult: Option< extern "C" fn(interp: *mut Tcl_Interp, statePtr: *mut Tcl_SavedResult)>,
    pub tcl_SetSystemEncoding: Option< extern "C" fn(interp: *mut Tcl_Interp, name: *const c_char) -> c_int>,
    pub tcl_SetVar2Ex: Option< extern "C" fn(interp: *mut Tcl_Interp, part1: *const c_char, part2: *const c_char, newValuePtr: *mut Tcl_Obj, flags: c_int) -> *mut Tcl_Obj>,
    pub tcl_ThreadAlert: Option< extern "C" fn(threadId: Tcl_ThreadId)>,
    pub tcl_ThreadQueueEvent: Option< extern "C" fn(threadId: Tcl_ThreadId, evPtr: *mut Tcl_Event, position: Tcl_QueuePosition)>,
    pub tcl_UniCharAtIndex: Option< extern "C" fn(src: *const c_char, index: c_int) -> Tcl_UniChar>,
    pub tcl_UniCharToLower: Option< extern "C" fn(ch: c_int) -> Tcl_UniChar>,
    pub tcl_UniCharToTitle: Option< extern "C" fn(ch: c_int) -> Tcl_UniChar>,
    pub tcl_UniCharToUpper: Option< extern "C" fn(ch: c_int) -> Tcl_UniChar>,
    pub tcl_UniCharToUtf: Option< extern "C" fn(ch: c_int, buf: *mut c_char) -> c_int>,
    pub tcl_UtfAtIndex: Option< extern "C" fn(src: *const c_char, index: c_int) -> *const c_char>,
    pub tcl_UtfCharComplete: Option< extern "C" fn(src: *const c_char, length: c_int) -> c_int>,
    pub tcl_UtfBackslash: Option< extern "C" fn(src: *const c_char, readPtr: *mut c_int, dst: *mut c_char) -> c_int>,
    pub tcl_UtfFindFirst: Option< extern "C" fn(src: *const c_char, ch: c_int) -> *const c_char>,
    pub tcl_UtfFindLast: Option< extern "C" fn(src: *const c_char, ch: c_int) -> *const c_char>,
    pub tcl_UtfNext: Option< extern "C" fn(src: *const c_char) -> *const c_char>,
    pub tcl_UtfPrev: Option< extern "C" fn(src: *const c_char, start: *const c_char) -> *const c_char>,
    pub tcl_UtfToExternal: Option< extern "C" fn(interp: *mut Tcl_Interp, encoding: Tcl_Encoding, src: *const c_char, srcLen: c_int, flags: c_int, statePtr: *mut Tcl_EncodingState, dst: *mut c_char, dstLen: c_int, srcReadPtr: *mut c_int, dstWrotePtr: *mut c_int, dstCharsPtr: *mut c_int) -> c_int>,
    pub tcl_UtfToExternalDString: Option< extern "C" fn(encoding: Tcl_Encoding, src: *const c_char, srcLen: c_int, dsPtr: *mut Tcl_DString) -> *mut c_char>,
    pub tcl_UtfToLower: Option< extern "C" fn(src: *mut c_char) -> c_int>,
    pub tcl_UtfToTitle: Option< extern "C" fn(src: *mut c_char) -> c_int>,
    pub tcl_UtfToUniChar: Option< extern "C" fn(src: *const c_char, chPtr: *mut Tcl_UniChar) -> c_int>,
    pub tcl_UtfToUpper: Option< extern "C" fn(src: *mut c_char) -> c_int>,
    pub tcl_WriteChars: Option< extern "C" fn(chan: Tcl_Channel, src: *const c_char, srcLen: c_int) -> c_int>,
    pub tcl_WriteObj: Option< extern "C" fn(chan: Tcl_Channel, objPtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_GetString: Option< extern "C" fn(objPtr: *mut Tcl_Obj) -> *mut c_char>,
    pub tcl_GetDefaultEncodingDir: Option< extern "C" fn() -> *const c_char>,
    pub tcl_SetDefaultEncodingDir: Option< extern "C" fn(path: *const c_char)>,
    pub tcl_AlertNotifier: Option< extern "C" fn(clientData: ClientData)>,
    pub tcl_ServiceModeHook: Option< extern "C" fn(mode: c_int)>,
    pub tcl_UniCharIsAlnum: Option< extern "C" fn(ch: c_int) -> c_int>,
    pub tcl_UniCharIsAlpha: Option< extern "C" fn(ch: c_int) -> c_int>,
    pub tcl_UniCharIsDigit: Option< extern "C" fn(ch: c_int) -> c_int>,
    pub tcl_UniCharIsLower: Option< extern "C" fn(ch: c_int) -> c_int>,
    pub tcl_UniCharIsSpace: Option< extern "C" fn(ch: c_int) -> c_int>,
    pub tcl_UniCharIsUpper: Option< extern "C" fn(ch: c_int) -> c_int>,
    pub tcl_UniCharIsWordChar: Option< extern "C" fn(ch: c_int) -> c_int>,
    pub tcl_UniCharLen: Option< extern "C" fn(uniStr: *const Tcl_UniChar) -> c_int>,
    pub tcl_UniCharNcmp: Option< extern "C" fn(ucs: *const Tcl_UniChar, uct: *const Tcl_UniChar, numChars: c_ulong) -> c_int>,
    pub tcl_UniCharToUtfDString: Option< extern "C" fn(uniStr: *const Tcl_UniChar, uniLength: c_int, dsPtr: *mut Tcl_DString) -> *mut c_char>,
    pub tcl_UtfToUniCharDString: Option< extern "C" fn(src: *const c_char, length: c_int, dsPtr: *mut Tcl_DString) -> *mut Tcl_UniChar>,
    pub tcl_GetRegExpFromObj: Option< extern "C" fn(interp: *mut Tcl_Interp, patObj: *mut Tcl_Obj, flags: c_int) -> Tcl_RegExp>,
    pub tcl_EvalTokens: Option< extern "C" fn(interp: *mut Tcl_Interp, tokenPtr: *mut Tcl_Token, count: c_int) -> *mut Tcl_Obj>,
    pub tcl_FreeParse: Option< extern "C" fn(parsePtr: *mut Tcl_Parse)>,
    pub tcl_LogCommandInfo: Option< extern "C" fn(interp: *mut Tcl_Interp, script: *const c_char, command: *const c_char, length: c_int)>,
    pub tcl_ParseBraces: Option< extern "C" fn(interp: *mut Tcl_Interp, start: *const c_char, numBytes: c_int, parsePtr: *mut Tcl_Parse, append: c_int, termPtr: *mut *const c_char) -> c_int>,
    pub tcl_ParseCommand: Option< extern "C" fn(interp: *mut Tcl_Interp, start: *const c_char, numBytes: c_int, nested: c_int, parsePtr: *mut Tcl_Parse) -> c_int>,
    pub tcl_ParseExpr: Option< extern "C" fn(interp: *mut Tcl_Interp, start: *const c_char, numBytes: c_int, parsePtr: *mut Tcl_Parse) -> c_int>,
    pub tcl_ParseQuotedString: Option< extern "C" fn(interp: *mut Tcl_Interp, start: *const c_char, numBytes: c_int, parsePtr: *mut Tcl_Parse, append: c_int, termPtr: *mut *const c_char) -> c_int>,
    pub tcl_ParseVarName: Option< extern "C" fn(interp: *mut Tcl_Interp, start: *const c_char, numBytes: c_int, parsePtr: *mut Tcl_Parse, append: c_int) -> c_int>,
    pub tcl_GetCwd: Option< extern "C" fn(interp: *mut Tcl_Interp, cwdPtr: *mut Tcl_DString) -> *mut c_char>,
    pub tcl_Chdir: Option< extern "C" fn(dirName: *const c_char) -> c_int>,
    pub tcl_Access: Option< extern "C" fn(path: *const c_char, mode: c_int) -> c_int>,
    pub tcl_Stat: Option< extern "C" fn(path: *const c_char, bufPtr: *mut Struct_stat) -> c_int>,
    pub tcl_UtfNcmp: Option< extern "C" fn(s1: *const c_char, s2: *const c_char, n: c_ulong) -> c_int>,
    pub tcl_UtfNcasecmp: Option< extern "C" fn(s1: *const c_char, s2: *const c_char, n: c_ulong) -> c_int>,
    pub tcl_StringCaseMatch: Option< extern "C" fn(str: *const c_char, pattern: *const c_char, nocase: c_int) -> c_int>,
    pub tcl_UniCharIsControl: Option< extern "C" fn(ch: c_int) -> c_int>,
    pub tcl_UniCharIsGraph: Option< extern "C" fn(ch: c_int) -> c_int>,
    pub tcl_UniCharIsPrint: Option< extern "C" fn(ch: c_int) -> c_int>,
    pub tcl_UniCharIsPunct: Option< extern "C" fn(ch: c_int) -> c_int>,
    pub tcl_RegExpExecObj: Option< extern "C" fn(interp: *mut Tcl_Interp, regexp: Tcl_RegExp, textObj: *mut Tcl_Obj, offset: c_int, nmatches: c_int, flags: c_int) -> c_int>,
    pub tcl_RegExpGetInfo: Option< extern "C" fn(regexp: Tcl_RegExp, infoPtr: *mut Tcl_RegExpInfo)>,
    pub tcl_NewUnicodeObj: Option< extern "C" fn(unicode: *const Tcl_UniChar, numChars: c_int) -> *mut Tcl_Obj>,
    pub tcl_SetUnicodeObj: Option< extern "C" fn(objPtr: *mut Tcl_Obj, unicode: *const Tcl_UniChar, numChars: c_int)>,
    pub tcl_GetCharLength: Option< extern "C" fn(objPtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_GetUniChar: Option< extern "C" fn(objPtr: *mut Tcl_Obj, index: c_int) -> Tcl_UniChar>,
    pub tcl_GetUnicode: Option< extern "C" fn(objPtr: *mut Tcl_Obj) -> *mut Tcl_UniChar>,
    pub tcl_GetRange: Option< extern "C" fn(objPtr: *mut Tcl_Obj, first: c_int, last: c_int) -> *mut Tcl_Obj>,
    pub tcl_AppendUnicodeToObj: Option< extern "C" fn(objPtr: *mut Tcl_Obj, unicode: *const Tcl_UniChar, length: c_int)>,
    pub tcl_RegExpMatchObj: Option< extern "C" fn(interp: *mut Tcl_Interp, textObj: *mut Tcl_Obj, patternObj: *mut Tcl_Obj) -> c_int>,
    pub tcl_SetNotifier: Option< extern "C" fn(notifierProcPtr: *mut Tcl_NotifierProcs)>,
    pub tcl_GetAllocMutex: Option< extern "C" fn() -> *mut Tcl_Mutex>,
    pub tcl_GetChannelNames: Option< extern "C" fn(interp: *mut Tcl_Interp) -> c_int>,
    pub tcl_GetChannelNamesEx: Option< extern "C" fn(interp: *mut Tcl_Interp, pattern: *const c_char) -> c_int>,
    pub tcl_ProcObjCmd: Option< extern "C" fn(clientData: ClientData, interp: *mut Tcl_Interp, objc: c_int, objv: *const *mut Tcl_Obj) -> c_int>,
    pub tcl_ConditionFinalize: Option< extern "C" fn(condPtr: *mut Tcl_Condition)>,
    pub tcl_MutexFinalize: Option< extern "C" fn(mutex: *mut Tcl_Mutex)>,
    pub tcl_CreateThread: Option< extern "C" fn(idPtr: *mut Tcl_ThreadId, _proc: *mut Tcl_ThreadCreateProc, clientData: ClientData, stackSize: c_int, flags: c_int) -> c_int>,
    pub tcl_ReadRaw: Option< extern "C" fn(chan: Tcl_Channel, dst: *mut c_char, bytesToRead: c_int) -> c_int>,
    pub tcl_WriteRaw: Option< extern "C" fn(chan: Tcl_Channel, src: *const c_char, srcLen: c_int) -> c_int>,
    pub tcl_GetTopChannel: Option< extern "C" fn(chan: Tcl_Channel) -> Tcl_Channel>,
    pub tcl_ChannelBuffered: Option< extern "C" fn(chan: Tcl_Channel) -> c_int>,
    pub tcl_ChannelName: Option< extern "C" fn(chanTypePtr: *const Tcl_ChannelType) -> *const c_char>,
    pub tcl_ChannelVersion: Option< extern "C" fn(chanTypePtr: *const Tcl_ChannelType) -> Tcl_ChannelTypeVersion>,
    pub tcl_ChannelBlockModeProc: Option< extern "C" fn(chanTypePtr: *const Tcl_ChannelType) -> *mut Tcl_DriverBlockModeProc>,
    pub tcl_ChannelCloseProc: Option< extern "C" fn(chanTypePtr: *const Tcl_ChannelType) -> *mut Tcl_DriverCloseProc>,
    pub tcl_ChannelClose2Proc: Option< extern "C" fn(chanTypePtr: *const Tcl_ChannelType) -> *mut Tcl_DriverClose2Proc>,
    pub tcl_ChannelInputProc: Option< extern "C" fn(chanTypePtr: *const Tcl_ChannelType) -> *mut Tcl_DriverInputProc>,
    pub tcl_ChannelOutputProc: Option< extern "C" fn(chanTypePtr: *const Tcl_ChannelType) -> *mut Tcl_DriverOutputProc>,
    pub tcl_ChannelSeekProc: Option< extern "C" fn(chanTypePtr: *const Tcl_ChannelType) -> *mut Tcl_DriverSeekProc>,
    pub tcl_ChannelSetOptionProc: Option< extern "C" fn(chanTypePtr: *const Tcl_ChannelType) -> *mut Tcl_DriverSetOptionProc>,
    pub tcl_ChannelGetOptionProc: Option< extern "C" fn(chanTypePtr: *const Tcl_ChannelType) -> *mut Tcl_DriverGetOptionProc>,
    pub tcl_ChannelWatchProc: Option< extern "C" fn(chanTypePtr: *const Tcl_ChannelType) -> *mut Tcl_DriverWatchProc>,
    pub tcl_ChannelGetHandleProc: Option< extern "C" fn(chanTypePtr: *const Tcl_ChannelType) -> *mut Tcl_DriverGetHandleProc>,
    pub tcl_ChannelFlushProc: Option< extern "C" fn(chanTypePtr: *const Tcl_ChannelType) -> *mut Tcl_DriverFlushProc>,
    pub tcl_ChannelHandlerProc: Option< extern "C" fn(chanTypePtr: *const Tcl_ChannelType) -> *mut Tcl_DriverHandlerProc>,
    pub tcl_JoinThread: Option< extern "C" fn(threadId: Tcl_ThreadId, result: *mut c_int) -> c_int>,
    pub tcl_IsChannelShared: Option< extern "C" fn(channel: Tcl_Channel) -> c_int>,
    pub tcl_IsChannelRegistered: Option< extern "C" fn(interp: *mut Tcl_Interp, channel: Tcl_Channel) -> c_int>,
    pub tcl_CutChannel: Option< extern "C" fn(channel: Tcl_Channel)>,
    pub tcl_SpliceChannel: Option< extern "C" fn(channel: Tcl_Channel)>,
    pub tcl_ClearChannelHandlers: Option< extern "C" fn(channel: Tcl_Channel)>,
    pub tcl_IsChannelExisting: Option< extern "C" fn(channelName: *const c_char) -> c_int>,
    pub tcl_UniCharNcasecmp: Option< extern "C" fn(ucs: *const Tcl_UniChar, uct: *const Tcl_UniChar, numChars: c_ulong) -> c_int>,
    pub tcl_UniCharCaseMatch: Option< extern "C" fn(uniStr: *const Tcl_UniChar, uniPattern: *const Tcl_UniChar, nocase: c_int) -> c_int>,
    pub tcl_FindHashEntry: Option< extern "C" fn(tablePtr: *mut Tcl_HashTable, key: *const c_void) -> *mut Tcl_HashEntry>,
    pub tcl_CreateHashEntry: Option< extern "C" fn(tablePtr: *mut Tcl_HashTable, key: *const c_void, newPtr: *mut c_int) -> *mut Tcl_HashEntry>,
    pub tcl_InitCustomHashTable: Option< extern "C" fn(tablePtr: *mut Tcl_HashTable, keyType: c_int, typePtr: *const Tcl_HashKeyType)>,
    pub tcl_InitObjHashTable: Option< extern "C" fn(tablePtr: *mut Tcl_HashTable)>,
    pub tcl_CommandTraceInfo: Option< extern "C" fn(interp: *mut Tcl_Interp, varName: *const c_char, flags: c_int, procPtr: *mut Tcl_CommandTraceProc, prevClientData: ClientData) -> ClientData>,
    pub tcl_TraceCommand: Option< extern "C" fn(interp: *mut Tcl_Interp, varName: *const c_char, flags: c_int, _proc: *mut Tcl_CommandTraceProc, clientData: ClientData) -> c_int>,
    pub tcl_UntraceCommand: Option< extern "C" fn(interp: *mut Tcl_Interp, varName: *const c_char, flags: c_int, _proc: *mut Tcl_CommandTraceProc, clientData: ClientData)>,
    pub tcl_AttemptAlloc: Option< extern "C" fn(size: c_uint) -> *mut c_char>,
    pub tcl_AttemptDbCkalloc: Option< extern "C" fn(size: c_uint, file: *const c_char, line: c_int) -> *mut c_char>,
    pub tcl_AttemptRealloc: Option< extern "C" fn(ptr: *mut c_char, size: c_uint) -> *mut c_char>,
    pub tcl_AttemptDbCkrealloc: Option< extern "C" fn(ptr: *mut c_char, size: c_uint, file: *const c_char, line: c_int) -> *mut c_char>,
    pub tcl_AttemptSetObjLength: Option< extern "C" fn(objPtr: *mut Tcl_Obj, length: c_int) -> c_int>,
    pub tcl_GetChannelThread: Option< extern "C" fn(channel: Tcl_Channel) -> Tcl_ThreadId>,
    pub tcl_GetUnicodeFromObj: Option< extern "C" fn(objPtr: *mut Tcl_Obj, lengthPtr: *mut c_int) -> *mut Tcl_UniChar>,
    pub tcl_GetMathFuncInfo: Option< extern "C" fn(interp: *mut Tcl_Interp, name: *const c_char, numArgsPtr: *mut c_int, argTypesPtr: *mut *mut Tcl_ValueType, procPtr: *mut *mut Tcl_MathProc, clientDataPtr: *mut ClientData) -> c_int>,
    pub tcl_ListMathFuncs: Option< extern "C" fn(interp: *mut Tcl_Interp, pattern: *const c_char) -> *mut Tcl_Obj>,
    pub tcl_SubstObj: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj, flags: c_int) -> *mut Tcl_Obj>,
    pub tcl_DetachChannel: Option< extern "C" fn(interp: *mut Tcl_Interp, channel: Tcl_Channel) -> c_int>,
    pub tcl_IsStandardChannel: Option< extern "C" fn(channel: Tcl_Channel) -> c_int>,
    pub tcl_FSCopyFile: Option< extern "C" fn(srcPathPtr: *mut Tcl_Obj, destPathPtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_FSCopyDirectory: Option< extern "C" fn(srcPathPtr: *mut Tcl_Obj, destPathPtr: *mut Tcl_Obj, errorPtr: *mut *mut Tcl_Obj) -> c_int>,
    pub tcl_FSCreateDirectory: Option< extern "C" fn(pathPtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_FSDeleteFile: Option< extern "C" fn(pathPtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_FSLoadFile: Option< extern "C" fn(interp: *mut Tcl_Interp, pathPtr: *mut Tcl_Obj, sym1: *const c_char, sym2: *const c_char, proc1Ptr: *mut *mut Tcl_PackageInitProc, proc2Ptr: *mut *mut Tcl_PackageInitProc, handlePtr: *mut Tcl_LoadHandle, unloadProcPtr: *mut *mut Tcl_FSUnloadFileProc) -> c_int>,
    pub tcl_FSMatchInDirectory: Option< extern "C" fn(interp: *mut Tcl_Interp, result: *mut Tcl_Obj, pathPtr: *mut Tcl_Obj, pattern: *const c_char, types: *mut Tcl_GlobTypeData) -> c_int>,
    pub tcl_FSLink: Option< extern "C" fn(pathPtr: *mut Tcl_Obj, toPtr: *mut Tcl_Obj, linkAction: c_int) -> *mut Tcl_Obj>,
    pub tcl_FSRemoveDirectory: Option< extern "C" fn(pathPtr: *mut Tcl_Obj, recursive: c_int, errorPtr: *mut *mut Tcl_Obj) -> c_int>,
    pub tcl_FSRenameFile: Option< extern "C" fn(srcPathPtr: *mut Tcl_Obj, destPathPtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_FSLstat: Option< extern "C" fn(pathPtr: *mut Tcl_Obj, buf: *mut Tcl_StatBuf) -> c_int>,
    pub tcl_FSUtime: Option< extern "C" fn(pathPtr: *mut Tcl_Obj, tval: *mut Struct_utimbuf) -> c_int>,
    pub tcl_FSFileAttrsGet: Option< extern "C" fn(interp: *mut Tcl_Interp, index: c_int, pathPtr: *mut Tcl_Obj, objPtrRef: *mut *mut Tcl_Obj) -> c_int>,
    pub tcl_FSFileAttrsSet: Option< extern "C" fn(interp: *mut Tcl_Interp, index: c_int, pathPtr: *mut Tcl_Obj, objPtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_FSFileAttrStrings: Option< extern "C" fn(pathPtr: *mut Tcl_Obj, objPtrRef: *mut *mut Tcl_Obj) -> *const *const c_char>,
    pub tcl_FSStat: Option< extern "C" fn(pathPtr: *mut Tcl_Obj, buf: *mut Tcl_StatBuf) -> c_int>,
    pub tcl_FSAccess: Option< extern "C" fn(pathPtr: *mut Tcl_Obj, mode: c_int) -> c_int>,
    pub tcl_FSOpenFileChannel: Option< extern "C" fn(interp: *mut Tcl_Interp, pathPtr: *mut Tcl_Obj, modeString: *const c_char, permissions: c_int) -> Tcl_Channel>,
    pub tcl_FSGetCwd: Option< extern "C" fn(interp: *mut Tcl_Interp) -> *mut Tcl_Obj>,
    pub tcl_FSChdir: Option< extern "C" fn(pathPtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_FSConvertToPathType: Option< extern "C" fn(interp: *mut Tcl_Interp, pathPtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_FSJoinPath: Option< extern "C" fn(listObj: *mut Tcl_Obj, elements: c_int) -> *mut Tcl_Obj>,
    pub tcl_FSSplitPath: Option< extern "C" fn(pathPtr: *mut Tcl_Obj, lenPtr: *mut c_int) -> *mut Tcl_Obj>,
    pub tcl_FSEqualPaths: Option< extern "C" fn(firstPtr: *mut Tcl_Obj, secondPtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_FSGetNormalizedPath: Option< extern "C" fn(interp: *mut Tcl_Interp, pathPtr: *mut Tcl_Obj) -> *mut Tcl_Obj>,
    pub tcl_FSJoinToPath: Option< extern "C" fn(pathPtr: *mut Tcl_Obj, objc: c_int, objv: *const *mut Tcl_Obj) -> *mut Tcl_Obj>,
    pub tcl_FSGetInternalRep: Option< extern "C" fn(pathPtr: *mut Tcl_Obj, fsPtr: *const Tcl_Filesystem) -> ClientData>,
    pub tcl_FSGetTranslatedPath: Option< extern "C" fn(interp: *mut Tcl_Interp, pathPtr: *mut Tcl_Obj) -> *mut Tcl_Obj>,
    pub tcl_FSEvalFile: Option< extern "C" fn(interp: *mut Tcl_Interp, fileName: *mut Tcl_Obj) -> c_int>,
    pub tcl_FSNewNativePath: Option< extern "C" fn(fromFilesystem: *const Tcl_Filesystem, clientData: ClientData) -> *mut Tcl_Obj>,
    pub tcl_FSGetNativePath: Option< extern "C" fn(pathPtr: *mut Tcl_Obj) -> *const c_void>,
    pub tcl_FSFileSystemInfo: Option< extern "C" fn(pathPtr: *mut Tcl_Obj) -> *mut Tcl_Obj>,
    pub tcl_FSPathSeparator: Option< extern "C" fn(pathPtr: *mut Tcl_Obj) -> *mut Tcl_Obj>,
    pub tcl_FSListVolumes: Option< extern "C" fn() -> *mut Tcl_Obj>,
    pub tcl_FSRegister: Option< extern "C" fn(clientData: ClientData, fsPtr: *const Tcl_Filesystem) -> c_int>,
    pub tcl_FSUnregister: Option< extern "C" fn(fsPtr: *const Tcl_Filesystem) -> c_int>,
    pub tcl_FSData: Option< extern "C" fn(fsPtr: *const Tcl_Filesystem) -> ClientData>,
    pub tcl_FSGetTranslatedStringPath: Option< extern "C" fn(interp: *mut Tcl_Interp, pathPtr: *mut Tcl_Obj) -> *const c_char>,
    pub tcl_FSGetFileSystemForPath: Option< extern "C" fn(pathPtr: *mut Tcl_Obj) -> *const Tcl_Filesystem>,
    pub tcl_FSGetPathType: Option< extern "C" fn(pathPtr: *mut Tcl_Obj) -> Tcl_PathType>,
    pub tcl_OutputBuffered: Option< extern "C" fn(chan: Tcl_Channel) -> c_int>,
    pub tcl_FSMountsChanged: Option< extern "C" fn(fsPtr: *const Tcl_Filesystem)>,
    pub tcl_EvalTokensStandard: Option< extern "C" fn(interp: *mut Tcl_Interp, tokenPtr: *mut Tcl_Token, count: c_int) -> c_int>,
    pub tcl_GetTime: Option< extern "C" fn(timeBuf: *mut Tcl_Time)>,
    pub tcl_CreateObjTrace: Option< extern "C" fn(interp: *mut Tcl_Interp, level: c_int, flags: c_int, objProc: *mut Tcl_CmdObjTraceProc, clientData: ClientData, delProc: *mut Tcl_CmdObjTraceDeleteProc) -> Tcl_Trace>,
    pub tcl_GetCommandInfoFromToken: Option< extern "C" fn(token: Tcl_Command, infoPtr: *mut Tcl_CmdInfo) -> c_int>,
    pub tcl_SetCommandInfoFromToken: Option< extern "C" fn(token: Tcl_Command, infoPtr: *const Tcl_CmdInfo) -> c_int>,
    pub tcl_DbNewWideIntObj: Option< extern "C" fn(wideValue: Tcl_WideInt, file: *const c_char, line: c_int) -> *mut Tcl_Obj>,
    pub tcl_GetWideIntFromObj: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj, widePtr: *mut Tcl_WideInt) -> c_int>,
    pub tcl_NewWideIntObj: Option< extern "C" fn(wideValue: Tcl_WideInt) -> *mut Tcl_Obj>,
    pub tcl_SetWideIntObj: Option< extern "C" fn(objPtr: *mut Tcl_Obj, wideValue: Tcl_WideInt)>,
    pub tcl_AllocStatBuf: Option< extern "C" fn() -> *mut Tcl_StatBuf>,
    pub tcl_Seek: Option< extern "C" fn(chan: Tcl_Channel, offset: Tcl_WideInt, mode: c_int) -> Tcl_WideInt>,
    pub tcl_Tell: Option< extern "C" fn(chan: Tcl_Channel) -> Tcl_WideInt>,
    pub tcl_ChannelWideSeekProc: Option< extern "C" fn(chanTypePtr: *const Tcl_ChannelType) -> *mut Tcl_DriverWideSeekProc>,
    pub tcl_DictObjPut: Option< extern "C" fn(interp: *mut Tcl_Interp, dictPtr: *mut Tcl_Obj, keyPtr: *mut Tcl_Obj, valuePtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_DictObjGet: Option< extern "C" fn(interp: *mut Tcl_Interp, dictPtr: *mut Tcl_Obj, keyPtr: *mut Tcl_Obj, valuePtrPtr: *mut *mut Tcl_Obj) -> c_int>,
    pub tcl_DictObjRemove: Option< extern "C" fn(interp: *mut Tcl_Interp, dictPtr: *mut Tcl_Obj, keyPtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_DictObjSize: Option< extern "C" fn(interp: *mut Tcl_Interp, dictPtr: *mut Tcl_Obj, sizePtr: *mut c_int) -> c_int>,
    pub tcl_DictObjFirst: Option< extern "C" fn(interp: *mut Tcl_Interp, dictPtr: *mut Tcl_Obj, searchPtr: *mut Tcl_DictSearch, keyPtrPtr: *mut *mut Tcl_Obj, valuePtrPtr: *mut *mut Tcl_Obj, donePtr: *mut c_int) -> c_int>,
    pub tcl_DictObjNext: Option< extern "C" fn(searchPtr: *mut Tcl_DictSearch, keyPtrPtr: *mut *mut Tcl_Obj, valuePtrPtr: *mut *mut Tcl_Obj, donePtr: *mut c_int)>,
    pub tcl_DictObjDone: Option< extern "C" fn(searchPtr: *mut Tcl_DictSearch)>,
    pub tcl_DictObjPutKeyList: Option< extern "C" fn(interp: *mut Tcl_Interp, dictPtr: *mut Tcl_Obj, keyc: c_int, keyv: *const *mut Tcl_Obj, valuePtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_DictObjRemoveKeyList: Option< extern "C" fn(interp: *mut Tcl_Interp, dictPtr: *mut Tcl_Obj, keyc: c_int, keyv: *const *mut Tcl_Obj) -> c_int>,
    pub tcl_NewDictObj: Option< extern "C" fn() -> *mut Tcl_Obj>,
    pub tcl_DbNewDictObj: Option< extern "C" fn(file: *const c_char, line: c_int) -> *mut Tcl_Obj>,
    pub tcl_RegisterConfig: Option< extern "C" fn(interp: *mut Tcl_Interp, pkgName: *const c_char, configuration: *const Tcl_Config, valEncoding: *const c_char)>,
    pub tcl_CreateNamespace: Option< extern "C" fn(interp: *mut Tcl_Interp, name: *const c_char, clientData: ClientData, deleteProc: *mut Tcl_NamespaceDeleteProc) -> *mut Tcl_Namespace>,
    pub tcl_DeleteNamespace: Option< extern "C" fn(nsPtr: *mut Tcl_Namespace)>,
    pub tcl_AppendExportList: Option< extern "C" fn(interp: *mut Tcl_Interp, nsPtr: *mut Tcl_Namespace, objPtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_Export: Option< extern "C" fn(interp: *mut Tcl_Interp, nsPtr: *mut Tcl_Namespace, pattern: *const c_char, resetListFirst: c_int) -> c_int>,
    pub tcl_Import: Option< extern "C" fn(interp: *mut Tcl_Interp, nsPtr: *mut Tcl_Namespace, pattern: *const c_char, allowOverwrite: c_int) -> c_int>,
    pub tcl_ForgetImport: Option< extern "C" fn(interp: *mut Tcl_Interp, nsPtr: *mut Tcl_Namespace, pattern: *const c_char) -> c_int>,
    pub tcl_GetCurrentNamespace: Option< extern "C" fn(interp: *mut Tcl_Interp) -> *mut Tcl_Namespace>,
    pub tcl_GetGlobalNamespace: Option< extern "C" fn(interp: *mut Tcl_Interp) -> *mut Tcl_Namespace>,
    pub tcl_FindNamespace: Option< extern "C" fn(interp: *mut Tcl_Interp, name: *const c_char, contextNsPtr: *mut Tcl_Namespace, flags: c_int) -> *mut Tcl_Namespace>,
    pub tcl_FindCommand: Option< extern "C" fn(interp: *mut Tcl_Interp, name: *const c_char, contextNsPtr: *mut Tcl_Namespace, flags: c_int) -> Tcl_Command>,
    pub tcl_GetCommandFromObj: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj) -> Tcl_Command>,
    pub tcl_GetCommandFullName: Option< extern "C" fn(interp: *mut Tcl_Interp, command: Tcl_Command, objPtr: *mut Tcl_Obj)>,
    pub tcl_FSEvalFileEx: Option< extern "C" fn(interp: *mut Tcl_Interp, fileName: *mut Tcl_Obj, encodingName: *const c_char) -> c_int>,
    pub tcl_SetExitProc: Option< extern "C" fn(_proc: *mut Tcl_ExitProc) -> *mut Tcl_ExitProc>,
    pub tcl_LimitAddHandler: Option< extern "C" fn(interp: *mut Tcl_Interp, _type: c_int, handlerProc: *mut Tcl_LimitHandlerProc, clientData: ClientData, deleteProc: *mut Tcl_LimitHandlerDeleteProc)>,
    pub tcl_LimitRemoveHandler: Option< extern "C" fn(interp: *mut Tcl_Interp, _type: c_int, handlerProc: *mut Tcl_LimitHandlerProc, clientData: ClientData)>,
    pub tcl_LimitReady: Option< extern "C" fn(interp: *mut Tcl_Interp) -> c_int>,
    pub tcl_LimitCheck: Option< extern "C" fn(interp: *mut Tcl_Interp) -> c_int>,
    pub tcl_LimitExceeded: Option< extern "C" fn(interp: *mut Tcl_Interp) -> c_int>,
    pub tcl_LimitSetCommands: Option< extern "C" fn(interp: *mut Tcl_Interp, commandLimit: c_int)>,
    pub tcl_LimitSetTime: Option< extern "C" fn(interp: *mut Tcl_Interp, timeLimitPtr: *mut Tcl_Time)>,
    pub tcl_LimitSetGranularity: Option< extern "C" fn(interp: *mut Tcl_Interp, _type: c_int, granularity: c_int)>,
    pub tcl_LimitTypeEnabled: Option< extern "C" fn(interp: *mut Tcl_Interp, _type: c_int) -> c_int>,
    pub tcl_LimitTypeExceeded: Option< extern "C" fn(interp: *mut Tcl_Interp, _type: c_int) -> c_int>,
    pub tcl_LimitTypeSet: Option< extern "C" fn(interp: *mut Tcl_Interp, _type: c_int)>,
    pub tcl_LimitTypeReset: Option< extern "C" fn(interp: *mut Tcl_Interp, _type: c_int)>,
    pub tcl_LimitGetCommands: Option< extern "C" fn(interp: *mut Tcl_Interp) -> c_int>,
    pub tcl_LimitGetTime: Option< extern "C" fn(interp: *mut Tcl_Interp, timeLimitPtr: *mut Tcl_Time)>,
    pub tcl_LimitGetGranularity: Option< extern "C" fn(interp: *mut Tcl_Interp, _type: c_int) -> c_int>,
    pub tcl_SaveInterpState: Option< extern "C" fn(interp: *mut Tcl_Interp, status: c_int) -> Tcl_InterpState>,
    pub tcl_RestoreInterpState: Option< extern "C" fn(interp: *mut Tcl_Interp, state: Tcl_InterpState) -> c_int>,
    pub tcl_DiscardInterpState: Option< extern "C" fn(state: Tcl_InterpState)>,
    pub tcl_SetReturnOptions: Option< extern "C" fn(interp: *mut Tcl_Interp, options: *mut Tcl_Obj) -> c_int>,
    pub tcl_GetReturnOptions: Option< extern "C" fn(interp: *mut Tcl_Interp, result: c_int) -> *mut Tcl_Obj>,
    pub tcl_IsEnsemble: Option< extern "C" fn(token: Tcl_Command) -> c_int>,
    pub tcl_CreateEnsemble: Option< extern "C" fn(interp: *mut Tcl_Interp, name: *const c_char, namespacePtr: *mut Tcl_Namespace, flags: c_int) -> Tcl_Command>,
    pub tcl_FindEnsemble: Option< extern "C" fn(interp: *mut Tcl_Interp, cmdNameObj: *mut Tcl_Obj, flags: c_int) -> Tcl_Command>,
    pub tcl_SetEnsembleSubcommandList: Option< extern "C" fn(interp: *mut Tcl_Interp, token: Tcl_Command, subcmdList: *mut Tcl_Obj) -> c_int>,
    pub tcl_SetEnsembleMappingDict: Option< extern "C" fn(interp: *mut Tcl_Interp, token: Tcl_Command, mapDict: *mut Tcl_Obj) -> c_int>,
    pub tcl_SetEnsembleUnknownHandler: Option< extern "C" fn(interp: *mut Tcl_Interp, token: Tcl_Command, unknownList: *mut Tcl_Obj) -> c_int>,
    pub tcl_SetEnsembleFlags: Option< extern "C" fn(interp: *mut Tcl_Interp, token: Tcl_Command, flags: c_int) -> c_int>,
    pub tcl_GetEnsembleSubcommandList: Option< extern "C" fn(interp: *mut Tcl_Interp, token: Tcl_Command, subcmdListPtr: *mut *mut Tcl_Obj) -> c_int>,
    pub tcl_GetEnsembleMappingDict: Option< extern "C" fn(interp: *mut Tcl_Interp, token: Tcl_Command, mapDictPtr: *mut *mut Tcl_Obj) -> c_int>,
    pub tcl_GetEnsembleUnknownHandler: Option< extern "C" fn(interp: *mut Tcl_Interp, token: Tcl_Command, unknownListPtr: *mut *mut Tcl_Obj) -> c_int>,
    pub tcl_GetEnsembleFlags: Option< extern "C" fn(interp: *mut Tcl_Interp, token: Tcl_Command, flagsPtr: *mut c_int) -> c_int>,
    pub tcl_GetEnsembleNamespace: Option< extern "C" fn(interp: *mut Tcl_Interp, token: Tcl_Command, namespacePtrPtr: *mut *mut Tcl_Namespace) -> c_int>,
    pub tcl_SetTimeProc: Option< extern "C" fn(getProc: *mut Tcl_GetTimeProc, scaleProc: *mut Tcl_ScaleTimeProc, clientData: ClientData)>,
    pub tcl_QueryTimeProc: Option< extern "C" fn(getProc: *mut *mut Tcl_GetTimeProc, scaleProc: *mut *mut Tcl_ScaleTimeProc, clientData: *mut ClientData)>,
    pub tcl_ChannelThreadActionProc: Option< extern "C" fn(chanTypePtr: *const Tcl_ChannelType) -> *mut Tcl_DriverThreadActionProc>,
    pub tcl_NewBignumObj: Option< extern "C" fn(value: *mut mp_int) -> *mut Tcl_Obj>,
    pub tcl_DbNewBignumObj: Option< extern "C" fn(value: *mut mp_int, file: *const c_char, line: c_int) -> *mut Tcl_Obj>,
    pub tcl_SetBignumObj: Option< extern "C" fn(obj: *mut Tcl_Obj, value: *mut mp_int)>,
    pub tcl_GetBignumFromObj: Option< extern "C" fn(interp: *mut Tcl_Interp, obj: *mut Tcl_Obj, value: *mut mp_int) -> c_int>,
    pub tcl_TakeBignumFromObj: Option< extern "C" fn(interp: *mut Tcl_Interp, obj: *mut Tcl_Obj, value: *mut mp_int) -> c_int>,
    pub tcl_TruncateChannel: Option< extern "C" fn(chan: Tcl_Channel, length: Tcl_WideInt) -> c_int>,
    pub tcl_ChannelTruncateProc: Option< extern "C" fn(chanTypePtr: *const Tcl_ChannelType) -> *mut Tcl_DriverTruncateProc>,
    pub tcl_SetChannelErrorInterp: Option< extern "C" fn(interp: *mut Tcl_Interp, msg: *mut Tcl_Obj)>,
    pub tcl_GetChannelErrorInterp: Option< extern "C" fn(interp: *mut Tcl_Interp, msg: *mut *mut Tcl_Obj)>,
    pub tcl_SetChannelError: Option< extern "C" fn(chan: Tcl_Channel, msg: *mut Tcl_Obj)>,
    pub tcl_GetChannelError: Option< extern "C" fn(chan: Tcl_Channel, msg: *mut *mut Tcl_Obj)>,
    pub tcl_InitBignumFromDouble: Option< extern "C" fn(interp: *mut Tcl_Interp, initval: c_double, toInit: *mut mp_int) -> c_int>,
    pub tcl_GetNamespaceUnknownHandler: Option< extern "C" fn(interp: *mut Tcl_Interp, nsPtr: *mut Tcl_Namespace) -> *mut Tcl_Obj>,
    pub tcl_SetNamespaceUnknownHandler: Option< extern "C" fn(interp: *mut Tcl_Interp, nsPtr: *mut Tcl_Namespace, handlerPtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_GetEncodingFromObj: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj, encodingPtr: *mut Tcl_Encoding) -> c_int>,
    pub tcl_GetEncodingSearchPath: Option< extern "C" fn() -> *mut Tcl_Obj>,
    pub tcl_SetEncodingSearchPath: Option< extern "C" fn(searchPath: *mut Tcl_Obj) -> c_int>,
    pub tcl_GetEncodingNameFromEnvironment: Option< extern "C" fn(bufPtr: *mut Tcl_DString) -> *const c_char>,
    pub tcl_PkgRequireProc: Option< extern "C" fn(interp: *mut Tcl_Interp, name: *const c_char, objc: c_int, objv: *const *mut Tcl_Obj, clientDataPtr: *mut c_void) -> c_int>,
    pub tcl_AppendObjToErrorInfo: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj)>,
    pub tcl_AppendLimitedToObj: Option< extern "C" fn(objPtr: *mut Tcl_Obj, bytes: *const c_char, length: c_int, limit: c_int, ellipsis: *const c_char)>,
    pub tcl_Format: Option< extern "C" fn(interp: *mut Tcl_Interp, format: *const c_char, objc: c_int, objv: *const *mut Tcl_Obj) -> *mut Tcl_Obj>,
    pub tcl_AppendFormatToObj: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj, format: *const c_char, objc: c_int, objv: *const *mut Tcl_Obj) -> c_int>,
    pub tcl_ObjPrintf: Option< extern "C" fn(format: *const c_char) -> *mut Tcl_Obj>,
    pub tcl_AppendPrintfToObj: Option< extern "C" fn(objPtr: *mut Tcl_Obj, format: *const c_char)>,
    pub tcl_CancelEval: Option< extern "C" fn(interp: *mut Tcl_Interp, resultObjPtr: *mut Tcl_Obj, clientData: ClientData, flags: c_int) -> c_int>,
    pub tcl_Canceled: Option< extern "C" fn(interp: *mut Tcl_Interp, flags: c_int) -> c_int>,
    pub tcl_CreatePipe: Option< extern "C" fn(interp: *mut Tcl_Interp, rchan: *mut Tcl_Channel, wchan: *mut Tcl_Channel, flags: c_int) -> c_int>,
    pub tcl_NRCreateCommand: Option< extern "C" fn(interp: *mut Tcl_Interp, cmdName: *const c_char, _proc: *mut Tcl_ObjCmdProc, nreProc: *mut Tcl_ObjCmdProc, clientData: ClientData, deleteProc: *mut Tcl_CmdDeleteProc) -> Tcl_Command>,
    pub tcl_NREvalObj: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj, flags: c_int) -> c_int>,
    pub tcl_NREvalObjv: Option< extern "C" fn(interp: *mut Tcl_Interp, objc: c_int, objv: *const *mut Tcl_Obj, flags: c_int) -> c_int>,
    pub tcl_NRCmdSwap: Option< extern "C" fn(interp: *mut Tcl_Interp, cmd: Tcl_Command, objc: c_int, objv: *const *mut Tcl_Obj, flags: c_int) -> c_int>,
    pub tcl_NRAddCallback: Option< extern "C" fn(interp: *mut Tcl_Interp, postProcPtr: *mut Tcl_NRPostProc, data0: ClientData, data1: ClientData, data2: ClientData, data3: ClientData)>,
    pub tcl_NRCallObjProc: Option< extern "C" fn(interp: *mut Tcl_Interp, objProc: *mut Tcl_ObjCmdProc, clientData: ClientData, objc: c_int, objv: *const *mut Tcl_Obj) -> c_int>,
    pub tcl_GetFSDeviceFromStat: Option< extern "C" fn(statPtr: *const Tcl_StatBuf) -> c_uint>,
    pub tcl_GetFSInodeFromStat: Option< extern "C" fn(statPtr: *const Tcl_StatBuf) -> c_uint>,
    pub tcl_GetModeFromStat: Option< extern "C" fn(statPtr: *const Tcl_StatBuf) -> c_uint>,
    pub tcl_GetLinkCountFromStat: Option< extern "C" fn(statPtr: *const Tcl_StatBuf) -> c_int>,
    pub tcl_GetUserIdFromStat: Option< extern "C" fn(statPtr: *const Tcl_StatBuf) -> c_int>,
    pub tcl_GetGroupIdFromStat: Option< extern "C" fn(statPtr: *const Tcl_StatBuf) -> c_int>,
    pub tcl_GetDeviceTypeFromStat: Option< extern "C" fn(statPtr: *const Tcl_StatBuf) -> c_int>,
    pub tcl_GetAccessTimeFromStat: Option< extern "C" fn(statPtr: *const Tcl_StatBuf) -> Tcl_WideInt>,
    pub tcl_GetModificationTimeFromStat: Option< extern "C" fn(statPtr: *const Tcl_StatBuf) -> Tcl_WideInt>,
    pub tcl_GetChangeTimeFromStat: Option< extern "C" fn(statPtr: *const Tcl_StatBuf) -> Tcl_WideInt>,
    pub tcl_GetSizeFromStat: Option< extern "C" fn(statPtr: *const Tcl_StatBuf) -> Tcl_WideUInt>,
    pub tcl_GetBlocksFromStat: Option< extern "C" fn(statPtr: *const Tcl_StatBuf) -> Tcl_WideUInt>,
    pub tcl_GetBlockSizeFromStat: Option< extern "C" fn(statPtr: *const Tcl_StatBuf) -> c_uint>,
    pub tcl_SetEnsembleParameterList: Option< extern "C" fn(interp: *mut Tcl_Interp, token: Tcl_Command, paramList: *mut Tcl_Obj) -> c_int>,
    pub tcl_GetEnsembleParameterList: Option< extern "C" fn(interp: *mut Tcl_Interp, token: Tcl_Command, paramListPtr: *mut *mut Tcl_Obj) -> c_int>,
    pub tcl_ParseArgsObjv: Option< extern "C" fn(interp: *mut Tcl_Interp, argTable: *const Tcl_ArgvInfo, objcPtr: *mut c_int, objv: *const *mut Tcl_Obj, remObjv: *mut *mut *mut Tcl_Obj) -> c_int>,
    pub tcl_GetErrorLine: Option< extern "C" fn(interp: *mut Tcl_Interp) -> c_int>,
    pub tcl_SetErrorLine: Option< extern "C" fn(interp: *mut Tcl_Interp, lineNum: c_int)>,
    pub tcl_TransferResult: Option< extern "C" fn(sourceInterp: *mut Tcl_Interp, result: c_int, targetInterp: *mut Tcl_Interp)>,
    pub tcl_InterpActive: Option< extern "C" fn(interp: *mut Tcl_Interp) -> c_int>,
    pub tcl_BackgroundException: Option< extern "C" fn(interp: *mut Tcl_Interp, code: c_int)>,
    pub tcl_ZlibDeflate: Option< extern "C" fn(interp: *mut Tcl_Interp, format: c_int, data: *mut Tcl_Obj, level: c_int, gzipHeaderDictObj: *mut Tcl_Obj) -> c_int>,
    pub tcl_ZlibInflate: Option< extern "C" fn(interp: *mut Tcl_Interp, format: c_int, data: *mut Tcl_Obj, buffersize: c_int, gzipHeaderDictObj: *mut Tcl_Obj) -> c_int>,
    pub tcl_ZlibCRC32: Option< extern "C" fn(crc: c_uint, buf: *const c_uchar, len: c_int) -> c_uint>,
    pub tcl_ZlibAdler32: Option< extern "C" fn(adler: c_uint, buf: *const c_uchar, len: c_int) -> c_uint>,
    pub tcl_ZlibStreamInit: Option< extern "C" fn(interp: *mut Tcl_Interp, mode: c_int, format: c_int, level: c_int, dictObj: *mut Tcl_Obj, zshandle: *mut Tcl_ZlibStream) -> c_int>,
    pub tcl_ZlibStreamGetCommandName: Option< extern "C" fn(zshandle: Tcl_ZlibStream) -> *mut Tcl_Obj>,
    pub tcl_ZlibStreamEof: Option< extern "C" fn(zshandle: Tcl_ZlibStream) -> c_int>,
    pub tcl_ZlibStreamChecksum: Option< extern "C" fn(zshandle: Tcl_ZlibStream) -> c_int>,
    pub tcl_ZlibStreamPut: Option< extern "C" fn(zshandle: Tcl_ZlibStream, data: *mut Tcl_Obj, flush: c_int) -> c_int>,
    pub tcl_ZlibStreamGet: Option< extern "C" fn(zshandle: Tcl_ZlibStream, data: *mut Tcl_Obj, count: c_int) -> c_int>,
    pub tcl_ZlibStreamClose: Option< extern "C" fn(zshandle: Tcl_ZlibStream) -> c_int>,
    pub tcl_ZlibStreamReset: Option< extern "C" fn(zshandle: Tcl_ZlibStream) -> c_int>,
    pub tcl_SetStartupScript: Option< extern "C" fn(path: *mut Tcl_Obj, encoding: *const c_char)>,
    pub tcl_GetStartupScript: Option< extern "C" fn(encodingPtr: *mut *const c_char) -> *mut Tcl_Obj>,
    pub tcl_CloseEx: Option< extern "C" fn(interp: *mut Tcl_Interp, chan: Tcl_Channel, flags: c_int) -> c_int>,
    pub tcl_NRExprObj: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj, resultPtr: *mut Tcl_Obj) -> c_int>,
    pub tcl_NRSubstObj: Option< extern "C" fn(interp: *mut Tcl_Interp, objPtr: *mut Tcl_Obj, flags: c_int) -> c_int>,
    pub tcl_LoadFile: Option< extern "C" fn(interp: *mut Tcl_Interp, pathPtr: *mut Tcl_Obj, symv: *const *const c_char, flags: c_int, procPtrs: *mut c_void, handlePtr: *mut Tcl_LoadHandle) -> c_int>,
    pub tcl_FindSymbol: Option< extern "C" fn(interp: *mut Tcl_Interp, handle: Tcl_LoadHandle, symbol: *const c_char) -> *mut c_void>,
    pub tcl_FSUnloadFile: Option< extern "C" fn(interp: *mut Tcl_Interp, handlePtr: Tcl_LoadHandle) -> c_int>,
    pub tcl_ZlibStreamSetCompressionDictionary: Option< extern "C" fn(zhandle: Tcl_ZlibStream, compressionDictionaryObj: *mut Tcl_Obj)>,
}

Fields

magic
hooks
tcl_PkgProvideEx
tcl_PkgRequireEx
tcl_Panic
tcl_Alloc
tcl_Free
tcl_Realloc
tcl_DbCkalloc
tcl_DbCkfree
tcl_DbCkrealloc
tcl_CreateFileHandler
tcl_DeleteFileHandler
tcl_SetTimer
tcl_Sleep
tcl_WaitForEvent
tcl_AppendAllObjTypes
tcl_AppendStringsToObj
tcl_AppendToObj
tcl_ConcatObj
tcl_ConvertToType
tcl_DbDecrRefCount
tcl_DbIncrRefCount
tcl_DbIsShared
tcl_DbNewBooleanObj
tcl_DbNewByteArrayObj
tcl_DbNewDoubleObj
tcl_DbNewListObj
tcl_DbNewLongObj
tcl_DbNewObj
tcl_DbNewStringObj
tcl_DuplicateObj
tclFreeObj
tcl_GetBoolean
tcl_GetBooleanFromObj
tcl_GetByteArrayFromObj
tcl_GetDouble
tcl_GetDoubleFromObj
tcl_GetIndexFromObj
tcl_GetInt
tcl_GetIntFromObj
tcl_GetLongFromObj
tcl_GetObjType
tcl_GetStringFromObj
tcl_InvalidateStringRep
tcl_ListObjAppendList
tcl_ListObjAppendElement
tcl_ListObjGetElements
tcl_ListObjIndex
tcl_ListObjLength
tcl_ListObjReplace
tcl_NewBooleanObj
tcl_NewByteArrayObj
tcl_NewDoubleObj
tcl_NewIntObj
tcl_NewListObj
tcl_NewLongObj
tcl_NewObj
tcl_NewStringObj
tcl_SetBooleanObj
tcl_SetByteArrayLength
tcl_SetByteArrayObj
tcl_SetDoubleObj
tcl_SetIntObj
tcl_SetListObj
tcl_SetLongObj
tcl_SetObjLength
tcl_SetStringObj
tcl_AddErrorInfo
tcl_AddObjErrorInfo
tcl_AllowExceptions
tcl_AppendElement
tcl_AppendResult
tcl_AsyncCreate
tcl_AsyncDelete
tcl_AsyncInvoke
tcl_AsyncMark
tcl_AsyncReady
tcl_BackgroundError
tcl_Backslash
tcl_BadChannelOption
tcl_CallWhenDeleted
tcl_CancelIdleCall
tcl_Close
tcl_CommandComplete
tcl_Concat
tcl_ConvertElement
tcl_ConvertCountedElement
tcl_CreateAlias
tcl_CreateAliasObj
tcl_CreateChannel
tcl_CreateChannelHandler
tcl_CreateCloseHandler
tcl_CreateCommand
tcl_CreateEventSource
tcl_CreateExitHandler
tcl_CreateInterp
tcl_CreateMathFunc
tcl_CreateObjCommand
tcl_CreateSlave
tcl_CreateTimerHandler
tcl_CreateTrace
tcl_DeleteAssocData
tcl_DeleteChannelHandler
tcl_DeleteCloseHandler
tcl_DeleteCommand
tcl_DeleteCommandFromToken
tcl_DeleteEvents
tcl_DeleteEventSource
tcl_DeleteExitHandler
tcl_DeleteHashEntry
tcl_DeleteHashTable
tcl_DeleteInterp
tcl_DetachPids
tcl_DeleteTimerHandler
tcl_DeleteTrace
tcl_DontCallWhenDeleted
tcl_DoOneEvent
tcl_DoWhenIdle
tcl_DStringAppend
tcl_DStringAppendElement
tcl_DStringEndSublist
tcl_DStringFree
tcl_DStringGetResult
tcl_DStringInit
tcl_DStringResult
tcl_DStringSetLength
tcl_DStringStartSublist
tcl_Eof
tcl_ErrnoId
tcl_ErrnoMsg
tcl_Eval
tcl_EvalFile
tcl_EvalObj
tcl_EventuallyFree
tcl_Exit
tcl_ExposeCommand
tcl_ExprBoolean
tcl_ExprBooleanObj
tcl_ExprDouble
tcl_ExprDoubleObj
tcl_ExprLong
tcl_ExprLongObj
tcl_ExprObj
tcl_ExprString
tcl_Finalize
tcl_FindExecutable
tcl_FirstHashEntry
tcl_Flush
tcl_FreeResult
tcl_GetAlias
tcl_GetAliasObj
tcl_GetAssocData
tcl_GetChannel
tcl_GetChannelBufferSize
tcl_GetChannelHandle
tcl_GetChannelInstanceData
tcl_GetChannelMode
tcl_GetChannelName
tcl_GetChannelOption
tcl_GetChannelType
tcl_GetCommandInfo
tcl_GetCommandName
tcl_GetErrno
tcl_GetHostName
tcl_GetInterpPath
tcl_GetMaster
tcl_GetNameOfExecutable
tcl_GetObjResult
tcl_GetOpenFile
tcl_GetPathType
tcl_Gets
tcl_GetsObj
tcl_GetServiceMode
tcl_GetSlave
tcl_GetStdChannel
tcl_GetStringResult
tcl_GetVar
tcl_GetVar2
tcl_GlobalEval
tcl_GlobalEvalObj
tcl_HideCommand
tcl_Init
tcl_InitHashTable
tcl_InputBlocked
tcl_InputBuffered
tcl_InterpDeleted
tcl_IsSafe
tcl_JoinPath
tcl_LinkVar
reserved188
tcl_MakeFileChannel
tcl_MakeSafe
tcl_MakeTcpClientChannel
tcl_Merge
tcl_NextHashEntry
tcl_NotifyChannel
tcl_ObjGetVar2
tcl_ObjSetVar2
tcl_OpenCommandChannel
tcl_OpenFileChannel
tcl_OpenTcpClient
tcl_OpenTcpServer
tcl_Preserve
tcl_PrintDouble
tcl_PutEnv
tcl_PosixError
tcl_QueueEvent
tcl_Read
tcl_ReapDetachedProcs
tcl_RecordAndEval
tcl_RecordAndEvalObj
tcl_RegisterChannel
tcl_RegisterObjType
tcl_RegExpCompile
tcl_RegExpExec
tcl_RegExpMatch
tcl_RegExpRange
tcl_Release
tcl_ResetResult
tcl_ScanElement
tcl_ScanCountedElement
tcl_SeekOld
tcl_ServiceAll
tcl_ServiceEvent
tcl_SetAssocData
tcl_SetChannelBufferSize
tcl_SetChannelOption
tcl_SetCommandInfo
tcl_SetErrno
tcl_SetErrorCode
tcl_SetMaxBlockTime
tcl_SetPanicProc
tcl_SetRecursionLimit
tcl_SetResult
tcl_SetServiceMode
tcl_SetObjErrorCode
tcl_SetObjResult
tcl_SetStdChannel
tcl_SetVar
tcl_SetVar2
tcl_SignalId
tcl_SignalMsg
tcl_SourceRCFile
tcl_SplitList
tcl_SplitPath
tcl_StaticPackage
tcl_StringMatch
tcl_TellOld
tcl_TraceVar
tcl_TraceVar2
tcl_TranslateFileName
tcl_Ungets
tcl_UnlinkVar
tcl_UnregisterChannel
tcl_UnsetVar
tcl_UnsetVar2
tcl_UntraceVar
tcl_UntraceVar2
tcl_UpdateLinkedVar
tcl_UpVar
tcl_UpVar2
tcl_VarEval
tcl_VarTraceInfo
tcl_VarTraceInfo2
tcl_Write
tcl_WrongNumArgs
tcl_DumpActiveMemory
tcl_ValidateAllMemory
tcl_HashStats
tcl_ParseVar
tcl_PkgPresent
tcl_PkgPresentEx
tcl_PkgProvide
tcl_PkgRequire
tcl_WaitPid
tcl_GetVersion
tcl_InitMemory
tcl_StackChannel
tcl_UnstackChannel
tcl_GetStackedChannel
tcl_SetMainLoop
reserved285
tcl_AppendObjToObj
tcl_CreateEncoding
tcl_CreateThreadExitHandler
tcl_DeleteThreadExitHandler
tcl_DiscardResult
tcl_EvalEx
tcl_EvalObjv
tcl_EvalObjEx
tcl_ExitThread
tcl_ExternalToUtf
tcl_ExternalToUtfDString
tcl_FinalizeThread
tcl_FinalizeNotifier
tcl_FreeEncoding
tcl_GetCurrentThread
tcl_GetEncoding
tcl_GetEncodingName
tcl_GetEncodingNames
tcl_GetIndexFromObjStruct
tcl_GetThreadData
tcl_GetVar2Ex
tcl_InitNotifier
tcl_MutexLock
tcl_MutexUnlock
tcl_ConditionNotify
tcl_ConditionWait
tcl_NumUtfChars
tcl_ReadChars
tcl_RestoreResult
tcl_SaveResult
tcl_SetSystemEncoding
tcl_SetVar2Ex
tcl_ThreadAlert
tcl_ThreadQueueEvent
tcl_UniCharAtIndex
tcl_UniCharToLower
tcl_UniCharToTitle
tcl_UniCharToUpper
tcl_UniCharToUtf
tcl_UtfAtIndex
tcl_UtfCharComplete
tcl_UtfBackslash
tcl_UtfFindFirst
tcl_UtfFindLast
tcl_UtfNext
tcl_UtfPrev
tcl_UtfToExternal
tcl_UtfToExternalDString
tcl_UtfToLower
tcl_UtfToTitle
tcl_UtfToUniChar
tcl_UtfToUpper
tcl_WriteChars
tcl_WriteObj
tcl_GetString
tcl_GetDefaultEncodingDir
tcl_SetDefaultEncodingDir
tcl_AlertNotifier
tcl_ServiceModeHook
tcl_UniCharIsAlnum
tcl_UniCharIsAlpha
tcl_UniCharIsDigit
tcl_UniCharIsLower
tcl_UniCharIsSpace
tcl_UniCharIsUpper
tcl_UniCharIsWordChar
tcl_UniCharLen
tcl_UniCharNcmp
tcl_UniCharToUtfDString
tcl_UtfToUniCharDString
tcl_GetRegExpFromObj
tcl_EvalTokens
tcl_FreeParse
tcl_LogCommandInfo
tcl_ParseBraces
tcl_ParseCommand
tcl_ParseExpr
tcl_ParseQuotedString
tcl_ParseVarName
tcl_GetCwd
tcl_Chdir
tcl_Access
tcl_Stat
tcl_UtfNcmp
tcl_UtfNcasecmp
tcl_StringCaseMatch
tcl_UniCharIsControl
tcl_UniCharIsGraph
tcl_UniCharIsPrint
tcl_UniCharIsPunct
tcl_RegExpExecObj
tcl_RegExpGetInfo
tcl_NewUnicodeObj
tcl_SetUnicodeObj
tcl_GetCharLength
tcl_GetUniChar
tcl_GetUnicode
tcl_GetRange
tcl_AppendUnicodeToObj
tcl_RegExpMatchObj
tcl_SetNotifier
tcl_GetAllocMutex
tcl_GetChannelNames
tcl_GetChannelNamesEx
tcl_ProcObjCmd
tcl_ConditionFinalize
tcl_MutexFinalize
tcl_CreateThread
tcl_ReadRaw
tcl_WriteRaw
tcl_GetTopChannel
tcl_ChannelBuffered
tcl_ChannelName
tcl_ChannelVersion
tcl_ChannelBlockModeProc
tcl_ChannelCloseProc
tcl_ChannelClose2Proc
tcl_ChannelInputProc
tcl_ChannelOutputProc
tcl_ChannelSeekProc
tcl_ChannelSetOptionProc
tcl_ChannelGetOptionProc
tcl_ChannelWatchProc
tcl_ChannelGetHandleProc
tcl_ChannelFlushProc
tcl_ChannelHandlerProc
tcl_JoinThread
tcl_IsChannelShared
tcl_IsChannelRegistered
tcl_CutChannel
tcl_SpliceChannel
tcl_ClearChannelHandlers
tcl_IsChannelExisting
tcl_UniCharNcasecmp
tcl_UniCharCaseMatch
tcl_FindHashEntry
tcl_CreateHashEntry
tcl_InitCustomHashTable
tcl_InitObjHashTable
tcl_CommandTraceInfo
tcl_TraceCommand
tcl_UntraceCommand
tcl_AttemptAlloc
tcl_AttemptDbCkalloc
tcl_AttemptRealloc
tcl_AttemptDbCkrealloc
tcl_AttemptSetObjLength
tcl_GetChannelThread
tcl_GetUnicodeFromObj
tcl_GetMathFuncInfo
tcl_ListMathFuncs
tcl_SubstObj
tcl_DetachChannel
tcl_IsStandardChannel
tcl_FSCopyFile
tcl_FSCopyDirectory
tcl_FSCreateDirectory
tcl_FSDeleteFile
tcl_FSLoadFile
tcl_FSMatchInDirectory
tcl_FSRemoveDirectory
tcl_FSRenameFile
tcl_FSLstat
tcl_FSUtime
tcl_FSFileAttrsGet
tcl_FSFileAttrsSet
tcl_FSFileAttrStrings
tcl_FSStat
tcl_FSAccess
tcl_FSOpenFileChannel
tcl_FSGetCwd
tcl_FSChdir
tcl_FSConvertToPathType
tcl_FSJoinPath
tcl_FSSplitPath
tcl_FSEqualPaths
tcl_FSGetNormalizedPath
tcl_FSJoinToPath
tcl_FSGetInternalRep
tcl_FSGetTranslatedPath
tcl_FSEvalFile
tcl_FSNewNativePath
tcl_FSGetNativePath
tcl_FSFileSystemInfo
tcl_FSPathSeparator
tcl_FSListVolumes
tcl_FSRegister
tcl_FSUnregister
tcl_FSData
tcl_FSGetTranslatedStringPath
tcl_FSGetFileSystemForPath
tcl_FSGetPathType
tcl_OutputBuffered
tcl_FSMountsChanged
tcl_EvalTokensStandard
tcl_GetTime
tcl_CreateObjTrace
tcl_GetCommandInfoFromToken
tcl_SetCommandInfoFromToken
tcl_DbNewWideIntObj
tcl_GetWideIntFromObj
tcl_NewWideIntObj
tcl_SetWideIntObj
tcl_AllocStatBuf
tcl_Seek
tcl_Tell
tcl_ChannelWideSeekProc
tcl_DictObjPut
tcl_DictObjGet
tcl_DictObjRemove
tcl_DictObjSize
tcl_DictObjFirst
tcl_DictObjNext
tcl_DictObjDone
tcl_DictObjPutKeyList
tcl_DictObjRemoveKeyList
tcl_NewDictObj
tcl_DbNewDictObj
tcl_RegisterConfig
tcl_CreateNamespace
tcl_DeleteNamespace
tcl_AppendExportList
tcl_Export
tcl_Import
tcl_ForgetImport
tcl_GetCurrentNamespace
tcl_GetGlobalNamespace
tcl_FindNamespace
tcl_FindCommand
tcl_GetCommandFromObj
tcl_GetCommandFullName
tcl_FSEvalFileEx
tcl_SetExitProc
tcl_LimitAddHandler
tcl_LimitRemoveHandler
tcl_LimitReady
tcl_LimitCheck
tcl_LimitExceeded
tcl_LimitSetCommands
tcl_LimitSetTime
tcl_LimitSetGranularity
tcl_LimitTypeEnabled
tcl_LimitTypeExceeded
tcl_LimitTypeSet
tcl_LimitTypeReset
tcl_LimitGetCommands
tcl_LimitGetTime
tcl_LimitGetGranularity
tcl_SaveInterpState
tcl_RestoreInterpState
tcl_DiscardInterpState
tcl_SetReturnOptions
tcl_GetReturnOptions
tcl_IsEnsemble
tcl_CreateEnsemble
tcl_FindEnsemble
tcl_SetEnsembleSubcommandList
tcl_SetEnsembleMappingDict
tcl_SetEnsembleUnknownHandler
tcl_SetEnsembleFlags
tcl_GetEnsembleSubcommandList
tcl_GetEnsembleMappingDict
tcl_GetEnsembleUnknownHandler
tcl_GetEnsembleFlags
tcl_GetEnsembleNamespace
tcl_SetTimeProc
tcl_QueryTimeProc
tcl_ChannelThreadActionProc
tcl_NewBignumObj
tcl_DbNewBignumObj
tcl_SetBignumObj
tcl_GetBignumFromObj
tcl_TakeBignumFromObj
tcl_TruncateChannel
tcl_ChannelTruncateProc
tcl_SetChannelErrorInterp
tcl_GetChannelErrorInterp
tcl_SetChannelError
tcl_GetChannelError
tcl_InitBignumFromDouble
tcl_GetNamespaceUnknownHandler
tcl_SetNamespaceUnknownHandler
tcl_GetEncodingFromObj
tcl_GetEncodingSearchPath
tcl_SetEncodingSearchPath
tcl_GetEncodingNameFromEnvironment
tcl_PkgRequireProc
tcl_AppendObjToErrorInfo
tcl_AppendLimitedToObj
tcl_Format
tcl_AppendFormatToObj
tcl_ObjPrintf
tcl_AppendPrintfToObj
tcl_CancelEval
tcl_Canceled
tcl_CreatePipe
tcl_NRCreateCommand
tcl_NREvalObj
tcl_NREvalObjv
tcl_NRCmdSwap
tcl_NRAddCallback
tcl_NRCallObjProc
tcl_GetFSDeviceFromStat
tcl_GetFSInodeFromStat
tcl_GetModeFromStat
tcl_GetLinkCountFromStat
tcl_GetUserIdFromStat
tcl_GetGroupIdFromStat
tcl_GetDeviceTypeFromStat
tcl_GetAccessTimeFromStat
tcl_GetModificationTimeFromStat
tcl_GetChangeTimeFromStat
tcl_GetSizeFromStat
tcl_GetBlocksFromStat
tcl_GetBlockSizeFromStat
tcl_SetEnsembleParameterList
tcl_GetEnsembleParameterList
tcl_ParseArgsObjv
tcl_GetErrorLine
tcl_SetErrorLine
tcl_TransferResult
tcl_InterpActive
tcl_BackgroundException
tcl_ZlibDeflate
tcl_ZlibInflate
tcl_ZlibCRC32
tcl_ZlibAdler32
tcl_ZlibStreamInit
tcl_ZlibStreamGetCommandName
tcl_ZlibStreamEof
tcl_ZlibStreamChecksum
tcl_ZlibStreamPut
tcl_ZlibStreamGet
tcl_ZlibStreamClose
tcl_ZlibStreamReset
tcl_SetStartupScript
tcl_GetStartupScript
tcl_CloseEx
tcl_NRExprObj
tcl_NRSubstObj
tcl_LoadFile
tcl_FindSymbol
tcl_FSUnloadFile
tcl_ZlibStreamSetCompressionDictionary

Trait Implementations

impl Default for Struct_TclStubs

fn default() -> Struct_TclStubs