Index: generic/tclAPI.h =================================================================== diff -u -rdbfe68f503f598b32e78ff871db3797672654ace -rb1eea4ce4b88c47dfa29c37b9fb0e52daf30b912 --- generic/tclAPI.h (.../tclAPI.h) (revision dbfe68f503f598b32e78ff871db3797672654ace) +++ generic/tclAPI.h (.../tclAPI.h) (revision b1eea4ce4b88c47dfa29c37b9fb0e52daf30b912) @@ -140,6 +140,7 @@ static int XOTclInterpObjCmdStub(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv []); static int XOTclMethodPropertyCmdStub(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv []); static int XOTclMyCmdStub(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv []); +static int XOTclNSCopyCmdsStub(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv []); static int XOTclNSCopyVarsStub(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv []); static int XOTclRelationCmdStub(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv []); static int XOTclSetInstvarCmdStub(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv []); @@ -242,6 +243,7 @@ static int XOTclInterpObjCmd(Tcl_Interp *interp, char *name, int objc, Tcl_Obj *CONST objv[]); static int XOTclMethodPropertyCmd(Tcl_Interp *interp, XOTclObject *object, char *methodName, int withPer_object, int methodproperty, Tcl_Obj *value); static int XOTclMyCmd(Tcl_Interp *interp, int withLocal, Tcl_Obj *method, int nobjc, Tcl_Obj *CONST nobjv[]); +static int XOTclNSCopyCmds(Tcl_Interp *interp, Tcl_Obj *fromNs, Tcl_Obj *toNs); static int XOTclNSCopyVars(Tcl_Interp *interp, Tcl_Obj *fromNs, Tcl_Obj *toNs); static int XOTclRelationCmd(Tcl_Interp *interp, XOTclObject *object, int relationtype, Tcl_Obj *value); static int XOTclSetInstvarCmd(Tcl_Interp *interp, XOTclObject *object, Tcl_Obj *variable, Tcl_Obj *value); @@ -345,6 +347,7 @@ XOTclInterpObjCmdIdx, XOTclMethodPropertyCmdIdx, XOTclMyCmdIdx, + XOTclNSCopyCmdsIdx, XOTclNSCopyVarsIdx, XOTclRelationCmdIdx, XOTclSetInstvarCmdIdx @@ -2286,6 +2289,25 @@ } static int +XOTclNSCopyCmdsStub(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) { + parseContext pc; + + if (ArgumentParse(interp, objc, objv, NULL, objv[0], + method_definitions[XOTclNSCopyCmdsIdx].paramDefs, + method_definitions[XOTclNSCopyCmdsIdx].nrParameters, + &pc) != TCL_OK) { + return TCL_ERROR; + } else { + Tcl_Obj *fromNs = (Tcl_Obj *)pc.clientData[0]; + Tcl_Obj *toNs = (Tcl_Obj *)pc.clientData[1]; + + parseContextRelease(&pc); + return XOTclNSCopyCmds(interp, fromNs, toNs); + + } +} + +static int XOTclNSCopyVarsStub(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv[]) { parseContext pc; @@ -2754,6 +2776,10 @@ {"method", 1, 0, convertToTclobj}, {"args", 0, 0, convertToNothing}} }, +{"::xotcl::namespace_copycmds", XOTclNSCopyCmdsStub, 2, { + {"fromNs", 1, 0, convertToTclobj}, + {"toNs", 1, 0, convertToTclobj}} +}, {"::xotcl::namespace_copyvars", XOTclNSCopyVarsStub, 2, { {"fromNs", 1, 0, convertToTclobj}, {"toNs", 1, 0, convertToTclobj}}