summaryrefslogtreecommitdiffstats
path: root/doc/CrtChannel.3
diff options
context:
space:
mode:
Diffstat (limited to 'doc/CrtChannel.3')
-rw-r--r--doc/CrtChannel.320
1 files changed, 11 insertions, 9 deletions
diff --git a/doc/CrtChannel.3 b/doc/CrtChannel.3
index f4751b5..f4ff280 100644
--- a/doc/CrtChannel.3
+++ b/doc/CrtChannel.3
@@ -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: CrtChannel.3,v 1.31 2005/06/07 20:37:40 dkf Exp $
+'\" RCS: @(#) $Id: CrtChannel.3,v 1.32 2005/10/05 20:36:16 andreas_kupries Exp $
.so man.macros
.TH Tcl_CreateChannel 3 8.4 Tcl "Tcl Library Procedures"
.BS
@@ -334,20 +334,22 @@ typedef struct Tcl_ChannelType {
Tcl_DriverFlushProc *\fIflushProc\fR;
Tcl_DriverHandlerProc *\fIhandlerProc\fR;
Tcl_DriverWideSeekProc *\fIwideSeekProc\fR;
-.VS 8.5
Tcl_DriverThreadActionProc *\fIthreadActionProc\fR;
+.VS 8.5
Tcl_DriverTruncateProc *\fItruncateProc\fR;
.VE 8.5
} Tcl_ChannelType;
.CE
.PP
-The driver must provide implementations for all functions except
-\fIblockModeProc\fR, \fIseekProc\fR, \fIsetOptionProc\fR,
-\fIgetOptionProc\fR, and \fIclose2Proc\fR, which may be specified as
-NULL. Other functions that can not be implemented for this type of
-device should return \fBEINVAL\fR when invoked to indicate that they
-are not implemented, except in the case of \fIflushProc\fR and
-\fIhandlerProc\fR, which should specified as NULL if not otherwise defined.
+It is not necessary to provide implementations for all channel
+operations. Those which are not necessary may be set to NULL in the
+struct: \fIblockModeProc\fR, \fIseekProc\fR, \fIsetOptionProc\fR,
+\fIgetOptionProc\fR, and \fIclose2Proc\fR, in addition to
+\fIflushProc\fR, \fIhandlerProc\fR, \fIthreadActionProc\fR, and
+\fItruncateProc\fR. Other functions that cannot be implemented in a
+meaningful way should return \fBEINVAL\fR when called, to indicate
+that the operations they represent are not available. Also note that
+\fIwideSeekProc\fR can be NULL if \fIseekProc\fR is.
.PP
The user should only use the above structure for \fBTcl_ChannelType\fR
instantiation. When referencing fields in a \fBTcl_ChannelType\fR