summaryrefslogtreecommitdiffstats
path: root/doc/global.n
diff options
context:
space:
mode:
authordkf <dkf@noemail.net>2004-10-27 12:52:31 (GMT)
committerdkf <dkf@noemail.net>2004-10-27 12:52:31 (GMT)
commit46669897decc1c69eb2226d713c9ddaa026431ec (patch)
tree3ed6ba33b7a0eb1bb7d89c83f86bb2f420d5284a /doc/global.n
parent739cb7dee1505acf27c9efe8995d76ecbf76a098 (diff)
downloadtcl-46669897decc1c69eb2226d713c9ddaa026431ec.zip
tcl-46669897decc1c69eb2226d713c9ddaa026431ec.tar.gz
tcl-46669897decc1c69eb2226d713c9ddaa026431ec.tar.bz2
More doc fix backporting
FossilOrigin-Name: 63610c2fd0b97f8b6c13c39e453c7b7fcc8decc2
Diffstat (limited to 'doc/global.n')
-rw-r--r--doc/global.n37
1 files changed, 28 insertions, 9 deletions
diff --git a/doc/global.n b/doc/global.n
index d4fd4c0..ece44a1 100644
--- a/doc/global.n
+++ b/doc/global.n
@@ -5,7 +5,7 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
-'\" RCS: @(#) $Id: global.n,v 1.4 2002/06/11 13:22:35 msofer Exp $
+'\" RCS: @(#) $Id: global.n,v 1.4.2.1 2004/10/27 12:52:40 dkf Exp $
'\"
.so man.macros
.TH global n "" Tcl "Tcl Built-In Commands"
@@ -19,15 +19,34 @@ global \- Access global variables
.SH DESCRIPTION
.PP
-This command is ignored unless a Tcl procedure is being interpreted.
-If so then it declares the given \fIvarname\fR's to be global variables
-rather than local ones.
-Global variables are variables in the global namespace.
-For the duration of the current procedure
-(and only while executing in the current procedure),
-any reference to any of the \fIvarname\fRs
-will refer to the global variable by the same name.
+This command has no effect unless executed in the context of a proc body.
+If the \fBglobal\fR command is executed in the context of a proc body, it
+creates local variables linked to the corresponding global variables (and
+therefore these variables are listed by info locals).
.PP
+If \fIvarname\fR contains namespace qualifiers, the local variable's name is
+the unqualified name of the global variable, as determined by the
+\fBnamespace tail\fR command.
+.SH EXAMPLES
+This procedure sets the namespace variable \fI::a::x\fR
+.CS
+proc reset {} {
+ \fBglobal\fR a::x
+ set x 0
+}
+.CE
+.PP
+This procedure accumulates the strings passed to it in a global
+buffer, separated by newlines. It is useful for situations when you
+want to build a message piece-by-piece (as if with \fBputs\fR) but
+send that full message in a single piece (e.g. over a connection
+opened with \fBsocket\fR or as part of a counted HTTP response).
+.CS
+proc accum {string} {
+ \fBglobal\fR accumulator
+ append accumulator $string \\n
+}
+.CE
.SH "SEE ALSO"
namespace(n), upvar(n), variable(n)