Tcl Source Code

Artifact [3e3ada1bbe]
Login

Artifact 3e3ada1bbe06295ed483a76b0f7ae76c2f7a6b28:

Attachment "CrtChannel.diff" to ticket [1104682fff] added by davidw 2005-01-19 01:24:25.
--- CrtChannel.3	12 Nov 2004 09:01:25 -0000	1.24
+++ CrtChannel.3	18 Jan 2005 18:21:45 -0000
@@ -329,13 +329,14 @@
 } 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 and \fIhandlerProc\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.
 .PP
 The user should only use the above structure for \fBTcl_ChannelType\fR
 instantiation.  When referencing fields in a \fBTcl_ChannelType\fR