Index: generic/nsfAPI.h =================================================================== diff -u -r16a02881bff0a0d626d0045dfd96660338d0c314 -r5a162b098b6a9550218646d470b274769bda8da1 --- generic/nsfAPI.h (.../nsfAPI.h) (revision 16a02881bff0a0d626d0045dfd96660338d0c314) +++ generic/nsfAPI.h (.../nsfAPI.h) (revision 5a162b098b6a9550218646d470b274769bda8da1) @@ -295,7 +295,7 @@ /* just to define the symbol */ -static Nsf_methodDefinition method_definitions[112]; +static Nsf_methodDefinition method_definitions[113]; static const char *method_command_namespace_names[] = { "::nsf::methods::object::info", @@ -477,6 +477,8 @@ NSF_nonnull(1) NSF_nonnull(2) NSF_nonnull(4); static int NsfOVolatileMethodStub(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST* objv) NSF_nonnull(1) NSF_nonnull(2) NSF_nonnull(4); +static int NsfObjInfoBaseclassMethodStub(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST* objv) + NSF_nonnull(1) NSF_nonnull(2) NSF_nonnull(4); static int NsfObjInfoChildrenMethodStub(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST* objv) NSF_nonnull(1) NSF_nonnull(2) NSF_nonnull(4); static int NsfObjInfoClassMethodStub(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST* objv) @@ -700,6 +702,8 @@ NSF_nonnull(1) NSF_nonnull(2); static int NsfOVolatileMethod(Tcl_Interp *interp, NsfObject *obj) NSF_nonnull(1) NSF_nonnull(2); +static int NsfObjInfoBaseclassMethod(Tcl_Interp *interp, NsfObject *obj) + NSF_nonnull(1) NSF_nonnull(2); static int NsfObjInfoChildrenMethod(Tcl_Interp *interp, NsfObject *obj, NsfClass *withType, const char *pattern) NSF_nonnull(1) NSF_nonnull(2); static int NsfObjInfoClassMethod(Tcl_Interp *interp, NsfObject *obj) @@ -837,6 +841,7 @@ NsfOUplevelMethodIdx, NsfOUpvarMethodIdx, NsfOVolatileMethodIdx, + NsfObjInfoBaseclassMethodIdx, NsfObjInfoChildrenMethodIdx, NsfObjInfoClassMethodIdx, NsfObjInfoFilterguardMethodIdx, @@ -2833,6 +2838,26 @@ } static int +NsfObjInfoBaseclassMethodStub(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST* objv) { + NsfObject *obj; + + NSF_nonnull_assert(clientData != NULL); + assert(objc > 0); + + obj = (NsfObject *)clientData; + + + if (unlikely(objc != 1)) { + return NsfArgumentError(interp, "too many arguments:", + method_definitions[NsfObjInfoBaseclassMethodIdx].paramDefs, + NULL, objv[0]); + } + + return NsfObjInfoBaseclassMethod(interp, obj); + +} + +static int NsfObjInfoChildrenMethodStub(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST* objv) { ParseContext pc; NsfObject *obj; @@ -3447,7 +3472,7 @@ } } -static Nsf_methodDefinition method_definitions[112] = { +static Nsf_methodDefinition method_definitions[113] = { {"::nsf::methods::class::alloc", NsfCAllocMethodStub, 1, { {"objectName", NSF_ARG_REQUIRED, 1, Nsf_ConvertTo_Tclobj, NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL}} }, @@ -3838,6 +3863,9 @@ {"::nsf::methods::object::volatile", NsfOVolatileMethodStub, 0, { {NULL, 0, 0, NULL, NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL}} }, +{"::nsf::methods::object::info::baseclass", NsfObjInfoBaseclassMethodStub, 0, { + {NULL, 0, 0, NULL, NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL}} +}, {"::nsf::methods::object::info::children", NsfObjInfoChildrenMethodStub, 2, { {"-type", 0, 1, Nsf_ConvertTo_Class, NULL,NULL,"class",NULL,NULL,NULL,NULL,NULL}, {"pattern", 0, 1, Nsf_ConvertTo_String, NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL}}