summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authordkf <donal.k.fellows@manchester.ac.uk>2017-06-22 22:03:06 (GMT)
committerdkf <donal.k.fellows@manchester.ac.uk>2017-06-22 22:03:06 (GMT)
commit3e1f74a42db81eb1bd0b963a6ce60f1c44b1bf7c (patch)
treed2971482ae96592884ec9cd5869af20851090c29 /doc
parent2570da989eed0e3768e8c6aa4535c1542695bb9c (diff)
parent4bcc67eec81872423901389198828d4679d7777d (diff)
downloadtcl-3e1f74a42db81eb1bd0b963a6ce60f1c44b1bf7c.zip
tcl-3e1f74a42db81eb1bd0b963a6ce60f1c44b1bf7c.tar.gz
tcl-3e1f74a42db81eb1bd0b963a6ce60f1c44b1bf7c.tar.bz2
Implement TIP #473: Allow a Defined Target Namespace in oo::copy
Diffstat (limited to 'doc')
-rw-r--r--doc/copy.n22
1 files changed, 16 insertions, 6 deletions
diff --git a/doc/copy.n b/doc/copy.n
index 100d564..789a76c 100644
--- a/doc/copy.n
+++ b/doc/copy.n
@@ -14,7 +14,7 @@ oo::copy \- create copies of objects and classes
.nf
package require TclOO
-\fBoo::copy\fI sourceObject \fR?\fItargetObject\fR?
+\fBoo::copy\fI sourceObject \fR?\fItargetObject\fR? ?\fItargetNamespace\fR?
.fi
.BE
.SH DESCRIPTION
@@ -22,11 +22,21 @@ package require TclOO
The \fBoo::copy\fR command creates a copy of an object or class. It takes the
name of the object or class to be copied, \fIsourceObject\fR, and optionally
the name of the object or class to create, \fItargetObject\fR, which will be
-resolved relative to the current namespace if not an absolute qualified name.
-If \fItargetObject\fR is omitted, a new name is chosen. The copied object will
-be of the same class as the source object, and will have all its per-object
-methods copied. If it is a class, it will also have all the class methods in
-the class copied, but it will not have any of its instances copied.
+resolved relative to the current namespace if not an absolute qualified name
+and
+.VS TIP473
+\fItargetNamespace\fR which is the name of the namespace that will hold the
+internal state of the object (\fBmy\fR command, etc.); it \fImust not\fR
+refer to an existing namespace.
+If either \fItargetObject\fR or \fItargetNamespace\fR is omitted or is given
+as the empty string, a new name is chosen. Names, unless specified, are
+chosen with the same algorithm used by the \fBnew\fR method of
+\fBoo::class\fR.
+.VE TIP473
+The copied object will be of the same class as the source object, and will have
+all its per-object methods copied. If it is a class, it will also have all the
+class methods in the class copied, but it will not have any of its instances
+copied.
.PP
.VS
After the \fItargetObject\fR has been created and all definitions of its