autodoc.git
/
traditional_manual
/
chapter_9.html
version
»
Context lines:
10
20
40
80
file
none
3
autodoc.git/traditional_manual/chapter_9.html:1479:
</dd> <dt class='head--doc'>See also</dt> <dd class='body--doc'><p><code>set_blocking()</code>, <code>set_callbacks</code>, <code>set_read_callback()</code>, <code>set_write_callback()</code>, <code>set_read_oob_callback()</code>, <code>set_write_oob_callback()</code>, <code>set_close_callback()</code> <code>set_nonblocking_keep_callbacks()</code>, <code>set_blocking_keep_callbacks()</code></p> </dd></dl> </dd></dl><dl><dt><h2 class='header'>Class <b class='ms datatype'>Stdio.FILE</b></h2> </dt><dd><dl class='group--doc'>
+
<dt class='head--doc'>Annotations</dt>
+
<dd class='body--annotation'><pre><code>@<code>Pike.Annotations.Implements</code>(<code>File</code>)</code></pre></dd>
<dt class='head--doc'>Description</dt> <dd class='body--doc'><p><code>Stdio.FILE</code> is a buffered version of <code>Stdio.File</code>, it inherits <code>Stdio.File</code> and has most of the functionality of <code>Stdio.File</code>. However, it has an input buffer that allows line-by-line input.</p> <p> It also has support for automatic charset conversion for both input and output (see <code>Stdio.FILE()->set_charset()</code>).</p> </dd> <dt class='head--doc'>Note</dt> <dd class='body--doc'><p>The output part of <code>Stdio.FILE</code> is currently not buffered.</p> </dd></dl>
autodoc.git/traditional_manual/chapter_9.html:3968:
</dd> <dt class='head--doc'>Returns</dt> <dd class='body--doc'><p>Returns the number of bytes written, i.e. <code class='expr'>sizeof(str)</code>.</p> </dd> <dt class='head--doc'>See also</dt> <dd class='body--doc'><p><code>append_file()</code>, <code>read_bytes()</code>, <code>Stdio.File()->open()</code></p> </dd></dl> <dl><dt><h2 class='header'>Class <b class='ms datatype'>Stdio.BlockFile</b></h2> </dt><dd><dl class='group--doc'> <dt class='head--doc'>Annotations</dt>
-
<dd class='body--annotation'><pre><code>@<code>Pike.Annotations.Implements</code>(<code>Stream</code>)</code></pre></dd>
+
<dd class='body--annotation'><pre><code>@<code>Pike.Annotations.Implements</code>(<code>
InputBlockFile</code>)</code></pre></dd><dd class='body--annotation'><pre><code>@<code>Pike.Annotations.Implements</code>(<code>
Stream</code>)</code></pre></dd>
<dt class='head--doc'>Description</dt> <dd class='body--doc'><p>The Stdio.BlockFile API.</p> <p> This class exists purely for typing reasons.</p> <p> Use in types in place of <code>Stdio.File</code> where only blocking I/O is done with the object.</p> </dd> <dt class='head--doc'>See also</dt>
-
<dd class='body--doc'><p><code>Stream</code>, <code>NonblockingStream</code>, <code>File</code>, <code>FILE</code></p>
+
<dd class='body--doc'><p><code>Stream</code>, <code>NonblockingStream</code>, <code>
InputBlockStream</code>, <code>
File</code>, <code>FILE</code></p>
</dd></dl> <hr /> <dl class='group--doc'> <dt class='head--type'><span class='homogen--type'>Inherit</span>
-
<span class='homogen--name'><b>
Stream
</b></span>
+
<span class='homogen--name'><b>
InputBlockFile
</b></span>
</dt>
-
<dd><p><code><span class='datatype'>inherit
Stream
</span> : <span class='inherit'>
Stream
</span></code></p></dd>
+
<dd><p><code><span class='datatype'>inherit
InputBlockFile
</span> : <span class='inherit'>
InputBlockFile
</span></code></p></dd>
</dl> <hr /> <dl class='group--doc'>
-
<dt class='head--type'><span class='homogen--type'>
Method
</span>
-
<span class='homogen--name'><b>
seek
</b></span>
+
<dt class='head--type'><span class='homogen--type'>
Inherit
</span>
+
<span class='homogen--name'><b>
OutputStreamMixin
</b></span>
</dt>
-
<dd><p><code><
code
class='datatype'>
int</code>
<
b><span class='method'>seek<
/span>
(</b><code
class='datatype'>int</code>
<
code
class='
argument
'>
to
</
code
>
,
<
code class='datatype'>string<
/code>
|
<
code class='datatype'>void<
/
code> <code class='argument'>how</code><b>)</b></code></
p></dd>
+
<dd><p><code><
span
class='datatype'>
inherit
OutputStreamMixin
</span>
:
<
span
class='
inherit
'>
OutputStreamMixin
</
span
></code></p></dd>
</dl>
-
-
-
<hr />
-
<dl class='group--doc'>
-
<dt class='head--type'><span class='homogen--type'>Method</span>
-
<span class='homogen--name'><b>tell</b></span>
-
</dt>
-
<dd><p><code><code class='datatype'>int</code> <b><span class='method'>tell</span>(</b><b>)</b></code></p></dd>
-
</dl>
+
</dd></dl><dl><dt><h2 class='header'>Class <b class='ms datatype'>Stdio.FakeFile</b></h2> </dt><dd><dl class='group--doc'> <dt class='head--doc'>Annotations</dt> <dd class='body--annotation'><pre><code>@<code>Pike.Annotations.Implements</code>(<code>Stdio.BlockFile</code>)</code></pre></dd><dd class='body--annotation'><pre><code>@<code>Pike.Annotations.Implements</code>(<code>Stdio.NonblockingStream</code>)</code></pre></dd> <dt class='head--doc'>Description</dt> <dd class='body--doc'><p>A string wrapper that pretends to be a <code>Stdio.File</code> object in addition to some features of a <code>Stdio.FILE</code> object.</p> </dd></dl> <hr />
autodoc.git/traditional_manual/chapter_9.html:4729:
</dl> <hr /> <dl class='group--doc'> <dt class='head--type'><span class='homogen--type'>Method</span> <span class='homogen--name'><b>write</b></span> </dt> <dd><p><code><code class='datatype'>int</code> <b><span class='method'>write</span>(</b><code class='object unresolved'>sprintf_format</code>|<code class='datatype'>array</code>(<code class='datatype'>string(8bit)</code>) <code class='argument'>data</code>, <code class='object unresolved'>sprintf_args</code> ... <code class='argument'>args</code><b>)</b></code></p></dd> </dl>
-
</dd></dl></dd></dl><dl><dt><h2 class='header'>Class <b class='ms datatype'>Stdio.
NonblockingStream
</b></h2>
+
</dd></dl></dd></dl><dl><dt><h2 class='header'>Class <b class='ms datatype'>Stdio.
InputBlockFile
</b></h2>
</dt><dd><dl class='group--doc'> <dt class='head--doc'>Annotations</dt>
-
<dd class='body--annotation'><pre><code>@<code>Pike.Annotations.Implements</code>(<code>
Stream
</code>)</code></pre></dd>
+
<dd class='body--annotation'><pre><code>@<code>Pike.Annotations.Implements</code>(<code>
InputStream
</code>)</code></pre></dd>
<dt class='head--doc'>Description</dt>
-
<dd class='body--doc'><p>The Stdio.
NonblockingStream
API.</p>
+
<dd class='body--doc'><p>The Stdio.
InputBlockFile
API.</p>
<p> This class exists purely for typing reasons.</p>
-
+
<p> Use in types in place of <code>Stdio.File</code> where only blocking
+
I/O in the read direction is done with the object.</p>
+
</dd>
+
<dt class='head--doc'>See also</dt>
+
<dd class='body--doc'><p><code>InputStream</code>, <code>NonblockingInputStream</code>, <code>BlockFile</code>, <code>File</code>, <code>FILE</code></p>
+
</dd></dl>
+
+
<hr />
+
<dl class='group--doc'>
+
<dt class='head--type'><span class='homogen--type'>Inherit</span>
+
<span class='homogen--name'><b>InputStream</b></span>
+
</dt>
+
<dd><p><code><span class='datatype'>inherit InputStream</span> : <span class='inherit'>InputStream</span></code></p></dd>
+
</dl>
+
+
+
<hr />
+
<dl class='group--doc'>
+
<dt class='head--type'><span class='homogen--type'>Method</span>
+
<span class='homogen--name'><b>seek</b></span>
+
</dt>
+
<dd><p><code><code class='datatype'>int</code> <b><span class='method'>seek</span>(</b><code class='datatype'>int</code> <code class='argument'>to</code>, <code class='datatype'>string</code>|<code class='datatype'>void</code> <code class='argument'>how</code><b>)</b></code></p></dd>
+
</dl>
+
+
+
<hr />
+
<dl class='group--doc'>
+
<dt class='head--type'><span class='homogen--type'>Method</span>
+
<span class='homogen--name'><b>tell</b></span>
+
</dt>
+
<dd><p><code><code class='datatype'>int</code> <b><span class='method'>tell</span>(</b><b>)</b></code></p></dd>
+
</dl>
+
</dd></dl><dl><dt><h2 class='header'>Class <b class='ms datatype'>Stdio.InputStream</b></h2>
+
</dt><dd><dl class='group--doc'>
+
<dt class='head--doc'>Description</dt>
+
<dd class='body--doc'><p>The Stdio.InputStream API.</p>
+
<p> This class exists purely for typing reasons.</p>
+
<p> Use in types in place of <code>Stdio.File</code> where only blocking
+
stream-oriented I/O in the read direction is done with the object.</p>
+
<p> This class lists the minimum functionality guaranteed to exist in
+
all Stream objects that are opened for reading.</p>
+
</dd>
+
<dt class='head--doc'>See also</dt>
+
<dd class='body--doc'><p><code>Stream</code>, <code>NonblockingInputStream</code>, <code>InputBlockFile</code>, <code>File</code>, <code>FILE</code></p>
+
</dd></dl>
+
+
<hr />
+
<dl class='group--doc'>
+
<dt class='head--type'><span class='homogen--type'>Method</span>
+
<span class='homogen--name'><b>close</b></span>
+
</dt>
+
<dd><p><code><code class='datatype'>int</code> <b><span class='method'>close</span>(</b><b>)</b></code></p></dd>
+
</dl>
+
+
+
<hr />
+
<dl class='group--doc'>
+
<dt class='head--type'><span class='homogen--type'>Method</span>
+
<span class='homogen--name'><b>read</b></span>
+
</dt>
+
<dd><p><code><code class='datatype'>string</code> <b><span class='method'>read</span>(</b><code class='datatype'>int(0..)</code>|<code class='datatype'>void</code> <code class='argument'>nbytes</code><b>)</b></code></p></dd>
+
</dl>
+
+
+
<hr />
+
<dl class='group--doc'>
+
<dt class='head--type'><span class='homogen--type'>Method</span>
+
<span class='homogen--name'><b>read_oob</b></span><br>
+
<span class='homogen--type'>Method</span>
+
<span class='homogen--name'><b>tcgetattr</b></span><br>
+
<span class='homogen--type'>Method</span>
+
<span class='homogen--name'><b>tcsetattr</b></span><br>
+
</dt>
+
<dd><p><code><code class='modifier'>optional</code> <code class='datatype'>string</code> <b><span class='method'>read_oob</span>(</b><code class='datatype'>int(0..)</code>|<code class='datatype'>void</code> <code class='argument'>nbytes</code><b>)</b></code><br>
+
<code><code class='modifier'>optional</code> <code class='datatype'>mapping</code>(<code class='datatype'>string</code>:<code class='datatype'>int</code>)|<code class='datatype'>zero</code> <b><span class='method'>tcgetattr</span>(</b><b>)</b></code><br>
+
<code><code class='modifier'>optional</code> <code class='datatype'>int</code> <b><span class='method'>tcsetattr</span>(</b><code class='datatype'>mapping</code>(<code class='datatype'>string</code>:<code class='datatype'>int</code>) <code class='argument'>attr</code>, <code class='datatype'>string</code>|<code class='datatype'>void</code> <code class='argument'>when</code><b>)</b></code></p></dd>
+
</dl>
+
</dd></dl><dl><dt><h2 class='header'>Class <b class='ms datatype'>Stdio.NonblockingInputStream</b></h2>
+
</dt><dd><dl class='group--doc'>
+
<dt class='head--doc'>Annotations</dt>
+
<dd class='body--annotation'><pre><code>@<code>Pike.Annotations.Implements</code>(<code>InputStream</code>)</code></pre></dd>
+
<dt class='head--doc'>Description</dt>
+
<dd class='body--doc'><p>The Stdio.NonblockingInputStream API.</p>
+
<p> This class exists purely for typing reasons.</p>
<p> Use in types in place of <code>Stdio.File</code> where nonblocking and/or blocking stream-oriented I/O is done with the object.</p> </dd> <dt class='head--doc'>See also</dt>
-
<dd class='body--doc'><p><code>
Stream
</code>, <code>
BlockFile
</code>, <code>File</code>, <code>FILE</code></p>
+
<dd class='body--doc'><p><code>
InputStream
</code>, <code>
NonblockingStream
</code>, <code>
InputBlockFile</code>, <code>
File</code>, <code>FILE</code></p>
</dd></dl> <hr /> <dl class='group--doc'> <dt class='head--type'><span class='homogen--type'>Inherit</span>
-
<span class='homogen--name'><b>
Stream
</b></span>
+
<span class='homogen--name'><b>
InputStream
</b></span>
</dt>
-
<dd><p><code><span class='datatype'>inherit
Stream
</span> : <span class='inherit'>
Stream
</span></code></p></dd>
+
<dd><p><code><span class='datatype'>inherit
InputStream
</span> : <span class='inherit'>
InputStream
</span></code></p></dd>
</dl> <hr /> <dl class='group--doc'> <dt class='head--type'><span class='homogen--type'>Method</span> <span class='homogen--name'><b>set_blocking</b></span> </dt> <dd><p><code><code class='datatype'>void</code> <b><span class='method'>set_blocking</span>(</b><b>)</b></code></p></dd> </dl>
autodoc.git/traditional_manual/chapter_9.html:4775:
</dt> <dd><p><code><code class='datatype'>void</code> <b><span class='method'>set_blocking_keep_callbacks</span>(</b><b>)</b></code></p></dd> </dl> <hr /> <dl class='group--doc'> <dt class='head--type'><span class='homogen--type'>Method</span> <span class='homogen--name'><b>set_read_callback</b></span><br> <span class='homogen--type'>Method</span>
-
<span class='homogen--name'><b>set_write_callback</b></span><br>
-
<span class='homogen--type'>Method</span>
+
<span class='homogen--name'><b>set_close_callback</b></span><br> <span class='homogen--type'>Method</span> <span class='homogen--name'><b>set_fs_event_callback</b></span><br> </dt> <dd><p><code><code class='datatype'>void</code> <b><span class='method'>set_read_callback</span>(</b><code class='datatype'>function</code>(:<code class='datatype void'>void</code>)|<code class='datatype'>zero</code> <code class='argument'>f</code><b>)</b></code><br>
-
<code><code class='datatype'>void</code> <b><span class='method'>set_write_callback</span>(</b><code class='datatype'>function</code>(:<code class='datatype void'>void</code>)|<code class='datatype'>zero</code> <code class='argument'>f</code><b>)</b></code><br>
+
<code><code class='datatype'>void</code> <b><span class='method'>set_close_callback</span>(</b><code class='datatype'>function</code>(:<code class='datatype void'>void</code>)|<code class='datatype'>zero</code> <code class='argument'>f</code><b>)</b></code><br> <code><code class='modifier'>optional</code> <code class='datatype'>void</code> <b><span class='method'>set_fs_event_callback</span>(</b><code class='datatype'>function</code>(:<code class='datatype void'>void</code>)|<code class='datatype'>zero</code> <code class='argument'>f</code>, <code class='datatype'>int</code> <code class='argument'>event_mask</code>, <code class='datatype'>mixed</code> ... <code class='argument'>rest</code><b>)</b></code></p></dd> </dl> <hr /> <dl class='group--doc'> <dt class='head--type'><span class='homogen--type'>Method</span> <span class='homogen--name'><b>set_nodelay</b></span> </dt>
autodoc.git/traditional_manual/chapter_9.html:4818:
<dt class='head--type'><span class='homogen--type'>Method</span> <span class='homogen--name'><b>set_nonblocking_keep_callbacks</b></span> </dt> <dd><p><code><code class='datatype'>void</code> <b><span class='method'>set_nonblocking_keep_callbacks</span>(</b><b>)</b></code></p></dd> </dl> <hr /> <dl class='group--doc'> <dt class='head--type'><span class='homogen--type'>Method</span>
-
<span class='homogen--name'><b>set_read_oob_callback</b></span>
<br>
-
<span class='homogen--type'>Method</span>
-
<span class='homogen--name'><b>set_write_oob_callback</b></span><br>
+
<span class='homogen--name'><b>set_read_oob_callback</b></span>
</dt>
-
<dd><p><code><code class='modifier'>optional</code> <code class='datatype'>void</code> <b><span class='method'>set_read_oob_callback</span>(</b><code class='datatype'>function</code>(:<code class='datatype void'>void</code>)|<code class='datatype'>zero</code> <code class='argument'>f</code><b>)</b></code><
br>
-
<code><code class='modifier'>optional<
/
code> <code class='datatype'>void</code> <b><span class='method'>set_write_oob_callback</span>(</b><code class='datatype'>function</code>(:<code class='datatype void'>void</code>)|<code class='datatype'>zero</code> <code class='argument'>f</code><b>)</b></code></
p></dd>
+
<dd><p><code><code class='modifier'>optional</code> <code class='datatype'>void</code> <b><span class='method'>set_read_oob_callback</span>(</b><code class='datatype'>function</code>(:<code class='datatype void'>void</code>)|<code class='datatype'>zero</code> <code class='argument'>f</code><b>)</b></code></p></dd>
</dl>
-
</dd></dl><dl><dt><h2 class='header'>Class <b class='ms datatype'>Stdio.
Stream
</b></h2>
+
</dd></dl><dl><dt><h2 class='header'>Class <b class='ms datatype'>Stdio.
NonblockingOutputStreamMixin
</b></h2>
</dt><dd><dl class='group--doc'> <dt class='head--doc'>Description</dt>
-
<dd class='body--doc'><p>
The
Stdio.Stream
API
.</p>
+
<dd class='body--doc'><p>
Mixin
for
converting a <code>NonblockingInputStream</code>
+
into a <code>NonblockingStream</code>
.</p>
<p> This class exists purely for typing reasons.</p>
-
<p> Use in types in place of <code>Stdio.File</code> where only blocking
-
stream-oriented I/O is done with the object.</p>
-
<p> This class lists the minimum functionality guaranteed to exist in
-
all Stream objects.</p>
+
</dd>
-
+
<dt class='head--doc'>Note</dt>
+
<dd class='body--doc'><p>Typically you will not want to use this class
+
directly, but instead use one of the classes
+
that inherits it.</p>
+
</dd>
<dt class='head--doc'>See also</dt>
-
<dd class='body--doc'><p><code>
NonblockingStream
</code>, <code>
BlockFile
</code>
,
<
code>File<
/
code>, <code>FILE</code></
p>
+
<dd class='body--doc'><p><code>
NonblockingInputStream
</code>, <code>
NonblockingStream
</code></p>
</dd></dl> <hr /> <dl class='group--doc'>
-
<dt class='head--type'><span class='homogen--type'>
Method
</span>
-
<span class='homogen--name'><b>
close
</b></span>
+
<dt class='head--type'><span class='homogen--type'>
Inherit
</span>
+
<span class='homogen--name'><b>
OutputStreamMixin
</b></span>
</dt>
-
<dd><p><code><
code
class='datatype'>
int
</
code
> <
b><
span class='
method
'>
close
</span>
(
</
b><b>)</b></
code></p></dd>
+
<dd><p><code><
span
class='datatype'>
inherit OutputStreamMixin
</
span
>
:
<span class='
inherit
'>
OutputStreamMixin
</span></code></p></dd>
</dl> <hr /> <dl class='group--doc'> <dt class='head--type'><span class='homogen--type'>Method</span>
-
<span class='homogen--name'><b>
read
</b></span>
+
<span class='homogen--name'><b>
set_write_callback
</b></span>
</dt>
-
<dd><p><code><code class='datatype'>
string
</code> <b><span class='method'>
read
</span>(</b><code class='datatype'>
int
(
0..
)</code> <code class='argument'>
nbytes
</code><b>)</b></code></p></dd>
+
<dd><p><code><code class='datatype'>
void
</code> <b><span class='method'>
set_write_callback
</span>(</b><code class='datatype'>
function</code>
(
:<code class='datatype void'>void</code>
)
|
<
code class='datatype'>zero<
/code> <code class='argument'>
f
</code><b>)</b></code></p></dd>
</dl> <hr /> <dl class='group--doc'> <dt class='head--type'><span class='homogen--type'>Method</span>
-
<span class='homogen--name'><b>
read
_
oob</b></span><br>
-
<span class='homogen--type'>Method</span>
-
<span class='homogen--name'><b>
write_oob</b></span>
<br>
-
<span class='homogen--type'>Method</span>
-
<span class='homogen--name'><b>tcgetattr</b></span><br>
-
<span class='homogen--type'>Method</span>
-
<span class='homogen--name'><b>tcsetattr</b></span><br>
+
<span class='homogen--name'><b>
set
_write_oob
_callback
</b></span>
</dt>
-
<dd><p><code><code class='modifier'>optional</code> <code class='datatype'>
string
</code> <b><span class='method'>
read
_
oob</span>(</b><code class='datatype'>int(0..)</code> <code class='argument'>nbytes</code><b>)</b></code><br>
-
<code><code class='modifier'>optional</code> <code class='datatype'>int(-1..)</code> <b><span class='method'>
write_oob</span>(</b><code class='datatype'>
string
</code>
<code class='argument'>data</code><b>)</b></code><br>
-
<code><code class='modifier'>optional</code> <code class='datatype'>mapping</code>
(<code class='datatype
'>string</code>:<code
class=
'
datatype'
>
int
</code>)|<code class='datatype'>zero</code> <
b><span class='method'>tcgetattr</span>(</b><b>)</b></
code
><br>
-
<code><code
class='
modifier'>optional</code> <code class='datatype'>int</code> <b><span class='method'>tcsetattr</span>(</b><code class='datatype'>mapping</code>(<code class='datatype'>string</code>:<code class='datatype'>int</code>) <code class='
argument'>
attr
</code>
,
<
code class='datatype'>string</code>|<code class='datatype'>void</code> <code class='argument'>when</code><
b>)</b></code></p></dd>
+
<dd><p><code><code class='modifier'>optional</code> <code class='datatype'>
void
</code> <b><span class='method'>
set
_write_oob
_callback
</span>(</b><code class='datatype'>
function
</code>(
:
<code class='datatype
void
'>
void
</code>)|<code class='datatype'>zero</code> <code class='argument'>
f
</code><b>)</b></code></p></dd>
</dl>
-
+
</dd></dl><dl><dt><h2 class='header'>Class <b class='ms datatype'>Stdio.NonblockingStream</b></h2>
+
</dt><dd><dl class='group--doc'>
+
<dt class='head--doc'>Annotations</dt>
+
<dd class='body--annotation'><pre><code>@<code>Pike.Annotations.Implements</code>(<code>Stream</code>)</code></pre></dd>
+
<dt class='head--doc'>Description</dt>
+
<dd class='body--doc'><p>The Stdio.NonblockingStream API.</p>
+
<p> This class exists purely for typing reasons.</p>
+
<p> Use in types in place of <code>Stdio.File</code> where nonblocking and/or
+
blocking stream-oriented I/O is done with the object.</p>
+
</dd>
+
<dt class='head--doc'>See also</dt>
+
<dd class='body--doc'><p><code>Stream</code>, <code>NonblockingInputStream</code>, <code>BlockFile</code>, <code>File</code>, <code>FILE</code></p>
+
</dd></dl>
-
+
<hr />
+
<dl class='group--doc'>
+
<dt class='head--type'><span class='homogen--type'>Inherit</span>
+
<span class='homogen--name'><b>NonblockingInputStream</b></span>
+
</dt>
+
<dd><p><code><span class='datatype'>inherit NonblockingInputStream</span> : <span class='inherit'>NonblockingInputStream</span></code></p></dd>
+
</dl>
-
+
<hr /> <dl class='group--doc'>
-
+
<dt class='head--type'><span class='homogen--type'>Inherit</span>
+
<span class='homogen--name'><b>NonblockingOutputStreamMixin</b></span>
+
</dt>
+
<dd><p><code><span class='datatype'>inherit NonblockingOutputStreamMixin</span> : <span class='inherit'>NonblockingOutputStreamMixin</span></code></p></dd>
+
</dl>
+
</dd></dl><dl><dt><h2 class='header'>Class <b class='ms datatype'>Stdio.OutputStreamMixin</b></h2>
+
</dt><dd><dl class='group--doc'>
+
<dt class='head--doc'>Description</dt>
+
<dd class='body--doc'><p>Mixin for converting an <code>InputStream</code> into a <code>Stream</code>.</p>
+
<p> This class exists purely for typing reasons.</p>
+
</dd>
+
<dt class='head--doc'>Note</dt>
+
<dd class='body--doc'><p>Typically you will not want to use this class
+
directly, but instead use one of the classes
+
that inherits it.</p>
+
</dd>
+
<dt class='head--doc'>See also</dt>
+
<dd class='body--doc'><p><code>InputStream</code>, <code>Stream</code>, <code>BlockFile</code></p>
+
</dd></dl>
+
+
<hr />
+
<dl class='group--doc'>
<dt class='head--type'><span class='homogen--type'>Method</span> <span class='homogen--name'><b>write</b></span> </dt> <dd><p><code><code class='datatype'>int(-1..)</code> <b><span class='method'>write</span>(</b><code class='datatype'>string</code> <code class='argument'>data</code><b>)</b></code></p></dd> </dl>
-
+
+
+
<hr />
+
<dl class='group--doc'>
+
<dt class='head--type'><span class='homogen--type'>Method</span>
+
<span class='homogen--name'><b>write_oob</b></span>
+
</dt>
+
<dd><p><code><code class='modifier'>optional</code> <code class='datatype'>int(-1..)</code> <b><span class='method'>write_oob</span>(</b><code class='datatype'>string</code> <code class='argument'>data</code><b>)</b></code></p></dd>
+
</dl>
+
</dd></dl><dl><dt><h2 class='header'>Class <b class='ms datatype'>Stdio.Stream</b></h2>
+
</dt><dd><dl class='group--doc'>
+
<dt class='head--doc'>Annotations</dt>
+
<dd class='body--annotation'><pre><code>@<code>Pike.Annotations.Implements</code>(<code>InputStream</code>)</code></pre></dd>
+
<dt class='head--doc'>Description</dt>
+
<dd class='body--doc'><p>The Stdio.Stream API.</p>
+
<p> This class exists purely for typing reasons.</p>
+
<p> Use in types in place of <code>Stdio.File</code> where only blocking
+
stream-oriented I/O is done with the object.</p>
+
<p> This class lists the minimum functionality guaranteed to exist in
+
all Stream objects.</p>
+
</dd>
+
<dt class='head--doc'>See also</dt>
+
<dd class='body--doc'><p><code>InputStream</code>, <code>NonblockingStream</code>, <code>BlockFile</code>, <code>File</code>, <code>FILE</code></p>
+
</dd></dl>
+
+
<hr />
+
<dl class='group--doc'>
+
<dt class='head--type'><span class='homogen--type'>Inherit</span>
+
<span class='homogen--name'><b>InputStream</b></span>
+
</dt>
+
<dd><p><code><span class='datatype'>inherit InputStream</span> : <span class='inherit'>InputStream</span></code></p></dd>
+
</dl>
+
+
+
<hr />
+
<dl class='group--doc'>
+
<dt class='head--type'><span class='homogen--type'>Inherit</span>
+
<span class='homogen--name'><b>OutputStreamMixin</b></span>
+
</dt>
+
<dd><p><code><span class='datatype'>inherit OutputStreamMixin</span> : <span class='inherit'>OutputStreamMixin</span></code></p></dd>
+
</dl>
</dd></dl><dl><dt><h2 class='header'>Class <b class='ms datatype'>Stdio.sendfile</b></h2> </dt><dd><dl class='group--doc'> <dt class='head--doc'>Description</dt> <dd class='body--doc'><p>Send <code class='expr'>headers + from_fd[off..off+len-1] + trailers</code> to <code class='expr'>to_fd</code> asyncronously.</p> </dd> <dt class='head--doc'>Note</dt> <dd class='body--doc'><p>This is the low-level implementation, which has several limitations. You probably want to use <code>Stdio.sendfile()</code> instead.</p> </dd>