diff options
author | dkf <donal.k.fellows@manchester.ac.uk> | 2008-09-23 05:05:41 (GMT) |
---|---|---|
committer | dkf <donal.k.fellows@manchester.ac.uk> | 2008-09-23 05:05:41 (GMT) |
commit | 282e134aeee90a7223dae8944b610c218aeaec78 (patch) | |
tree | 6be64065e9b0dc708cce2d80b40e8aa2bdad98b8 /generic/tclOOInt.h | |
parent | 404405c0976f47e28629ed9441feaa565cf85d99 (diff) | |
download | tcl-282e134aeee90a7223dae8944b610c218aeaec78.zip tcl-282e134aeee90a7223dae8944b610c218aeaec78.tar.gz tcl-282e134aeee90a7223dae8944b610c218aeaec78.tar.bz2 |
Implementation of TIP #320.#320.#320.
Diffstat (limited to 'generic/tclOOInt.h')
-rw-r--r-- | generic/tclOOInt.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/generic/tclOOInt.h b/generic/tclOOInt.h index 056091d..dbd7df2 100644 --- a/generic/tclOOInt.h +++ b/generic/tclOOInt.h @@ -9,7 +9,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclOOInt.h,v 1.7 2008/08/23 18:53:11 msofer Exp $ + * RCS: @(#) $Id: tclOOInt.h,v 1.8 2008/09/23 05:05:54 dkf Exp $ */ #include <tclInt.h> @@ -175,6 +175,7 @@ typedef struct Object { Tcl_ObjectMapMethodNameProc mapMethodNameProc; /* Function to allow remapping of method * names. For itcl-ng. */ + LIST_STATIC(Tcl_Obj *) variables; } Object; #define OBJECT_DELETED 1 /* Flag to say that an object has been @@ -248,6 +249,7 @@ typedef struct Class { * object doesn't override with its own mixins * (and filters and method implementations for * when getting method chains). */ + LIST_STATIC(Tcl_Obj *) variables; } Class; /* @@ -422,6 +424,9 @@ MODULE_SCOPE int TclOODefineSuperclassObjCmd(ClientData clientData, MODULE_SCOPE int TclOODefineUnexportObjCmd(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *const *objv); +MODULE_SCOPE int TclOODefineVariablesObjCmd(ClientData clientData, + Tcl_Interp *interp, int objc, + Tcl_Obj *const *objv); MODULE_SCOPE int TclOODefineClassObjCmd(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *const *objv); @@ -492,6 +497,7 @@ MODULE_SCOPE CallContext *TclOOGetCallContext(Object *oPtr, MODULE_SCOPE Foundation *TclOOGetFoundation(Tcl_Interp *interp); MODULE_SCOPE Tcl_Obj * TclOOGetFwdFromMethod(Method *mPtr); MODULE_SCOPE Proc * TclOOGetProcFromMethod(Method *mPtr); +MODULE_SCOPE Tcl_Obj * TclOOGetMethodBody(Method *mPtr); MODULE_SCOPE int TclOOGetSortedClassMethodList(Class *clsPtr, int flags, const char ***stringsPtr); MODULE_SCOPE int TclOOGetSortedMethodList(Object *oPtr, int flags, @@ -514,6 +520,7 @@ MODULE_SCOPE void TclOORemoveFromSubclasses(Class *subPtr, Class *superPtr); MODULE_SCOPE void TclOOStashContext(Tcl_Obj *objPtr, CallContext *contextPtr); +MODULE_SCOPE void TclOOSetupVariableResolver(Tcl_Namespace *nsPtr); /* * Include all the private API, generated from tclOO.decls. |