summaryrefslogtreecommitdiffstats
path: root/generic/tclOOInt.h
diff options
context:
space:
mode:
authordkf <donal.k.fellows@manchester.ac.uk>2009-04-11 11:18:51 (GMT)
committerdkf <donal.k.fellows@manchester.ac.uk>2009-04-11 11:18:51 (GMT)
commit82bda7f2081c47a741b7e6217cf061137fd35219 (patch)
tree7384ba8f128f12704a52e5fc85f4c8074f6fb83e /generic/tclOOInt.h
parente77f7f0935b2ac4f3f02ec972fc4d14366f880c3 (diff)
downloadtcl-82bda7f2081c47a741b7e6217cf061137fd35219.zip
tcl-82bda7f2081c47a741b7e6217cf061137fd35219.tar.gz
tcl-82bda7f2081c47a741b7e6217cf061137fd35219.tar.bz2
Clarify the rules for resolution of what forwarded methods forward to.
Diffstat (limited to 'generic/tclOOInt.h')
-rw-r--r--generic/tclOOInt.h16
1 files changed, 11 insertions, 5 deletions
diff --git a/generic/tclOOInt.h b/generic/tclOOInt.h
index 3221fcc..1579ddb 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.10 2008/10/31 22:08:32 dkf Exp $
+ * RCS: @(#) $Id: tclOOInt.h,v 1.11 2009/04/11 11:18:51 dkf Exp $
*/
#ifndef TCL_OO_INTERNAL_H
@@ -117,13 +117,19 @@ typedef struct ProcedureMethod {
#define USE_DECLARER_NS 0x80
/*
- * Forwarded methods have the following extra information. It is a
- * single-field structure because this allows for future expansion without
- * changing vast amounts of code.
+ * Forwarded methods have the following extra information.
*/
typedef struct ForwardMethod {
- Tcl_Obj *prefixObj;
+ Tcl_Obj *prefixObj; /* The list of values to use to replace the
+ * object and method name with. Will be a
+ * non-empty list. */
+ int fullyQualified; /* If 1, the command name is fully qualified
+ * and we should let the default Tcl mechanism
+ * handle the command lookup because it is
+ * more efficient. If 0, we need to do a
+ * specialized lookup based on the current
+ * object's namespace. */
} ForwardMethod;
/*