2 * This file is (mostly) automatically generated from tclOO.decls.
10 # define TCLAPI extern DLLEXPORT
12 # define TCLAPI extern DLLIMPORT
17 # undef USE_TCLOO_STUBS
18 # define USE_TCLOO_STUBS
21 /* !BEGIN!: Do not edit below this line. */
28 * Exported function declarations:
32 TCLAPI Tcl_Object Tcl_CopyObjectInstance(Tcl_Interp *interp,
33 Tcl_Object sourceObject,
34 const char *targetName,
35 const char *targetNamespaceName);
37 TCLAPI Tcl_Object Tcl_GetClassAsObject(Tcl_Class clazz);
39 TCLAPI Tcl_Class Tcl_GetObjectAsClass(Tcl_Object object);
41 TCLAPI Tcl_Command Tcl_GetObjectCommand(Tcl_Object object);
43 TCLAPI Tcl_Object Tcl_GetObjectFromObj(Tcl_Interp *interp,
46 TCLAPI Tcl_Namespace * Tcl_GetObjectNamespace(Tcl_Object object);
48 TCLAPI Tcl_Class Tcl_MethodDeclarerClass(Tcl_Method method);
50 TCLAPI Tcl_Object Tcl_MethodDeclarerObject(Tcl_Method method);
52 TCLAPI int Tcl_MethodIsPublic(Tcl_Method method);
54 TCLAPI int Tcl_MethodIsType(Tcl_Method method,
55 const Tcl_MethodType *typePtr,
56 ClientData *clientDataPtr);
58 TCLAPI Tcl_Obj * Tcl_MethodName(Tcl_Method method);
60 TCLAPI Tcl_Method Tcl_NewInstanceMethod(Tcl_Interp *interp,
61 Tcl_Object object, Tcl_Obj *nameObj,
62 int isPublic, const Tcl_MethodType *typePtr,
63 ClientData clientData);
65 TCLAPI Tcl_Method Tcl_NewMethod(Tcl_Interp *interp, Tcl_Class cls,
66 Tcl_Obj *nameObj, int isPublic,
67 const Tcl_MethodType *typePtr,
68 ClientData clientData);
70 TCLAPI Tcl_Object Tcl_NewObjectInstance(Tcl_Interp *interp,
71 Tcl_Class cls, const char *nameStr,
72 const char *nsNameStr, int objc,
73 Tcl_Obj *const *objv, int skip);
75 TCLAPI int Tcl_ObjectDeleted(Tcl_Object object);
77 TCLAPI int Tcl_ObjectContextIsFiltering(
78 Tcl_ObjectContext context);
80 TCLAPI Tcl_Method Tcl_ObjectContextMethod(Tcl_ObjectContext context);
82 TCLAPI Tcl_Object Tcl_ObjectContextObject(Tcl_ObjectContext context);
84 TCLAPI int Tcl_ObjectContextSkippedArgs(
85 Tcl_ObjectContext context);
87 TCLAPI ClientData Tcl_ClassGetMetadata(Tcl_Class clazz,
88 const Tcl_ObjectMetadataType *typePtr);
90 TCLAPI void Tcl_ClassSetMetadata(Tcl_Class clazz,
91 const Tcl_ObjectMetadataType *typePtr,
94 TCLAPI ClientData Tcl_ObjectGetMetadata(Tcl_Object object,
95 const Tcl_ObjectMetadataType *typePtr);
97 TCLAPI void Tcl_ObjectSetMetadata(Tcl_Object object,
98 const Tcl_ObjectMetadataType *typePtr,
101 TCLAPI int Tcl_ObjectContextInvokeNext(Tcl_Interp *interp,
102 Tcl_ObjectContext context, int objc,
103 Tcl_Obj *const *objv, int skip);
105 TCLAPI Tcl_ObjectMapMethodNameProc * Tcl_ObjectGetMethodNameMapper(
108 TCLAPI void Tcl_ObjectSetMethodNameMapper(Tcl_Object object,
109 Tcl_ObjectMapMethodNameProc *mapMethodNameProc);
111 TCLAPI void Tcl_ClassSetConstructor(Tcl_Interp *interp,
112 Tcl_Class clazz, Tcl_Method method);
114 TCLAPI void Tcl_ClassSetDestructor(Tcl_Interp *interp,
115 Tcl_Class clazz, Tcl_Method method);
117 TCLAPI Tcl_Obj * Tcl_GetObjectName(Tcl_Interp *interp,
121 const struct TclOOIntStubs *tclOOIntStubs;
124 typedef struct TclOOStubs {
126 const TclOOStubHooks *hooks;
128 Tcl_Object (*tcl_CopyObjectInstance) (Tcl_Interp *interp, Tcl_Object sourceObject, const char *targetName, const char *targetNamespaceName); /* 0 */
129 Tcl_Object (*tcl_GetClassAsObject) (Tcl_Class clazz); /* 1 */
130 Tcl_Class (*tcl_GetObjectAsClass) (Tcl_Object object); /* 2 */
131 Tcl_Command (*tcl_GetObjectCommand) (Tcl_Object object); /* 3 */
132 Tcl_Object (*tcl_GetObjectFromObj) (Tcl_Interp *interp, Tcl_Obj *objPtr); /* 4 */
133 Tcl_Namespace * (*tcl_GetObjectNamespace) (Tcl_Object object); /* 5 */
134 Tcl_Class (*tcl_MethodDeclarerClass) (Tcl_Method method); /* 6 */
135 Tcl_Object (*tcl_MethodDeclarerObject) (Tcl_Method method); /* 7 */
136 int (*tcl_MethodIsPublic) (Tcl_Method method); /* 8 */
137 int (*tcl_MethodIsType) (Tcl_Method method, const Tcl_MethodType *typePtr, ClientData *clientDataPtr); /* 9 */
138 Tcl_Obj * (*tcl_MethodName) (Tcl_Method method); /* 10 */
139 Tcl_Method (*tcl_NewInstanceMethod) (Tcl_Interp *interp, Tcl_Object object, Tcl_Obj *nameObj, int isPublic, const Tcl_MethodType *typePtr, ClientData clientData); /* 11 */
140 Tcl_Method (*tcl_NewMethod) (Tcl_Interp *interp, Tcl_Class cls, Tcl_Obj *nameObj, int isPublic, const Tcl_MethodType *typePtr, ClientData clientData); /* 12 */
141 Tcl_Object (*tcl_NewObjectInstance) (Tcl_Interp *interp, Tcl_Class cls, const char *nameStr, const char *nsNameStr, int objc, Tcl_Obj *const *objv, int skip); /* 13 */
142 int (*tcl_ObjectDeleted) (Tcl_Object object); /* 14 */
143 int (*tcl_ObjectContextIsFiltering) (Tcl_ObjectContext context); /* 15 */
144 Tcl_Method (*tcl_ObjectContextMethod) (Tcl_ObjectContext context); /* 16 */
145 Tcl_Object (*tcl_ObjectContextObject) (Tcl_ObjectContext context); /* 17 */
146 int (*tcl_ObjectContextSkippedArgs) (Tcl_ObjectContext context); /* 18 */
147 ClientData (*tcl_ClassGetMetadata) (Tcl_Class clazz, const Tcl_ObjectMetadataType *typePtr); /* 19 */
148 void (*tcl_ClassSetMetadata) (Tcl_Class clazz, const Tcl_ObjectMetadataType *typePtr, ClientData metadata); /* 20 */
149 ClientData (*tcl_ObjectGetMetadata) (Tcl_Object object, const Tcl_ObjectMetadataType *typePtr); /* 21 */
150 void (*tcl_ObjectSetMetadata) (Tcl_Object object, const Tcl_ObjectMetadataType *typePtr, ClientData metadata); /* 22 */
151 int (*tcl_ObjectContextInvokeNext) (Tcl_Interp *interp, Tcl_ObjectContext context, int objc, Tcl_Obj *const *objv, int skip); /* 23 */
152 Tcl_ObjectMapMethodNameProc * (*tcl_ObjectGetMethodNameMapper) (Tcl_Object object); /* 24 */
153 void (*tcl_ObjectSetMethodNameMapper) (Tcl_Object object, Tcl_ObjectMapMethodNameProc *mapMethodNameProc); /* 25 */
154 void (*tcl_ClassSetConstructor) (Tcl_Interp *interp, Tcl_Class clazz, Tcl_Method method); /* 26 */
155 void (*tcl_ClassSetDestructor) (Tcl_Interp *interp, Tcl_Class clazz, Tcl_Method method); /* 27 */
156 Tcl_Obj * (*tcl_GetObjectName) (Tcl_Interp *interp, Tcl_Object object); /* 28 */
159 extern const TclOOStubs *tclOOStubsPtr;
165 #if defined(USE_TCLOO_STUBS)
168 * Inline function declarations:
171 #define Tcl_CopyObjectInstance \
172 (tclOOStubsPtr->tcl_CopyObjectInstance) /* 0 */
173 #define Tcl_GetClassAsObject \
174 (tclOOStubsPtr->tcl_GetClassAsObject) /* 1 */
175 #define Tcl_GetObjectAsClass \
176 (tclOOStubsPtr->tcl_GetObjectAsClass) /* 2 */
177 #define Tcl_GetObjectCommand \
178 (tclOOStubsPtr->tcl_GetObjectCommand) /* 3 */
179 #define Tcl_GetObjectFromObj \
180 (tclOOStubsPtr->tcl_GetObjectFromObj) /* 4 */
181 #define Tcl_GetObjectNamespace \
182 (tclOOStubsPtr->tcl_GetObjectNamespace) /* 5 */
183 #define Tcl_MethodDeclarerClass \
184 (tclOOStubsPtr->tcl_MethodDeclarerClass) /* 6 */
185 #define Tcl_MethodDeclarerObject \
186 (tclOOStubsPtr->tcl_MethodDeclarerObject) /* 7 */
187 #define Tcl_MethodIsPublic \
188 (tclOOStubsPtr->tcl_MethodIsPublic) /* 8 */
189 #define Tcl_MethodIsType \
190 (tclOOStubsPtr->tcl_MethodIsType) /* 9 */
191 #define Tcl_MethodName \
192 (tclOOStubsPtr->tcl_MethodName) /* 10 */
193 #define Tcl_NewInstanceMethod \
194 (tclOOStubsPtr->tcl_NewInstanceMethod) /* 11 */
195 #define Tcl_NewMethod \
196 (tclOOStubsPtr->tcl_NewMethod) /* 12 */
197 #define Tcl_NewObjectInstance \
198 (tclOOStubsPtr->tcl_NewObjectInstance) /* 13 */
199 #define Tcl_ObjectDeleted \
200 (tclOOStubsPtr->tcl_ObjectDeleted) /* 14 */
201 #define Tcl_ObjectContextIsFiltering \
202 (tclOOStubsPtr->tcl_ObjectContextIsFiltering) /* 15 */
203 #define Tcl_ObjectContextMethod \
204 (tclOOStubsPtr->tcl_ObjectContextMethod) /* 16 */
205 #define Tcl_ObjectContextObject \
206 (tclOOStubsPtr->tcl_ObjectContextObject) /* 17 */
207 #define Tcl_ObjectContextSkippedArgs \
208 (tclOOStubsPtr->tcl_ObjectContextSkippedArgs) /* 18 */
209 #define Tcl_ClassGetMetadata \
210 (tclOOStubsPtr->tcl_ClassGetMetadata) /* 19 */
211 #define Tcl_ClassSetMetadata \
212 (tclOOStubsPtr->tcl_ClassSetMetadata) /* 20 */
213 #define Tcl_ObjectGetMetadata \
214 (tclOOStubsPtr->tcl_ObjectGetMetadata) /* 21 */
215 #define Tcl_ObjectSetMetadata \
216 (tclOOStubsPtr->tcl_ObjectSetMetadata) /* 22 */
217 #define Tcl_ObjectContextInvokeNext \
218 (tclOOStubsPtr->tcl_ObjectContextInvokeNext) /* 23 */
219 #define Tcl_ObjectGetMethodNameMapper \
220 (tclOOStubsPtr->tcl_ObjectGetMethodNameMapper) /* 24 */
221 #define Tcl_ObjectSetMethodNameMapper \
222 (tclOOStubsPtr->tcl_ObjectSetMethodNameMapper) /* 25 */
223 #define Tcl_ClassSetConstructor \
224 (tclOOStubsPtr->tcl_ClassSetConstructor) /* 26 */
225 #define Tcl_ClassSetDestructor \
226 (tclOOStubsPtr->tcl_ClassSetDestructor) /* 27 */
227 #define Tcl_GetObjectName \
228 (tclOOStubsPtr->tcl_GetObjectName) /* 28 */
230 #endif /* defined(USE_TCLOO_STUBS) */
232 /* !END!: Do not edit above this line. */
234 #endif /* _TCLOODECLS */