<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <link rel="stylesheet" href="style.css" type="text/css"> <meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> <link rel="Start" href="index.html"> <link rel="previous" href="ExtUnixAll.HostEndian.html"> <link rel="Up" href="ExtUnixAll.html"> <link title="Index of types" rel=Appendix href="index_types.html"> <link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> <link title="Index of values" rel=Appendix href="index_values.html"> <link title="Index of modules" rel=Appendix href="index_modules.html"> <link title="ExtUnix" rel="Chapter" href="ExtUnix.html"> <link title="ExtUnixAll" rel="Chapter" href="ExtUnixAll.html"> <link title="ExtUnixSpecific" rel="Chapter" href="ExtUnixSpecific.html"><link title="pread" rel="Section" href="#2_pread"> <link title="pwrite" rel="Section" href="#2_pwrite"> <link title="read" rel="Section" href="#2_read"> <link title="write" rel="Section" href="#2_write"> <link title="Byte order conversion" rel="Section" href="#2_Byteorderconversion"> <title>ExtUnixAll.BA</title> </head> <body> <div class="navbar"><a class="pre" href="ExtUnixAll.HostEndian.html" title="ExtUnixAll.HostEndian">Previous</a> <a class="up" href="ExtUnixAll.html" title="ExtUnixAll">Up</a> </div> <h1>Module <a href="type_ExtUnixAll.BA.html">ExtUnixAll.BA</a></h1> <pre><span class="keyword">module</span> BA: <code class="code">sig</code> <a href="ExtUnixAll.BA.html">..</a> <code class="code">end</code></pre><div class="info"> </div> <hr width="100%"> <br> <h2 id="2_pread">pread</h2> <p> <b>Author:</b> Goswin von Brederlow<br> <pre><span id="VALunsafe_all_pread"><span class="keyword">val</span> unsafe_all_pread</span> : <code class="type">Unix.file_descr -> int -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><div class="info"> <code class="code">all_pread fd off buf</code> reads up to <code class="code">size of buf</code> bytes from file descriptor <code class="code">fd</code> at offset <code class="code">off</code> (from the start of the file) into the buffer <code class="code">buf</code>. The file offset is not changed. <p> <code class="code">all_pread</code> repeats the read operation until all characters have been read or an error occurs. Returns less than the number of characters requested on EAGAIN, EWOULDBLOCK or End-of-file but only ever returns 0 on End-of-file. Continues the read operation on EINTR. Raises an Unix.Unix_error exception in all other cases.<br> </div> <pre><span id="VALall_pread"><span class="keyword">val</span> all_pread</span> : <code class="type">Unix.file_descr -> int -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><pre><span id="VALunsafe_single_pread"><span class="keyword">val</span> unsafe_single_pread</span> : <code class="type">Unix.file_descr -> int -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><div class="info"> <code class="code">single_pread fd off buf</code> reads up to <code class="code">size of buf</code> bytes from file descriptor <code class="code">fd</code> at offset <code class="code">off</code> (from the start of the file) into the buffer <code class="code">buf</code>. The file offset is not changed. <p> <code class="code">single_pread</code> attempts to read only once. Returns the number of characters read or raises an Unix.Unix_error exception. Unlike the string variant of the same name there is no limit on the number of characters read.<br> </div> <pre><span id="VALsingle_pread"><span class="keyword">val</span> single_pread</span> : <code class="type">Unix.file_descr -> int -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><pre><span id="VALunsafe_pread"><span class="keyword">val</span> unsafe_pread</span> : <code class="type">Unix.file_descr -> int -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><div class="info"> <code class="code">pread fd off buf</code> reads up to <code class="code">size of buf</code> bytes from file descriptor <code class="code">fd</code> at offset <code class="code">off</code> (from the start of the file) into the buffer <code class="code">buf</code>. The file offset is not changed. <p> <code class="code">pread</code> repeats the read operation until all characters have been read or an error occurs. Raises an Unix.Unix_error exception if 0 characters could be read before an error occurs. Continues the read operation on EINTR. Returns the number of characters written in all other cases.<br> </div> <pre><span id="VALpread"><span class="keyword">val</span> pread</span> : <code class="type">Unix.file_descr -> int -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><pre><span id="VALunsafe_intr_pread"><span class="keyword">val</span> unsafe_intr_pread</span> : <code class="type">Unix.file_descr -> int -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><div class="info"> <code class="code">intr_pread fd off buf</code> reads up to <code class="code">size of buf</code> bytes from file descriptor <code class="code">fd</code> at offset <code class="code">off</code> (from the start of the file) into the buffer <code class="code">buf</code>. The file offset is not changed. <p> <code class="code">intr_pread</code> repeats the read operation until all characters have been read or an error occurs. Raises an Unix.Unix_error exception if 0 characters could be read before an error occurs. Does NOT continue on EINTR. Returns the number of characters written in all other cases.<br> </div> <pre><span id="VALintr_pread"><span class="keyword">val</span> intr_pread</span> : <code class="type">Unix.file_descr -> int -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><br> <h2 id="2_pwrite">pwrite</h2> <p> <b>Author:</b> Goswin von Brederlow<br> <pre><span id="VALunsafe_all_pwrite"><span class="keyword">val</span> unsafe_all_pwrite</span> : <code class="type">Unix.file_descr -> int -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><div class="info"> <code class="code">all_pwrite fd off buf</code> writes up to <code class="code">size of buf</code> bytes from file descriptor <code class="code">fd</code> at offset <code class="code">off</code> (from the start of the file) into the buffer <code class="code">buf</code>. The file offset is not changed. <p> <code class="code">all_pwrite</code> repeats the write operation until all characters have been written or an error occurs. Returns less than the number of characters requested on EAGAIN, EWOULDBLOCK but never 0. Continues the write operation on EINTR. Raises an Unix.Unix_error exception in all other cases.<br> </div> <pre><span id="VALall_pwrite"><span class="keyword">val</span> all_pwrite</span> : <code class="type">Unix.file_descr -> int -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><pre><span id="VALunsafe_single_pwrite"><span class="keyword">val</span> unsafe_single_pwrite</span> : <code class="type">Unix.file_descr -> int -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><div class="info"> <code class="code">single_pwrite fd off buf</code> writes up to <code class="code">size of buf</code> bytes from file descriptor <code class="code">fd</code> at offset <code class="code">off</code> (from the start of the file) into the buffer <code class="code">buf</code>. The file offset is not changed. <p> <code class="code">single_pwrite</code> attempts to write only once. Returns the number of characters written or raises an Unix.Unix_error exception. Unlike the string variant of the same name there is no limit on the number of characters written.<br> </div> <pre><span id="VALsingle_pwrite"><span class="keyword">val</span> single_pwrite</span> : <code class="type">Unix.file_descr -> int -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><pre><span id="VALunsafe_pwrite"><span class="keyword">val</span> unsafe_pwrite</span> : <code class="type">Unix.file_descr -> int -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><div class="info"> <code class="code">pwrite fd off buf</code> writes up to <code class="code">size of buf</code> bytes from file descriptor <code class="code">fd</code> at offset <code class="code">off</code> (from the start of the file) into the buffer <code class="code">buf</code>. The file offset is not changed. <p> <code class="code">pwrite</code> repeats the write operation until all characters have been written or an error occurs. Raises an Unix.Unix_error exception if 0 characters could be written before an error occurs. Continues the write operation on EINTR. Returns the number of characters written in all other cases.<br> </div> <pre><span id="VALpwrite"><span class="keyword">val</span> pwrite</span> : <code class="type">Unix.file_descr -> int -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><pre><span id="VALunsafe_intr_pwrite"><span class="keyword">val</span> unsafe_intr_pwrite</span> : <code class="type">Unix.file_descr -> int -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><div class="info"> <code class="code">intr_pwrite fd off buf</code> writes up to <code class="code">size of buf</code> bytes from file descriptor <code class="code">fd</code> at offset <code class="code">off</code> (from the start of the file) into the buffer <code class="code">buf</code>. The file offset is not changed. <p> <code class="code">intr_pwrite</code> repeats the write operation until all characters have been written or an error occurs. Raises an Unix.Unix_error exception if 0 characters could be written before an error occurs. Does NOT continue on EINTR. Returns the number of characters written in all other cases.<br> </div> <pre><span id="VALintr_pwrite"><span class="keyword">val</span> intr_pwrite</span> : <code class="type">Unix.file_descr -> int -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><br> <h2 id="2_read">read</h2> <p> <b>Author:</b> Goswin von Brederlow<br> <pre><span id="VALall_read"><span class="keyword">val</span> all_read</span> : <code class="type">Unix.file_descr -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><div class="info"> <code class="code">all_read fd buf</code> reads up to <code class="code">size of buf</code> bytes from file descriptor <code class="code">fd</code> into the buffer <code class="code">buf</code>. <p> <code class="code">all_read</code> repeats the read operation until all characters have been read or an error occurs. Returns less than the number of characters requested on EAGAIN, EWOULDBLOCK or End-of-file but only ever returns 0 on End-of-file. Continues the read operation on EINTR. Raises an Unix.Unix_error exception in all other cases.<br> </div> <pre><span id="VALsingle_read"><span class="keyword">val</span> single_read</span> : <code class="type">Unix.file_descr -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><div class="info"> <code class="code">single_read fd buf</code> reads up to <code class="code">size of buf</code> bytes from file descriptor <code class="code">fd</code> into the buffer <code class="code">buf</code>. <p> <code class="code">single_read</code> attempts to read only once. Returns the number of characters read or raises an Unix.Unix_error exception. Unlike the string variant of the same name there is no limit on the number of characters read.<br> </div> <pre><span id="VALread"><span class="keyword">val</span> read</span> : <code class="type">Unix.file_descr -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><div class="info"> <code class="code">read fd buf</code> reads up to <code class="code">size of buf</code> bytes from file descriptor <code class="code">fd</code> into the buffer <code class="code">buf</code>. <p> <code class="code">read</code> repeats the read operation until all characters have been read or an error occurs. Raises an Unix.Unix_error exception if 0 characters could be read before an error occurs. Continues the read operation on EINTR. Returns the number of characters written in all other cases.<br> </div> <pre><span id="VALintr_read"><span class="keyword">val</span> intr_read</span> : <code class="type">Unix.file_descr -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><div class="info"> <code class="code">intr_read fd buf</code> reads up to <code class="code">size of buf</code> bytes from file descriptor <code class="code">fd</code> into the buffer <code class="code">buf</code>. <p> <code class="code">intr_read</code> repeats the read operation until all characters have been read or an error occurs. Raises an Unix.Unix_error exception if 0 characters could be read before an error occurs. Does NOT continue on EINTR. Returns the number of characters written in all other cases.<br> </div> <br> <h2 id="2_write">write</h2> <p> <b>Author:</b> Goswin von Brederlow<br> <pre><span id="VALall_write"><span class="keyword">val</span> all_write</span> : <code class="type">Unix.file_descr -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><div class="info"> <code class="code">all_write fd buf</code> writes up to <code class="code">size of buf</code> bytes from file descriptor <code class="code">fd</code> into the buffer <code class="code">buf</code>. <p> <code class="code">all_write</code> repeats the write operation until all characters have been written or an error occurs. Returns less than the number of characters requested on EAGAIN, EWOULDBLOCK but never 0. Continues the write operation on EINTR. Raises an Unix.Unix_error exception in all other cases.<br> </div> <pre><span id="VALsingle_write"><span class="keyword">val</span> single_write</span> : <code class="type">Unix.file_descr -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><div class="info"> <code class="code">single_write fd buf</code> writes up to <code class="code">size of buf</code> bytes from file descriptor <code class="code">fd</code> into the buffer <code class="code">buf</code>. <p> <code class="code">single_write</code> attempts to write only once. Returns the number of characters written or raises an Unix.Unix_error exception. Unlike the string variant of the same name there is no limit on the number of characters written.<br> </div> <pre><span id="VALwrite"><span class="keyword">val</span> write</span> : <code class="type">Unix.file_descr -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><div class="info"> <code class="code">write fd buf</code> writes up to <code class="code">size of buf</code> bytes from file descriptor <code class="code">fd</code> into the buffer <code class="code">buf</code>. <p> <code class="code">write</code> repeats the write operation until all characters have been written or an error occurs. Raises an Unix.Unix_error exception if 0 characters could be written before an error occurs. Continues the write operation on EINTR. Returns the number of characters written in all other cases.<br> </div> <pre><span id="VALintr_write"><span class="keyword">val</span> intr_write</span> : <code class="type">Unix.file_descr -> <a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int</code></pre><div class="info"> <code class="code">intr_write fd buf</code> writes up to <code class="code">size of buf</code> bytes from file descriptor <code class="code">fd</code> into the buffer <code class="code">buf</code>. <p> <code class="code">intr_write</code> repeats the write operation until all characters have been written or an error occurs. Raises an Unix.Unix_error exception if 0 characters could be written before an error occurs. Does NOT continue on EINTR. Returns the number of characters written in all other cases.<br> </div> <br> <h2 id="2_Byteorderconversion">Byte order conversion</h2><br> <pre><span class="keyword">module</span> <a href="ExtUnixAll.BA.BigEndian.html">BigEndian</a>: <code class="code">sig</code> <a href="ExtUnixAll.BA.BigEndian.html">..</a> <code class="code">end</code></pre><div class="info"> big endian functions </div> <pre><span class="keyword">module</span> <a href="ExtUnixAll.BA.LittleEndian.html">LittleEndian</a>: <code class="code">sig</code> <a href="ExtUnixAll.BA.LittleEndian.html">..</a> <code class="code">end</code></pre><div class="info"> little endian functions </div> <pre><span class="keyword">module</span> <a href="ExtUnixAll.BA.HostEndian.html">HostEndian</a>: <code class="code">sig</code> <a href="ExtUnixAll.BA.HostEndian.html">..</a> <code class="code">end</code></pre><div class="info"> host endian functions </div> <pre><span id="VALunsafe_get_substr"><span class="keyword">val</span> unsafe_get_substr</span> : <code class="type"><a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int -> int -> string</code></pre><div class="info"> <code class="code">unsafe_get_substr buf off len</code> extracts the substring from buffer <code class="code">buf</code> starting at offset <code class="code">off</code> and length <code class="code">len</code>. Bounds checking is not performed. Use with caution and only when the program logic guarantees that the access is within bounds.<br> </div> <pre><span id="VALget_substr"><span class="keyword">val</span> get_substr</span> : <code class="type"><a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int -> int -> string</code></pre><div class="info"> <code class="code">get_substr buf off len</code> same as <code class="code">unsafe_get_substr</code> but with bounds checking.<br> </div> <pre><span id="VALunsafe_set_substr"><span class="keyword">val</span> unsafe_set_substr</span> : <code class="type"><a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int -> string -> unit</code></pre><div class="info"> <code class="code">unsafe_set_substr buf off str</code> stores the string in buffer <code class="code">buf</code> starting at offset <code class="code">off</code>. Bounds checking is not performed. Use with caution and only when the program logic guarantees that the access is within bounds.<br> </div> <pre><span id="VALset_substr"><span class="keyword">val</span> set_substr</span> : <code class="type"><a href="ExtUnixAll.html#TYPEbuffer">ExtUnixAll.buffer</a> -> int -> string -> unit</code></pre><div class="info"> <code class="code">set_substr buf off str</code> same as <code class="code">unsafe_set_substr</code> but with bounds checking.<br> </div> </body></html>