jpayne@69: /* jpayne@69: * This file is (mostly) automatically generated from tclOO.decls. jpayne@69: */ jpayne@69: jpayne@69: #ifndef _TCLOOINTDECLS jpayne@69: #define _TCLOOINTDECLS jpayne@69: jpayne@69: /* !BEGIN!: Do not edit below this line. */ jpayne@69: jpayne@69: #ifdef __cplusplus jpayne@69: extern "C" { jpayne@69: #endif jpayne@69: jpayne@69: /* jpayne@69: * Exported function declarations: jpayne@69: */ jpayne@69: jpayne@69: /* 0 */ jpayne@69: TCLAPI Tcl_Object TclOOGetDefineCmdContext(Tcl_Interp *interp); jpayne@69: /* 1 */ jpayne@69: TCLAPI Tcl_Method TclOOMakeProcInstanceMethod(Tcl_Interp *interp, jpayne@69: Object *oPtr, int flags, Tcl_Obj *nameObj, jpayne@69: Tcl_Obj *argsObj, Tcl_Obj *bodyObj, jpayne@69: const Tcl_MethodType *typePtr, jpayne@69: void *clientData, Proc **procPtrPtr); jpayne@69: /* 2 */ jpayne@69: TCLAPI Tcl_Method TclOOMakeProcMethod(Tcl_Interp *interp, jpayne@69: Class *clsPtr, int flags, Tcl_Obj *nameObj, jpayne@69: const char *namePtr, Tcl_Obj *argsObj, jpayne@69: Tcl_Obj *bodyObj, jpayne@69: const Tcl_MethodType *typePtr, jpayne@69: void *clientData, Proc **procPtrPtr); jpayne@69: /* 3 */ jpayne@69: TCLAPI Method * TclOONewProcInstanceMethod(Tcl_Interp *interp, jpayne@69: Object *oPtr, int flags, Tcl_Obj *nameObj, jpayne@69: Tcl_Obj *argsObj, Tcl_Obj *bodyObj, jpayne@69: ProcedureMethod **pmPtrPtr); jpayne@69: /* 4 */ jpayne@69: TCLAPI Method * TclOONewProcMethod(Tcl_Interp *interp, Class *clsPtr, jpayne@69: int flags, Tcl_Obj *nameObj, jpayne@69: Tcl_Obj *argsObj, Tcl_Obj *bodyObj, jpayne@69: ProcedureMethod **pmPtrPtr); jpayne@69: /* 5 */ jpayne@69: TCLAPI int TclOOObjectCmdCore(Object *oPtr, Tcl_Interp *interp, jpayne@69: int objc, Tcl_Obj *const *objv, jpayne@69: int publicOnly, Class *startCls); jpayne@69: /* 6 */ jpayne@69: TCLAPI int TclOOIsReachable(Class *targetPtr, Class *startPtr); jpayne@69: /* 7 */ jpayne@69: TCLAPI Method * TclOONewForwardMethod(Tcl_Interp *interp, jpayne@69: Class *clsPtr, int isPublic, jpayne@69: Tcl_Obj *nameObj, Tcl_Obj *prefixObj); jpayne@69: /* 8 */ jpayne@69: TCLAPI Method * TclOONewForwardInstanceMethod(Tcl_Interp *interp, jpayne@69: Object *oPtr, int isPublic, Tcl_Obj *nameObj, jpayne@69: Tcl_Obj *prefixObj); jpayne@69: /* 9 */ jpayne@69: TCLAPI Tcl_Method TclOONewProcInstanceMethodEx(Tcl_Interp *interp, jpayne@69: Tcl_Object oPtr, jpayne@69: TclOO_PreCallProc *preCallPtr, jpayne@69: TclOO_PostCallProc *postCallPtr, jpayne@69: ProcErrorProc *errProc, void *clientData, jpayne@69: Tcl_Obj *nameObj, Tcl_Obj *argsObj, jpayne@69: Tcl_Obj *bodyObj, int flags, jpayne@69: void **internalTokenPtr); jpayne@69: /* 10 */ jpayne@69: TCLAPI Tcl_Method TclOONewProcMethodEx(Tcl_Interp *interp, jpayne@69: Tcl_Class clsPtr, jpayne@69: TclOO_PreCallProc *preCallPtr, jpayne@69: TclOO_PostCallProc *postCallPtr, jpayne@69: ProcErrorProc *errProc, void *clientData, jpayne@69: Tcl_Obj *nameObj, Tcl_Obj *argsObj, jpayne@69: Tcl_Obj *bodyObj, int flags, jpayne@69: void **internalTokenPtr); jpayne@69: /* 11 */ jpayne@69: TCLAPI int TclOOInvokeObject(Tcl_Interp *interp, jpayne@69: Tcl_Object object, Tcl_Class startCls, jpayne@69: int publicPrivate, int objc, jpayne@69: Tcl_Obj *const *objv); jpayne@69: /* 12 */ jpayne@69: TCLAPI void TclOOObjectSetFilters(Object *oPtr, int numFilters, jpayne@69: Tcl_Obj *const *filters); jpayne@69: /* 13 */ jpayne@69: TCLAPI void TclOOClassSetFilters(Tcl_Interp *interp, jpayne@69: Class *classPtr, int numFilters, jpayne@69: Tcl_Obj *const *filters); jpayne@69: /* 14 */ jpayne@69: TCLAPI void TclOOObjectSetMixins(Object *oPtr, int numMixins, jpayne@69: Class *const *mixins); jpayne@69: /* 15 */ jpayne@69: TCLAPI void TclOOClassSetMixins(Tcl_Interp *interp, jpayne@69: Class *classPtr, int numMixins, jpayne@69: Class *const *mixins); jpayne@69: jpayne@69: typedef struct TclOOIntStubs { jpayne@69: int magic; jpayne@69: void *hooks; jpayne@69: jpayne@69: Tcl_Object (*tclOOGetDefineCmdContext) (Tcl_Interp *interp); /* 0 */ jpayne@69: Tcl_Method (*tclOOMakeProcInstanceMethod) (Tcl_Interp *interp, Object *oPtr, int flags, Tcl_Obj *nameObj, Tcl_Obj *argsObj, Tcl_Obj *bodyObj, const Tcl_MethodType *typePtr, void *clientData, Proc **procPtrPtr); /* 1 */ jpayne@69: Tcl_Method (*tclOOMakeProcMethod) (Tcl_Interp *interp, Class *clsPtr, int flags, Tcl_Obj *nameObj, const char *namePtr, Tcl_Obj *argsObj, Tcl_Obj *bodyObj, const Tcl_MethodType *typePtr, void *clientData, Proc **procPtrPtr); /* 2 */ jpayne@69: Method * (*tclOONewProcInstanceMethod) (Tcl_Interp *interp, Object *oPtr, int flags, Tcl_Obj *nameObj, Tcl_Obj *argsObj, Tcl_Obj *bodyObj, ProcedureMethod **pmPtrPtr); /* 3 */ jpayne@69: Method * (*tclOONewProcMethod) (Tcl_Interp *interp, Class *clsPtr, int flags, Tcl_Obj *nameObj, Tcl_Obj *argsObj, Tcl_Obj *bodyObj, ProcedureMethod **pmPtrPtr); /* 4 */ jpayne@69: int (*tclOOObjectCmdCore) (Object *oPtr, Tcl_Interp *interp, int objc, Tcl_Obj *const *objv, int publicOnly, Class *startCls); /* 5 */ jpayne@69: int (*tclOOIsReachable) (Class *targetPtr, Class *startPtr); /* 6 */ jpayne@69: Method * (*tclOONewForwardMethod) (Tcl_Interp *interp, Class *clsPtr, int isPublic, Tcl_Obj *nameObj, Tcl_Obj *prefixObj); /* 7 */ jpayne@69: Method * (*tclOONewForwardInstanceMethod) (Tcl_Interp *interp, Object *oPtr, int isPublic, Tcl_Obj *nameObj, Tcl_Obj *prefixObj); /* 8 */ jpayne@69: Tcl_Method (*tclOONewProcInstanceMethodEx) (Tcl_Interp *interp, Tcl_Object oPtr, TclOO_PreCallProc *preCallPtr, TclOO_PostCallProc *postCallPtr, ProcErrorProc *errProc, void *clientData, Tcl_Obj *nameObj, Tcl_Obj *argsObj, Tcl_Obj *bodyObj, int flags, void **internalTokenPtr); /* 9 */ jpayne@69: Tcl_Method (*tclOONewProcMethodEx) (Tcl_Interp *interp, Tcl_Class clsPtr, TclOO_PreCallProc *preCallPtr, TclOO_PostCallProc *postCallPtr, ProcErrorProc *errProc, void *clientData, Tcl_Obj *nameObj, Tcl_Obj *argsObj, Tcl_Obj *bodyObj, int flags, void **internalTokenPtr); /* 10 */ jpayne@69: int (*tclOOInvokeObject) (Tcl_Interp *interp, Tcl_Object object, Tcl_Class startCls, int publicPrivate, int objc, Tcl_Obj *const *objv); /* 11 */ jpayne@69: void (*tclOOObjectSetFilters) (Object *oPtr, int numFilters, Tcl_Obj *const *filters); /* 12 */ jpayne@69: void (*tclOOClassSetFilters) (Tcl_Interp *interp, Class *classPtr, int numFilters, Tcl_Obj *const *filters); /* 13 */ jpayne@69: void (*tclOOObjectSetMixins) (Object *oPtr, int numMixins, Class *const *mixins); /* 14 */ jpayne@69: void (*tclOOClassSetMixins) (Tcl_Interp *interp, Class *classPtr, int numMixins, Class *const *mixins); /* 15 */ jpayne@69: } TclOOIntStubs; jpayne@69: jpayne@69: extern const TclOOIntStubs *tclOOIntStubsPtr; jpayne@69: jpayne@69: #ifdef __cplusplus jpayne@69: } jpayne@69: #endif jpayne@69: jpayne@69: #if defined(USE_TCLOO_STUBS) jpayne@69: jpayne@69: /* jpayne@69: * Inline function declarations: jpayne@69: */ jpayne@69: jpayne@69: #define TclOOGetDefineCmdContext \ jpayne@69: (tclOOIntStubsPtr->tclOOGetDefineCmdContext) /* 0 */ jpayne@69: #define TclOOMakeProcInstanceMethod \ jpayne@69: (tclOOIntStubsPtr->tclOOMakeProcInstanceMethod) /* 1 */ jpayne@69: #define TclOOMakeProcMethod \ jpayne@69: (tclOOIntStubsPtr->tclOOMakeProcMethod) /* 2 */ jpayne@69: #define TclOONewProcInstanceMethod \ jpayne@69: (tclOOIntStubsPtr->tclOONewProcInstanceMethod) /* 3 */ jpayne@69: #define TclOONewProcMethod \ jpayne@69: (tclOOIntStubsPtr->tclOONewProcMethod) /* 4 */ jpayne@69: #define TclOOObjectCmdCore \ jpayne@69: (tclOOIntStubsPtr->tclOOObjectCmdCore) /* 5 */ jpayne@69: #define TclOOIsReachable \ jpayne@69: (tclOOIntStubsPtr->tclOOIsReachable) /* 6 */ jpayne@69: #define TclOONewForwardMethod \ jpayne@69: (tclOOIntStubsPtr->tclOONewForwardMethod) /* 7 */ jpayne@69: #define TclOONewForwardInstanceMethod \ jpayne@69: (tclOOIntStubsPtr->tclOONewForwardInstanceMethod) /* 8 */ jpayne@69: #define TclOONewProcInstanceMethodEx \ jpayne@69: (tclOOIntStubsPtr->tclOONewProcInstanceMethodEx) /* 9 */ jpayne@69: #define TclOONewProcMethodEx \ jpayne@69: (tclOOIntStubsPtr->tclOONewProcMethodEx) /* 10 */ jpayne@69: #define TclOOInvokeObject \ jpayne@69: (tclOOIntStubsPtr->tclOOInvokeObject) /* 11 */ jpayne@69: #define TclOOObjectSetFilters \ jpayne@69: (tclOOIntStubsPtr->tclOOObjectSetFilters) /* 12 */ jpayne@69: #define TclOOClassSetFilters \ jpayne@69: (tclOOIntStubsPtr->tclOOClassSetFilters) /* 13 */ jpayne@69: #define TclOOObjectSetMixins \ jpayne@69: (tclOOIntStubsPtr->tclOOObjectSetMixins) /* 14 */ jpayne@69: #define TclOOClassSetMixins \ jpayne@69: (tclOOIntStubsPtr->tclOOClassSetMixins) /* 15 */ jpayne@69: jpayne@69: #endif /* defined(USE_TCLOO_STUBS) */ jpayne@69: jpayne@69: /* !END!: Do not edit above this line. */ jpayne@69: jpayne@69: #endif /* _TCLOOINTDECLS */