summaryrefslogtreecommitdiffstats
path: root/doc/NRE.3
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2021-04-28 14:30:11 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2021-04-28 14:30:11 (GMT)
commit4c5c001bc8bc5761a41c55400c1dfddbd6c43c81 (patch)
treef13d1f5b6733ce687a932490334cf734f18c3f2b /doc/NRE.3
parent3bfe6dba24b7c5f8f9f8669cb99e2bfb80b0e5da (diff)
parent71dcf14194a52565764654ad3039af42c094e8e8 (diff)
downloadtcl-4c5c001bc8bc5761a41c55400c1dfddbd6c43c81.zip
tcl-4c5c001bc8bc5761a41c55400c1dfddbd6c43c81.tar.gz
tcl-4c5c001bc8bc5761a41c55400c1dfddbd6c43c81.tar.bz2
Merge 8.7
Diffstat (limited to 'doc/NRE.3')
-rw-r--r--doc/NRE.319
1 files changed, 19 insertions, 0 deletions
diff --git a/doc/NRE.3 b/doc/NRE.3
index 20efe2f..a55d351 100644
--- a/doc/NRE.3
+++ b/doc/NRE.3
@@ -227,6 +227,25 @@ int
Any function comprising a routine can push other functions, making it possible
implement looping and sequencing constructs using the function stack.
.PP
+.SH "REFERENCE COUNT MANAGEMENT"
+.PP
+The first \fIobjc\fR values in the \fIobjv\fR array passed to the functions
+\fBTcl_NRCallObjProc\fR, \fBTcl_NREvalObjv\fR, and \fBTcl_NRCmdSwap\fR should
+have a reference count of at least 1; they may have additional references
+taken during the execution.
+.PP
+The \fIobjPtr\fR argument to \fBTcl_NREvalObj\fR and \fBTcl_NRExprObj\fR
+should have a reference count of at least 1, and may have additional
+references taken to it during execution.
+.PP
+The \fIresultObj\fR argument to \fBTcl_NRExprObj\fR should be an unshared
+object.
+.PP
+Use \fBTcl_NRAddCallback\fR to schedule any required final decrementing of the
+reference counts of arguments to any of the other functions on this page, as
+with any other post-processing step in the non-recursive execution engine.
+.PP
+The
.SH "SEE ALSO"
Tcl_CreateCommand(3), Tcl_CreateObjCommand(3), Tcl_EvalObjEx(3), Tcl_GetCommandFromObj(3), Tcl_ExprObj(3)
.SH KEYWORDS