autodoc.git / modref.xml

version» Context lines:

autodoc.git/modref.xml:1:   <?xml version='1.0' encoding='utf-8'?> - <manual time-stamp='2020-05-29' version='Pike v8.1.13'> + <manual time-stamp='2020-06-01' version='Pike v8.1.13'>    <dir name='./ignored'>    <file name='./ignored/ignored'>    <chapter number='1' title='ignored'>    <autodoc>   <namespace name=''>   <doc><text><p>Symbols implicitly inherited from the virtual base class.</p>   <p> These symbols exist mainly to simplify implementation of    the corresponding lfuns.</p>   </text><group><seealso/><text><p><ref resolved='lfun::'>lfun::</ref></p>   </text></group></doc>
autodoc.git/modref.xml:1126:   </docgroup>   </class>   <class name='DES3'>   <docgroup homogen-name='CBC' homogen-type='inherit'>   <inherit name='CBC'><classname resolved='8.0::Crypto.CBC'>Crypto.CBC</classname></inherit>   </docgroup>   </class>   <class name='DHKeyExchange'>   <doc><text><p>Implements Diffie-Hellman key-exchange.</p>   <p> The following key exchange methods are implemented here: -  <ref resolved='7.8::SSL.Constants.KeyExchangeType.KE_dhe_dss'>KE_dhe_dss</ref>, <ref resolved='7.8::SSL.Constants.KeyExchangeType.KE_dhe_rsa'>KE_dhe_rsa</ref> and <ref resolved='7.8::SSL.Constants.KeyExchangeType.KE_dh_anon'>KE_dh_anon</ref>.</p> +  <ref resolved='predef::SSL.Constants.KeyExchangeType.KE_dhe_dss'>KE_dhe_dss</ref>, <ref resolved='predef::SSL.Constants.KeyExchangeType.KE_dhe_rsa'>KE_dhe_rsa</ref> and <ref resolved='predef::SSL.Constants.KeyExchangeType.KE_dh_anon'>KE_dh_anon</ref>.</p>   </text></doc>   <docgroup homogen-name='create' homogen-type='method'>   <method name='create'><modifiers><protected/></modifiers>   <arguments><argument name='p'><type><object resolved='7.8::SSL.Cipher.DHParameters'>DHParameters</object></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   </class>   <class name='DHParameters'>   <doc><text><p>Diffie-Hellman parameters.</p>
autodoc.git/modref.xml:3139:    cyclic references in themselves, so they will be destructed timely    when they run out of references.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::Stdio.FILE'>Stdio.FILE</ref></p>   </text></group></doc>   <docgroup homogen-name='assign' homogen-type='method'><doc><text><p>This function takes a clone of Stdio.File and assigns all    variables of this file from it. It can be used together with <ref resolved='7.8::Stdio.File.dup'>dup()</ref>    to move files around.</p>   </text><group><seealso/><text><p><ref resolved='7.8::Stdio.File.dup'>dup()</ref></p>   </text></group></doc>   <method name='assign'> - <arguments><argument name='o'><type><or><object resolved='7.8::Stdio.File'>File</object><object resolved='predef::Stdio.Fd'>Fd</object></or></type></argument></arguments> + <arguments><argument name='o'><type><or><object resolved='7.8::Stdio.File'>File</object><object resolved='predef::_Stdio.Fd'>Fd</object></or></type></argument></arguments>   <returntype><int/></returntype>   </method>   </docgroup>   <docgroup homogen-name='async_connect' homogen-type='method'><doc><text><p>Open a TCP/IP connection asynchronously.</p>   <p> This function is similar to <ref resolved='7.8::Stdio.File.connect'>connect()</ref>, but works asynchronously.</p>   </text><group><param name='host'/><text><p>Hostname or IP to connect to.</p>   </text></group><group><param name='port'/><text><p>Port number or service name to connect to.</p>   </text></group><group><param name='callback'/><text><p>Function to be called on completion.    The first argument will be <expr>1</expr> if a connection was    successfully established, and <expr>0</expr> (zero) on failure.
autodoc.git/modref.xml:3456:    functions, eg for the fourth argument to    <ref resolved='predef::String.SplitIterator'>String.SplitIterator</ref>.</p>   </text></doc>   <method name='read_function'>   <arguments><argument name='nbytes'><type><int/></type></argument></arguments>   <returntype><function><returntype><string/></returntype></function></returntype>   </method>   </docgroup>   <docgroup homogen-name='send_fd' homogen-type='method'>   <method name='send_fd'> - <arguments><argument name='file'><type><or><object resolved='7.8::Stdio.File'>File</object><object resolved='predef::Stdio.Fd'>Fd</object></or></type></argument></arguments> + <arguments><argument name='file'><type><or><object resolved='7.8::Stdio.File'>File</object><object resolved='predef::_Stdio.Fd'>Fd</object></or></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='set_blocking' homogen-type='method'><doc><text><p>This function clears all callbacks and sets a stream to blocking    mode. i.e. reading, writing and closing will wait until data has    been transferred before returning.</p>   </text><group><note/><text><p>The callbacks are cleared and blocking mode is set in one atomic    operation, so no callback gets called in between if the backend    is running in another thread.</p>   <p> Even so, if the stream is in callback mode (i.e. if any
autodoc.git/modref.xml:9026:    returned.</p>   </text></group><group><note/><text><p>In Pike 7.0 and earlier this function returned an array with 7 elements.    The old behaviour can be simulated with the following function:</p>   <code><text><p>array(int) file_stat(string path, void|int(0..1) symlink)    {    File.Stat st = predef::file_stat(path, symlink);    if (!st) return 0;    return (array(int))st;    }</p>   </text></code> - </text></group><group><seealso/><text><p><ref resolved='predef::Stdio.Stat'>Stdio.Stat</ref>, <ref>Stdio.File-&gt;stat()</ref></p> + </text></group><group><seealso/><text><p><ref resolved='predef::Stdio.Stat'>Stdio.Stat</ref>, <ref resolved='predef::_Stdio.Fd.stat'>Stdio.File-&gt;stat()</ref></p>   </text></group></doc>   <method name='file_stat'>   <arguments><argument name='path'><type><string/></type></argument><argument name='symlink'><type><or><void/><int><min>0</min><max>1</max></int></or></type></argument></arguments>   <returntype><object resolved='predef::Stdio.Stat'>Stdio.Stat</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='file_truncate' homogen-type='method'><doc><text><p>Truncates the file <ref resolved='predef::file_truncate.file'>file</ref> to the length specified in <ref resolved='predef::file_truncate.length'>length</ref>.</p>   </text><group><returns/><text><p>Returns 1 if ok, 0 if failed.</p>   </text></group></doc>   <method name='file_truncate'>
autodoc.git/modref.xml:10312:   <method name='reverse'>   <arguments><argument name='o'><type><object resolved='predef::reverse'/></type></argument><argument name='options'><type><varargs><mixed/></varargs></type></argument></arguments>   <returntype><mixed/></returntype>   </method>   </docgroup>   <docgroup homogen-name='rm' homogen-type='method'><doc><text><p>Remove a file or directory.</p>   </text><group><returns/><text><p>Returns <expr>0</expr> (zero) on failure, <expr>1</expr> otherwise.</p>   </text></group><group><note/><text><p>May fail with <ref resolved='predef::errno'>errno()</ref> set to <ref>EISDIR</ref> or <ref>ENOTDIR</ref>    if the file has changed to a directory during the call    or the reverse.</p> - </text></group><group><seealso/><text><p><ref>Stdio.File()-&gt;unlinkat()</ref>, <ref resolved='predef::mkdir'>mkdir()</ref>, <ref resolved='predef::Stdio.recursive_rm'>Stdio.recursive_rm()</ref></p> + </text></group><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.unlinkat'>Stdio.File()-&gt;unlinkat()</ref>, <ref resolved='predef::mkdir'>mkdir()</ref>, <ref resolved='predef::Stdio.recursive_rm'>Stdio.recursive_rm()</ref></p>   </text></group></doc>   <method name='rm'>   <arguments><argument name='f'><type><string/></type></argument></arguments>   <returntype><int/></returntype>   </method>   </docgroup>   <docgroup homogen-name='round' homogen-type='method'><doc><text><p>Return the closest integer value to <ref resolved='predef::round.f'>f</ref>.</p>   </text><group><note/><text><p><ref resolved='predef::round'>round()</ref> does <b>not</b> return an <expr>int</expr>, merely an integer value    stored in a <expr>float</expr>.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::floor'>floor()</ref>, <ref resolved='predef::ceil'>ceil()</ref></p>
autodoc.git/modref.xml:95830:   <variable name='lr_error'><type><int/></type></variable>   </docgroup>   <docgroup homogen-name='make_parser' homogen-type='method'><doc><text><p>Compiles the parser-specification given in the first argument.    Named actions are taken from the object if available, otherwise    left as is.</p>   </text><group><bugs/><text><p>Returns error-code in both GrammarParser.error and    return_value-&gt;lr_error.</p>   </text></group></doc>   <method name='make_parser'>   <arguments><argument name='str'><type><string/></type></argument><argument name='m'><type><or><object resolved='predef::Parser.LR.GrammarParser.make_parser'/><void/></or></type></argument></arguments> - <returntype><object resolved='predef::Parser.LR.Parser'>Parser</object></returntype> + <returntype><object resolved='predef::Parser'>Parser</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='make_parser_from_file' homogen-type='method'><doc><text><p>Compiles the file specified in the first argument into an LR parser.</p>   </text><group><seealso/><text><p><ref resolved='predef::Parser.LR.GrammarParser.make_parser'>make_parser</ref></p>   </text></group></doc>   <method name='make_parser_from_file'>   <arguments><argument name='fname'><type><string/></type></argument><argument name='m'><type><or><object resolved='predef::Parser.LR.GrammarParser.make_parser_from_file'/><void/></or></type></argument></arguments> - <returntype><or><int/><object resolved='predef::Parser.LR.Parser'>Parser</object></or></returntype> + <returntype><or><int/><object resolved='predef::Parser'>Parser</object></or></returntype>   </method>   </docgroup>   </module>   <class name='Parser'>   <doc><text><p>This object implements an LALR(1) parser and compiler.</p>   <p> Normal use of this object would be:</p>   <p> <pre>    set_error_handler    {add_rule, set_priority, set_associativity}*    set_symbol_to_string
autodoc.git/modref.xml:100566:   <arguments><argument name='command'><type><string/></type></argument><argument name='stdin'><type><or><void/><object resolved='predef::Stdio.Stream'>Stdio.Stream</object></or></type></argument><argument name='stdout'><type><or><void/><object resolved='predef::Stdio.Stream'>Stdio.Stream</object></or></type></argument><argument name='stderr'><type><or><void/><object resolved='predef::Stdio.Stream'>Stdio.Stream</object></or></type></argument></arguments>   <returntype><attribute><prefix/><attribute>"deprecated"</attribute><subtype><int/></subtype></attribute></returntype>   </method>   </docgroup>   <class name='ForkdDecoder'>   <doc><text><p>Decoder for data received by <ref resolved='predef::Tools.Standalone.forkd'>Tools.Standalone.forkd</ref>.</p>   </text><group><seealso/><text><p><ref resolved='predef::Process.ForkdEncoder'>ForkdEncoder</ref></p>   </text></group></doc>   <docgroup homogen-name='create' homogen-type='method'>   <method name='create'><modifiers><protected/></modifiers> - <arguments><argument name='fds'><type><array><valuetype><object resolved='predef::Stdio.Fd'>Stdio.Fd</object></valuetype></array></type></argument></arguments> + <arguments><argument name='fds'><type><array><valuetype><object resolved='predef::_Stdio.Fd'>Stdio.Fd</object></valuetype></array></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='fds' homogen-type='variable'> - <variable name='fds'><type><array><valuetype><object resolved='predef::Stdio.Fd'>Stdio.Fd</object></valuetype></array></type></variable> + <variable name='fds'><type><array><valuetype><object resolved='predef::_Stdio.Fd'>Stdio.Fd</object></valuetype></array></type></variable>   </docgroup>   </class>   <class name='ForkdEncoder'>   <doc><text><p>Encoder for data to be sent to <ref resolved='predef::Tools.Standalone.forkd'>Tools.Standalone.forkd</ref>.</p>   </text><group><seealso/><text><p><ref resolved='predef::Process.ForkdDecoder'>ForkdDecoder</ref></p>   </text></group></doc>   <docgroup homogen-name='create' homogen-type='method'>   <method name='create'><modifiers><protected/></modifiers>   <arguments><argument name='remote_fd'><type><object resolved='predef::Stdio.File'>Stdio.File</object></type></argument></arguments>   <returntype><void/></returntype>
autodoc.git/modref.xml:108620:   </method>   </docgroup>   <docgroup homogen-name='tcgetattr' homogen-type='method'><doc><text><p>Get current terminal attributes.</p>   <p> Currently only the following attributes are supported:</p>   <string><group><value>"columns"</value><text><p>Number of columns.</p>   </text></group><group><value>"rows"</value><text><p>Number of rows.</p>   </text></group><group><value>"ECHO"</value><text><p>Local character echo on (<expr>1</expr>) or off (<expr>0</expr> (zero)).</p>   </text></group><group><value>"ICANON"</value><text><p>Canonical input on (<expr>1</expr>) or off (<expr>0</expr> (zero)).</p>   </text></group></string>   </text><group><note/><text><p>Using this function currently bypasses the Readline layer.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::Stdio.Fd.tcgetattr'>Stdio.File()-&gt;tcgetattr()</ref></p> + </text></group><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.tcgetattr'>Stdio.File()-&gt;tcgetattr()</ref></p>   </text></group></doc>   <method name='tcgetattr'>   <arguments/>   <returntype><mapping><indextype><string/></indextype><valuetype><int/></valuetype></mapping></returntype>   </method>   </docgroup>   <docgroup homogen-name='tcsetattr' homogen-type='method'><doc><text><p>Set terminal attributes.</p>   <p> Currently only the following attributes are supported:</p>   <string><group><value>"ECHO"</value><text><p>Local character echo on (<expr>1</expr>) or off (<expr>0</expr> (zero)).</p>   </text></group><group><value>"ICANON"</value><text><p>Canonical input on (<expr>1</expr>) or off (<expr>0</expr> (zero)).</p>   </text></group></string>   </text><group><note/><text><p>Using this function currently bypasses the Readline layer.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::Stdio.Fd.tcsetattr'>Stdio.File()-&gt;tcsetattr()</ref></p> + </text></group><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.tcsetattr'>Stdio.File()-&gt;tcsetattr()</ref></p>   </text></group></doc>   <method name='tcsetattr'>   <arguments><argument name='options'><type><mapping><indextype><string/></indextype><valuetype><int/></valuetype></mapping></type></argument><argument name='when'><type><or><string/><void/></or></type></argument></arguments>   <returntype><int/></returntype>   </method>   </docgroup>   <docgroup homogen-name='write' homogen-type='method'><doc><text><p>Queues data to be sent to the other end of the connection.</p>   </text><group><param name='s'/><text><p>String to send.</p>   </text></group></doc>   <method name='write'>
autodoc.git/modref.xml:116740:   </docgroup>   <docgroup homogen-name='query_accept_callback' homogen-type='method'><doc><group><returns/><text><p>Returns the current accept callback.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::SSL.File.set_accept_callback'>set_accept_callback</ref></p>   </text></group></doc>   <method name='query_accept_callback'>   <arguments/>   <returntype><function><argtype><or><void/><object resolved='predef::SSL.File.query_accept_callback'/></or></argtype><argtype><or><void/><mixed/></or></argtype><returntype><int/></returntype></function></returntype>   </method>   </docgroup>   <docgroup homogen-name='query_address' homogen-type='method'><doc><group><returns/><text><p>Returns the address and port of the connection.</p> - <p> See <ref>Stdio.File.query_address</ref> for details.</p> - </text></group><group><seealso/><text><p><ref>Stdio.File.query_address</ref></p> + <p> See <ref resolved='predef::_Stdio.Fd.query_address'>Stdio.File.query_address</ref> for details.</p> + </text></group><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.query_address'>Stdio.File.query_address</ref></p>   </text></group></doc>   <method name='query_address'>   <arguments><argument name='arg'><type><or><int/><void/></or></type></argument></arguments>   <returntype><string/></returntype>   </method>   </docgroup>   <docgroup homogen-name='query_alert_callback' homogen-type='method'><doc><group><returns/><text><p>Returns the current alert callback.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::SSL.File.set_alert_callback'>set_alert_callback</ref></p>   </text></group></doc>   <method name='query_alert_callback'>
autodoc.git/modref.xml:117092:    finished then the stream is closed, zero is returned, and <ref resolved='predef::SSL.File.errno'>errno</ref>    will return <ref>System.EPIPE</ref>.</p>   </text><group><seealso/><text><p><ref resolved='predef::SSL.File.close'>close</ref>, <ref resolved='predef::SSL.File.set_alert_callback'>set_alert_callback</ref></p>   </text></group></doc>   <method name='shutdown'>   <arguments/>   <returntype><object resolved='predef::Stdio.File'>Stdio.File</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='write' homogen-type='method'><doc><text><p>Write some (unencrypted) data to the connection. Works like -  <ref>Stdio.File.write</ref> except that this function often buffers some data +  <ref resolved='predef::_Stdio.Fd.write'>Stdio.File.write</ref> except that this function often buffers some data    internally, so there's no guarantee that all the consumed data has    been successfully written to the stream in nonblocking mode. It    keeps the internal buffering to a minimum, however.</p>   </text><group><note/><text><p>This function returns zero if attempts are made to write data    during the handshake phase and the mode is nonblocking.</p>   </text></group><group><note/><text><p>I/O errors from both reading and writing might occur in blocking    mode.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::SSL.File.read'>read</ref></p>   </text></group></doc>   <method name='write'>
autodoc.git/modref.xml:123988:    public keys must be set.</p>   </text></group><group><param name='name'/><text><p>The distinguished name for the certificate.</p>   </text></group><group><param name='attributes'/><text><p>Attributes from PKCS #9 to add to the certificate.</p>   </text></group><group><param name='hash'/><text><p>Hash algoritm to use for the CSR signature.    Defaults to <ref resolved='predef::Crypto.SHA256'>Crypto.SHA256</ref>.</p>   </text></group><group><note/><text><p>Prior to Pike 8.0 this function only supported signing    with <ref resolved='predef::Crypto.RSA'>Crypto.RSA</ref> and the default (and only) hash was    <ref resolved='predef::Crypto.MD5'>Crypto.MD5</ref>.</p>   </text></group></doc>   <method name='build_csr'> - <arguments><argument name='sign'><type><object resolved='predef::Crypto.Sign'>Crypto.Sign</object></type></argument><argument name='name'><type><object resolved='predef::Standards.ASN1.Types.Sequence'>Sequence</object></type></argument><argument name='attributes'><type><mapping><indextype><string/></indextype><valuetype><array><valuetype><object resolved='predef::Standards.ASN1.Types.Object'>Object</object></valuetype></array></valuetype></mapping></type></argument><argument name='hash'><type><or><object resolved='predef::Crypto.Hash'>Crypto.Hash</object><void/></or></type></argument></arguments> + <arguments><argument name='sign'><type><object resolved='predef::Crypto.Sign'>Crypto.Sign</object></type></argument><argument name='name'><type><object resolved='predef::Standards.ASN1.Types.Sequence'>Sequence</object></type></argument><argument name='attributes'><type><mapping><indextype><string/></indextype><valuetype><array><valuetype><object resolved='predef::Object'>Object</object></valuetype></array></valuetype></mapping></type></argument><argument name='hash'><type><or><object resolved='predef::Crypto.Hash'>Crypto.Hash</object><void/></or></type></argument></arguments>   <returntype><object resolved='predef::Standards.ASN1.Types.Sequence'>Sequence</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup>   <docgroup homogen-name='Types' homogen-type='import'>   <import name='Types'><classname resolved='predef::Standards.ASN1.Types'>Standards.ASN1.Types</classname></import>   </docgroup>   <docgroup homogen-name='sign_cri' homogen-type='method'><doc><text><p>Sign a <ref resolved='predef::Standards.PKCS.CSR.CRI'>CRI</ref> to generate a Certificate Signing Request.</p>
autodoc.git/modref.xml:124438:   <p>Setting</p>   <p> The signature.</p>   </text></doc>   <variable name='signature'><type><object resolved='predef::Standards.ASN1.Types.BitString'>BitString</object></type></variable>   </docgroup>   <docgroup homogen-name='tbs' homogen-type='variable'><doc><text><p>Getting</p>   <p> ASN.1 structure that has been signed.</p>   <p>Setting</p>   <p> ASN.1 structure that has been signed.</p>   </text></doc> - <variable name='tbs'><type><object resolved='predef::Standards.ASN1.Types.Object'>Object</object></type></variable> + <variable name='tbs'><type><object resolved='predef::Object'>Object</object></type></variable>   </docgroup>   </class>   </module>   </module>   <module name='TLD'>   <docgroup homogen-name='cc' homogen-type='constant'><doc><text><p>A mapping between country TLDs and the name of the country.</p>   </text></doc>   <constant name='cc'/>   </docgroup>   <docgroup homogen-name='generic' homogen-type='variable'><doc><text><p>A multiset containing the generic TLDs, such as "com" and "info".</p>
autodoc.git/modref.xml:124959:   <method name='load_authorities'>   <arguments><argument name='root_cert_dirs'><type><or><string/><array><valuetype><string/></valuetype></array><void/></or></type></argument><argument name='cache'><type><or><int><min>0</min><max>1</max></int><void/></or></type></argument></arguments>   <returntype><mapping><indextype><string/></indextype><valuetype><array><valuetype><object resolved='predef::Standards.X509.Verifier'>Verifier</object></valuetype></array></valuetype></mapping></returntype>   </method>   </docgroup>   <docgroup homogen-name='make_extension' homogen-type='method'><doc><text><p>Creates a certificate extension with the <ref resolved='predef::Standards.X509.make_extension.id'>id</ref> as identifier and    <ref resolved='predef::Standards.X509.make_extension.ext'>ext</ref> as the extension payload. If the <ref resolved='predef::Standards.X509.make_extension.critical'>critical</ref> flag is set    the extension will be marked as critical.</p>   </text></doc>   <method name='make_extension'> - <arguments><argument name='id'><type><object resolved='predef::Standards.ASN1.Types.Identifier'>Identifier</object></type></argument><argument name='ext'><type><object resolved='predef::Standards.ASN1.Types.Object'>Object</object></type></argument><argument name='critical'><type><or><void/><int/></or></type></argument></arguments> + <arguments><argument name='id'><type><object resolved='predef::Standards.ASN1.Types.Identifier'>Identifier</object></type></argument><argument name='ext'><type><object resolved='predef::Object'>Object</object></type></argument><argument name='critical'><type><or><void/><int/></or></type></argument></arguments>   <returntype><object resolved='predef::Standards.ASN1.Types.Sequence'>Sequence</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='make_selfsigned_certificate' homogen-type='method'><doc><text><p>Creates a selfsigned certificate, i.e. where issuer and subject    are the same entity. This entity is derived from the list of pairs    in <ref resolved='predef::Standards.X509.make_selfsigned_certificate.name'>name</ref>, which is encoded into an distinguished_name by    <ref resolved='predef::Standards.PKCS.Certificate.build_distinguished_name'>Standards.PKCS.Certificate.build_distinguished_name</ref>.</p>   </text><group><param name='c'/><text><p>The public key cipher used for the certificate, <ref resolved='predef::Crypto.RSA'>Crypto.RSA</ref>,    <ref resolved='predef::Crypto.DSA'>Crypto.DSA</ref> or <ref resolved='predef::Crypto.ECC.Curve.ECDSA'>Crypto.ECC.Curve.ECDSA</ref>. The object should be    initialized with both public and private keys.</p>
autodoc.git/modref.xml:125269:   </docgroup>   <docgroup homogen-name='ext_subjectKeyIdentifier' homogen-type='variable'><doc><text><p>Set to the value of the SubjectKeyIdentifier if the certificate    contains the subjectKeyIdentifier    extension. <rfc>3280:4.2.1.2</rfc>.</p>   </text></doc>   <variable name='ext_subjectKeyIdentifier'><type><string/></type></variable>   </docgroup>   <docgroup homogen-name='extensions' homogen-type='variable'><doc><group><note/><text><p>optional</p>   </text></group><group><note/><text><p>Read only</p>   </text></group></doc> - <variable name='extensions'><type><mapping><indextype><object resolved='predef::Standards.ASN1.Types.Identifier'>Identifier</object></indextype><valuetype><object resolved='predef::Standards.ASN1.Types.Object'>Object</object></valuetype></mapping></type></variable> + <variable name='extensions'><type><mapping><indextype><object resolved='predef::Standards.ASN1.Types.Identifier'>Identifier</object></indextype><valuetype><object resolved='predef::Object'>Object</object></valuetype></mapping></type></variable>   </docgroup>   <docgroup homogen-name='hash' homogen-type='variable'><doc><text><p>Algorithm hash if known and supported.    Otherwise <ref resolved='predef::.UNDEFINED'>UNDEFINED</ref>.</p>   </text><group><note/><text><p>Read only</p>   </text></group></doc>   <variable name='hash'><type><object resolved='predef::Crypto.Hash'>Crypto.Hash</object></type></variable>   </docgroup>   <docgroup homogen-name='Sequence' homogen-type='inherit'>   <inherit name='Sequence'><classname resolved='predef::Standards.ASN1.Types.Sequence'>Sequence</classname></inherit>   </docgroup>   <docgroup homogen-name='init' homogen-type='method'><doc><text><p>Populates the object from a certificate decoded into an ASN.1    Object. Returns the object on success, otherwise <expr>0</expr>. You    probably want to call <ref resolved='predef::Standards.X509.decode_certificate'>decode_certificate</ref> or even    <ref resolved='predef::Standards.X509.verify_certificate'>verify_certificate</ref>.</p>   </text></doc>   <method name='init'> - <arguments><argument name='asn1'><type><or><array/><object resolved='predef::Standards.ASN1.Types.Object'>Object</object></or></type></argument></arguments> + <arguments><argument name='asn1'><type><or><array/><object resolved='predef::Object'>Object</object></or></type></argument></arguments>   <returntype><object resolved='predef::Standards.X509.TBSCertificate'>this_program</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='internal_critical' homogen-type='variable'><doc><group><note/><text><p>optional</p>   </text></group></doc>   <variable name='internal_critical'><modifiers><protected/></modifiers><type><multiset/></type></variable>   </docgroup>   <docgroup homogen-name='internal_extensions' homogen-type='variable'><doc><group><note/><text><p>optional</p>   </text></group></doc> - <variable name='internal_extensions'><modifiers><protected/></modifiers><type><mapping><indextype><object resolved='predef::Standards.ASN1.Types.Identifier'>Identifier</object></indextype><valuetype><object resolved='predef::Standards.ASN1.Types.Object'>Object</object></valuetype></mapping></type></variable> + <variable name='internal_extensions'><modifiers><protected/></modifiers><type><mapping><indextype><object resolved='predef::Standards.ASN1.Types.Identifier'>Identifier</object></indextype><valuetype><object resolved='predef::Object'>Object</object></valuetype></mapping></type></variable>   </docgroup>   <docgroup homogen-name='issuer' homogen-type='variable'><doc><text><p>Certificate issuer.</p>   </text></doc>   <variable name='issuer'><type><void/></type></variable>   </docgroup>   <docgroup homogen-name='issuer_id' homogen-type='variable'><doc><group><note/><text><p>optional</p>   </text></group></doc>   <variable name='issuer_id'><type><void/></type></variable>   </docgroup>   <docgroup homogen-name='issuer_str' homogen-type='method'><doc><text><p>Return the issuer of the certificate as a human readable string.
autodoc.git/modref.xml:125414:   </method>   </docgroup>   </module>   </module>   <module name='Stdio'>   <docgroup homogen-name='DATA_CHUNK_SIZE' homogen-type='constant'><doc><text><p>Size used in various places to divide incoming or outgoing data    into chunks.</p>   </text></doc>   <constant name='DATA_CHUNK_SIZE'><modifiers><final/></modifiers><type><int/></type></constant>   </docgroup> - <docgroup homogen-name='TCSADRAIN' homogen-type='constant'><doc><text><p>Argument to <ref resolved='predef::Stdio.Fd.tcsetattr'>Stdio.File()-&gt;tcsetattr()</ref>.</p> + <docgroup homogen-name='TCSADRAIN' homogen-type='constant'><doc><text><p>Argument to <ref resolved='predef::_Stdio.Fd.tcsetattr'>Stdio.File()-&gt;tcsetattr()</ref>.</p>   <p> Change after all output has been written.</p>   </text></doc>   <constant name='TCSADRAIN'><type><string/></type></constant>   </docgroup> - <docgroup homogen-name='TCSAFLUSH' homogen-type='constant'><doc><text><p>Argument to <ref resolved='predef::Stdio.Fd.tcsetattr'>Stdio.File()-&gt;tcsetattr()</ref>.</p> + <docgroup homogen-name='TCSAFLUSH' homogen-type='constant'><doc><text><p>Argument to <ref resolved='predef::_Stdio.Fd.tcsetattr'>Stdio.File()-&gt;tcsetattr()</ref>.</p>   <p> Change after all output has been written,    and empty the input buffers.</p>   </text></doc>   <constant name='TCSAFLUSH'><type><string/></type></constant>   </docgroup> - <docgroup homogen-name='TCSANOW' homogen-type='constant'><doc><text><p>Argument to <ref resolved='predef::Stdio.Fd.tcsetattr'>Stdio.File()-&gt;tcsetattr()</ref>.</p> + <docgroup homogen-name='TCSANOW' homogen-type='constant'><doc><text><p>Argument to <ref resolved='predef::_Stdio.Fd.tcsetattr'>Stdio.File()-&gt;tcsetattr()</ref>.</p>   <p> Change immediately.</p>   </text></doc>   <constant name='TCSANOW'><type><string/></type></constant>   </docgroup>   <docgroup homogen-name='append_file' homogen-type='method'><doc><text><p>Append the string <ref resolved='predef::Stdio.append_file.str'>str</ref> onto the file <ref resolved='predef::Stdio.append_file.filename'>filename</ref>.</p>   <p> For a description of <ref resolved='predef::Stdio.append_file.access'>access</ref>, see <ref resolved='predef::Stdio.File.open'>Stdio.File-&gt;open()</ref>.</p>   </text><group><throws/><text><p>Throws an error if <ref resolved='predef::Stdio.append_file.filename'>filename</ref> couldn't be opened for writing.</p>   </text></group><group><returns/><text><p>Returns the number of bytes written, i.e. <expr>sizeof(str)</expr>.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::Stdio.write_file'>write_file()</ref>, <ref resolved='predef::Stdio.read_bytes'>read_bytes()</ref>, <ref resolved='predef::Stdio.File.open'>Stdio.File()-&gt;open()</ref></p>   </text></group></doc>
autodoc.git/modref.xml:125846:   <returntype><string/></returntype>   </method>   </docgroup>   <docgroup homogen-name='file' homogen-type='inherit'>   <inherit name='file'><classname resolved='predef::Stdio.File'>File</classname></inherit>   </docgroup>   <docgroup homogen-name='line_iterator' homogen-type='method'><doc><text><p>Returns an iterator that will loop over the lines in this file.    If <ref resolved='predef::Stdio.FILE.line_iterator.trim'>trim</ref> is true, all <tt>'\r'</tt> characters will be removed    from the input.</p>   </text><group><note/><text><p>It's not supported to call this method more than once -  unless a call to <ref>seek</ref> is done in advance. Also note that it's +  unless a call to <ref resolved='predef::_Stdio.Fd.seek'>seek</ref> is done in advance. Also note that it's    not possible to intermingle calls to <ref resolved='predef::Stdio.FILE.read'>read</ref>, <ref resolved='predef::Stdio.FILE.gets'>gets</ref> or other    functions that read data with the line iterator, it will produce    unexpected results since the internal buffer in the iterator will not    contain sequential file-data in those cases.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::Stdio.FILE._get_iterator'>_get_iterator()</ref></p>   </text></group></doc>   <method name='line_iterator'>   <arguments><argument name='trim'><type><or><int/><void/></or></type></argument></arguments>   <returntype><object resolved='predef::Stdio.FILE.line_iterator'/></returntype>   </method>
autodoc.git/modref.xml:125959:   <docgroup homogen-name='unread' homogen-type='method'><doc><text><p>This function puts a string back in the input buffer. The string    can then be read with eg <ref resolved='predef::Stdio.FILE.read'>read()</ref>, <ref resolved='predef::Stdio.FILE.gets'>gets()</ref> or <ref resolved='predef::Stdio.FILE.getchar'>getchar()</ref>.</p>   </text><group><seealso/><text><p><ref resolved='predef::Stdio.FILE.read'>read()</ref>, <ref resolved='predef::Stdio.FILE.gets'>gets()</ref>, <ref resolved='predef::Stdio.FILE.getchar'>getchar()</ref>, <ref resolved='predef::Stdio.FILE.ungets'>ungets()</ref></p>   </text></group></doc>   <method name='unread'>   <arguments><argument name='s'><type><string/></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='write' homogen-type='method'><doc><text><p>Write <ref resolved='predef::Stdio.FILE.write.what'>what</ref> with support for output_conversion.</p> - </text><group><seealso/><text><p><ref>Stdio.File()-&gt;write()</ref></p> + </text><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.write'>Stdio.File()-&gt;write()</ref></p>   </text></group></doc>   <method name='write'>   <arguments><argument name='what'><type><or><array><valuetype><string/></valuetype></array><string/></or></type></argument><argument name='fmt'><type><varargs><mixed/></varargs></type></argument></arguments>   <returntype><int/></returntype>   </method>   </docgroup>   </class>   <class name='FakeFile'>   <doc><text><p>A string wrapper that pretends to be a <ref resolved='predef::Stdio.File'>Stdio.File</ref> object    in addition to some features of a <ref resolved='predef::Stdio.FILE'>Stdio.FILE</ref> object.</p>
autodoc.git/modref.xml:126043:   </text></doc>   <constant name='is_fake_file'><type><int/></type></constant>   </docgroup>   <docgroup homogen-name='line_iterator' homogen-type='method'><doc><group><seealso/><text><p><ref resolved='predef::Stdio.File.line_iterator'>Stdio.File()-&gt;line_iterator()</ref></p>   </text></group></doc>   <method name='line_iterator'>   <arguments><argument name='trim'><type><or><int/><void/></or></type></argument></arguments>   <returntype><object resolved='predef::String.SplitIterator'>String.SplitIterator</object></returntype>   </method>   </docgroup> - <docgroup homogen-name='peek' homogen-type='method'><doc><group><seealso/><text><p><ref>Stdio.File()-&gt;peek()</ref></p> + <docgroup homogen-name='peek' homogen-type='method'><doc><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.peek'>Stdio.File()-&gt;peek()</ref></p>   </text></group></doc>   <method name='peek'>   <arguments><argument name='timeout'><type><or><int/><float/><void/></or></type></argument></arguments>   <returntype><int><min>-1</min><max>1</max></int></returntype>   </method>   </docgroup>   <docgroup homogen-name='query_address' homogen-type='method'><doc><text><p>Always returns 0.</p> - </text><group><seealso/><text><p><ref>Stdio.File()-&gt;query_address()</ref></p> + </text><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.query_address'>Stdio.File()-&gt;query_address()</ref></p>   </text></group></doc>   <method name='query_address'>   <arguments><argument name='is_local'><type><or><void/><int><min>0</min><max>1</max></int></or></type></argument></arguments>   <returntype><string/></returntype>   </method>   </docgroup>   <docgroup homogen-name='query_close_callback' homogen-type='method'><doc><group><seealso/><text><p><ref resolved='predef::Stdio.File.query_close_callback'>Stdio.File()-&gt;query_close_callback</ref></p>   </text></group></doc>   <method name='query_close_callback'>   <arguments/>
autodoc.git/modref.xml:126114:   <returntype><string/></returntype>   </method>   </docgroup>   <docgroup homogen-name='read_function' homogen-type='method'><doc><group><seealso/><text><p><ref resolved='predef::Stdio.File.read_function'>Stdio.File()-&gt;read_function()</ref></p>   </text></group></doc>   <method name='read_function'>   <arguments><argument name='nbytes'><type><int/></type></argument></arguments>   <returntype><function><returntype><string/></returntype></function></returntype>   </method>   </docgroup> - <docgroup homogen-name='seek' homogen-type='method'><doc><group><seealso/><text><p><ref>Stdio.File()-&gt;seek()</ref></p> + <docgroup homogen-name='seek' homogen-type='method'><doc><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.seek'>Stdio.File()-&gt;seek()</ref></p>   </text></group></doc>   <method name='seek'>   <arguments><argument name='pos'><type><int/></type></argument><argument name='how'><type><or><string/><void/></or></type></argument></arguments>   <returntype><int/></returntype>   </method>   </docgroup>   <docgroup homogen-name='set_blocking' homogen-type='method'><doc><group><seealso/><text><p><ref resolved='predef::Stdio.File.set_blocking'>Stdio.File()-&gt;set_blocking</ref></p>   </text></group></doc>   <method name='set_blocking'>   <arguments/>
autodoc.git/modref.xml:126199:   </method>   </docgroup>   <docgroup homogen-name='stat' homogen-type='method'><doc><text><p>Returns size and the creation time of the string.</p>   </text></doc>   <method name='stat'>   <arguments/>   <returntype><object resolved='predef::Stdio.Stat'>Stdio.Stat</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='sync' homogen-type='method'><doc><text><p>Always returns 1.</p> - </text><group><seealso/><text><p><ref>Stdio.File()-&gt;sync()</ref></p> + </text><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.sync'>Stdio.File()-&gt;sync()</ref></p>   </text></group></doc>   <method name='sync'>   <arguments/>   <returntype><int><min>1</min><max>1</max></int></returntype>   </method>   </docgroup> - <docgroup homogen-name='tell' homogen-type='method'><doc><group><seealso/><text><p><ref>Stdio.File()-&gt;tell()</ref></p> + <docgroup homogen-name='tell' homogen-type='method'><doc><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.tell'>Stdio.File()-&gt;tell()</ref></p>   </text></group></doc>   <method name='tell'>   <arguments/>   <returntype><int/></returntype>   </method>   </docgroup> - <docgroup homogen-name='truncate' homogen-type='method'><doc><group><seealso/><text><p><ref>Stdio.File()-&gt;truncate()</ref></p> + <docgroup homogen-name='truncate' homogen-type='method'><doc><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.truncate'>Stdio.File()-&gt;truncate()</ref></p>   </text></group></doc>   <method name='truncate'>   <arguments><argument name='length'><type><int/></type></argument></arguments>   <returntype><int><min>0</min><max>1</max></int></returntype>   </method>   </docgroup>   <docgroup homogen-name='unread' homogen-type='method'><doc><group><seealso/><text><p><ref resolved='predef::Stdio.FILE.unread'>Stdio.FILE()-&gt;unread()</ref></p>   </text></group></doc>   <method name='unread'>   <arguments><argument name='s'><type><string/></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup> - <docgroup homogen-name='write' homogen-type='method'><doc><group><seealso/><text><p><ref>Stdio.File()-&gt;write()</ref></p> + <docgroup homogen-name='write' homogen-type='method'><doc><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.write'>Stdio.File()-&gt;write()</ref></p>   </text></group></doc>   <method name='write'>   <arguments><argument name='str'><type><or><string/><array><valuetype><string/></valuetype></array></or></type></argument><argument name='extra'><type><varargs><mixed/></varargs></type></argument></arguments>   <returntype><int><min>-1</min><max/></int></returntype>   </method>   </docgroup>   </class>   <class name='FakePipe'>   <doc><text><p>This module emulates a bidirectional pipe/socket    without using any actual file descriptors.</p>
autodoc.git/modref.xml:126395:   </method>   </docgroup>   <docgroup homogen-name='write' homogen-type='method'>   <method name='write'>   <arguments><argument name='data'><type><or><object resolved='predef::.sprintf_format'>sprintf_format</object><array><valuetype><string><min>0</min><max>255</max></string></valuetype></array></or></type></argument><argument name='args'><type><varargs><object resolved='predef::.sprintf_args'>sprintf_args</object></varargs></type></argument></arguments>   <returntype><int/></returntype>   </method>   </docgroup>   </class>   </class> - <class name='Fd'> - <docgroup homogen-name='tcdrain' homogen-type='method'><doc><text><p>Wait for transmission buffers to empty.</p> - </text><group><returns/><text><p>Returns <expr>1</expr> on success and <expr>0</expr> (zero) on failure.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::Stdio.Fd.tcflush'>tcflush()</ref></p> - </text></group></doc> - <method name='tcdrain'> - <arguments/> - <returntype><int><min>0</min><max>1</max></int></returntype> - </method> - </docgroup> - <docgroup homogen-name='tcflush' homogen-type='method'><doc><text><p>Flush queued terminal control messages.</p> - </text><group><param name='flush_direction'/><text><string><group><value>"TCIFLUSH"</value><text><p>Flush received but not read.</p> - </text></group><group><value>"TCOFLUSH"</value><text><p>Flush written but not transmitted.</p> - </text></group><group><value>"TCIOFLUSH"</value><text><p>Flush both of the above. Default.</p> - </text></group></string> - </text></group><group><returns/><text><p>Returns <expr>1</expr> on success and <expr>0</expr> (zero) on failure.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::Stdio.Fd.tcdrain'>tcdrain()</ref></p> - </text></group></doc> - <method name='tcflush'> - <arguments><argument name='flush_direction'><type><or><string/><void/></or></type></argument></arguments> - <returntype><int><min>0</min><max>1</max></int></returntype> - </method> - </docgroup> - <docgroup homogen-type='method'><doc><text><p>Gets/sets term attributes. The returned value/the <ref>attr</ref> parameter -  is a mapping on the form</p> - <mapping><group><member><type><int><min>-1</min><max/></int></type><index>"ispeed"</index></member><text><p>In baud rate.</p> - </text></group><group><member><type><int><min>-1</min><max/></int></type><index>"ospeed"</index></member><text><p>Out baud rate.</p> - </text></group><group><member><type><or><int><min>-1</min><max>-1</max></int><int><min>5</min><max>8</max></int></or></type><index>"csize"</index></member><text><p>Character size in bits.</p> - </text></group><group><member><type><int/></type><index>"rows"</index></member><text><p>Terminal rows.</p> - </text></group><group><member><type><int/></type><index>"columns"</index></member><text><p>Terminal columns.</p> - </text></group><group><member><type><int><min>0</min><max>1</max></int></type><index>flag_name</index></member><text><p>The value of a named flag. The flag name is -  the string describing the termios flags (IGNBRK, BRKINT, -  IGNPAR, PARMRK, INPCK, ISTRIP, INLCR, IGNCR, ICRNL, IUCLC, -  IXON, IXANY, IXOFF, IMAXBEL, OPOST, OLCUC, ONLCR, OCRNL, -  ONOCR, ONLRET, OFILL, OFDEL, OXTABS, ONOEOT, CSTOPB, CREAD, -  PARENB, PARODD, HUPCL, CLOCAL, CRTSCTS, ISIG, ICANON, XCASE, -  ECHO, ECHOE, ECHOK, ECHONL, ECHOCTL, ECHOPRT, ECHOKE, FLUSHO, -  NOFLSH, TOSTOP, PENDIN). See the manpage for termios or -  other documentation for more information. All flags are not -  available on all platforms.</p> - </text></group><group><member><type><int><min>0</min><max>255</max></int></type><index>character_name</index></member><text><p>Sets the value of a control character (VINTR, VQUIT, VERASE, -  VKILL, VEOF, VTIME, VMIN, VSWTC, VSTART, VSTOP, VSUSP, VEOL, -  VREPRINT, VDISCARD, VWERASE, VLNEXT, VEOL2). All control -  characters are not available on all platforms.</p> - </text></group></mapping><p>Negative values are not allowed as indata, but might appear in the -  result from <ref resolved='predef::Stdio.Fd.tcgetattr'>tcgetattr</ref> when the actual value is unknown. <ref resolved='predef::Stdio.Fd.tcsetattr'>tcsetattr</ref> -  returns 0 if failed.</p> - <p> The argument <ref>when</ref> to <ref resolved='predef::Stdio.Fd.tcsetattr'>tcsetattr</ref> describes when the -  changes are to take effect:</p> - <string><group><value>"TCSANOW"</value><text><p>The change occurs immediately (default).</p> - </text></group><group><value>"TCSADRAIN"</value><text><p>The change occurs after all output has been written.</p> - </text></group><group><value>"TCSAFLUSH"</value><text><p>The change occurs after all output has been written, -  and empties input buffers.</p> - </text></group></string> - </text><group><example/><text><p>// setting the terminal in raw mode: -  Stdio.stdin-&gt;tcsetattr((["ECHO":0,"ICANON":0,"VMIN":0,"VTIME":0]));</p> - </text></group><group><note/><text><p>Unknown flags are ignored by <ref resolved='predef::Stdio.Fd.tcsetattr'>tcsetattr()</ref>. <ref resolved='predef::Stdio.Fd.tcsetattr'>tcsetattr</ref> always -  changes the attribute, so only include attributes that actually -  should be altered in the attribute mapping.</p> - </text></group><group><bugs/><text><p>Terminal rows and columns setting by <ref resolved='predef::Stdio.Fd.tcsetattr'>tcsetattr()</ref> is not -  currently supported.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::Stdio.Fd.tcsetsize'>tcsetsize()</ref></p> - </text></group></doc> - <method name='tcgetattr'> - <arguments/> - <returntype><mapping/></returntype> - </method> - <method name='tcsetattr'> - <arguments><argument name='attr'><type><mapping/></type></argument></arguments> - <returntype><int/></returntype> - </method> - <method name='tcsetattr'> - <arguments><argument name='attr'><type><mapping/></type></argument><argument name='when'><type><string/></type></argument></arguments> - <returntype><int/></returntype> - </method> - </docgroup> - <docgroup homogen-name='tcsendbreak' homogen-type='method'><doc><text><p>Send a break signal.</p> - </text><group><param name='duration'/><text><p>Duration to send the signal for. <expr>0</expr> (zero) causes -  a break signal to be sent for between 0.25 and 0.5 seconds. -  Other values are operating system dependent:</p> - <dl><group><item name='SunOS'/><text><p>The number of joined break signals as above.</p> - </text></group><group><item name='Linux, AIX, Digital Unix, Tru64'/><text><p>The time in milliseconds.</p> - </text></group><group><item name='FreeBSD, NetBSD, HP-UX, MacOS'/><text><p>The value is ignored.</p> - </text></group><group><item name='Solaris, Unixware'/><text><p>The behavior is changed to be similar to <ref resolved='predef::Stdio.Fd.tcdrain'>tcdrain()</ref>.</p> - </text></group></dl> - </text></group><group><returns/><text><p>Returns <expr>1</expr> on success and <expr>0</expr> (zero) on failure.</p> - </text></group></doc> - <method name='tcsendbreak'> - <arguments><argument name='duration'><type><or><int/><void/></or></type></argument></arguments> - <returntype><int><min>0</min><max>1</max></int></returntype> - </method> - </docgroup> - <docgroup homogen-name='tcsetsize' homogen-type='method'><doc><text><p>Set the number of rows and columns for a terminal.</p> - </text><group><returns/><text><p>Returns <expr>1</expr> on success and <expr>0</expr> (zero) on failure.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::Stdio.Fd.tcgetattr'>tcgetattr()</ref>, <ref resolved='predef::Stdio.Fd.tcsetattr'>tcsetattr()</ref></p> - </text></group></doc> - <method name='tcsetsize'> - <arguments><argument name='rows'><type><int/></type></argument><argument name='cols'><type><int/></type></argument></arguments> - <returntype><int><min>0</min><max>1</max></int></returntype> - </method> - </docgroup> - </class> +    <class name='File'>   <annotations><annotation><ref resolved='predef::Pike.Annotations.Implements'>Pike.Annotations.Implements</ref>(<ref resolved='predef::Stdio.NonblockingStream'>NonblockingStream</ref>)</annotation><annotation><ref resolved='predef::Pike.Annotations.Implements'>Pike.Annotations.Implements</ref>(<ref resolved='predef::Stdio.BlockFile'>BlockFile</ref>)</annotation></annotations>   <doc><text><p>This is the basic I/O object, it provides socket and pipe    communication as well as file access. It does not buffer reads and    writes by default, and provides no line-by-line reading, that is done    with <ref resolved='predef::Stdio.FILE'>Stdio.FILE</ref> object.</p>   </text><group><note/><text><p>The file or stream will normally be closed when this object is    destructed (unless there are more objects that refer to the same    file through use of <ref resolved='predef::Stdio.File.assign'>assign</ref> or <ref resolved='predef::Stdio.File.dup'>dup</ref>). Objects do not contain    cyclic references in themselves, so they will be destructed timely    when they run out of references.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::Stdio.FILE'>Stdio.FILE</ref></p>   </text></group></doc>   <docgroup homogen-name='assign' homogen-type='method'><doc><text><p>This function takes a clone of Stdio.File and assigns all    variables of this file from it. It can be used together with <ref resolved='predef::Stdio.File.dup'>dup()</ref>    to move files around.</p>   </text><group><seealso/><text><p><ref resolved='predef::Stdio.File.dup'>dup()</ref></p>   </text></group></doc>   <method name='assign'> - <arguments><argument name='o'><type><or><object resolved='predef::Stdio.File'>File</object><object resolved='predef::Stdio.Fd'>Fd</object></or></type></argument></arguments> + <arguments><argument name='o'><type><or><object resolved='predef::Stdio.File'>File</object><object resolved='predef::_Stdio.Fd'>Fd</object></or></type></argument></arguments>   <returntype><int/></returntype>   </method>   </docgroup>   <docgroup homogen-name='async_connect' homogen-type='method'><doc><text><p>Open a TCP/IP connection asynchronously.</p>   <p> This function is similar to <ref resolved='predef::Stdio.File.connect'>connect()</ref>, but works asynchronously.</p>   </text><group><param name='host'/><text><p>Hostname or IP to connect to.</p>   </text></group><group><param name='port'/><text><p>Port number or service name to connect to.</p>   </text></group><group><param name='callback'/><text><p>Function to be called on completion.    The first argument will be <expr>1</expr> if a connection was    successfully established, and <expr>0</expr> (zero) on failure.
autodoc.git/modref.xml:126575:   <docgroup homogen-name='connect' homogen-type='method'><doc><text><p>Open a TCP/IP connection to the specified destination.</p>   <p> In nonblocking mode, success is indicated with the write-callback,    and failure with the close-callback or the read_oob-callback.</p>   <p> The <ref resolved='predef::Stdio.File.connect.host'>host</ref> argument is the hostname or IP number of the remote    machine.</p>   <p> A local IP and port can be explicitly bound by specifying    <ref resolved='predef::Stdio.File.connect.client'>client</ref> and <ref resolved='predef::Stdio.File.connect.client_port'>client_port</ref>.</p>   <p> If the <ref resolved='predef::Stdio.File.connect.data'>data</ref> argument is included the socket will use    TCP_FAST_OPEN if posible. In this mode the the function will    return the part of the data that has not been sent to the remote -  server yet instead of 1 (you will have to use <ref>write</ref> to send +  server yet instead of 1 (you will have to use <ref resolved='predef::_Stdio.Fd.write'>write</ref> to send    this data).</p>   <p> Note that TCP_FAST_OPEN requires server support, the connection    might fail even though the remote server exists. It might be    advisable to retry without TCP_FAST_OPEN (and remember this    fact)</p>   </text><group><returns/><text><p>This function returns 1 or the remaining <ref resolved='predef::Stdio.File.connect.data'>data</ref> for success, 0    otherwise.</p>   </text></group><group><note/><text><p>In nonblocking mode <expr>0</expr> (zero) may be returned and    <ref resolved='predef::Stdio.File.errno'>errno()</ref> set to <expr>EWOULDBLOCK</expr> or <expr>WSAEWOULDBLOCK</expr>.</p>   <p> This should not be regarded as a    connection failure. In nonblocking mode you need to wait for a    write or close callback before you know if the connection failed    or not.</p> - </text></group><group><seealso/><text><p><ref>query_address()</ref>, <ref resolved='predef::Stdio.File.async_connect'>async_connect()</ref>, <ref resolved='predef::Stdio.File.connect_unix'>connect_unix()</ref></p> + </text></group><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.query_address'>query_address()</ref>, <ref resolved='predef::Stdio.File.async_connect'>async_connect()</ref>, <ref resolved='predef::Stdio.File.connect_unix'>connect_unix()</ref></p>   </text></group></doc>   <method name='connect'><modifiers><variant/></modifiers>   <arguments><argument name='host'><type><string/></type></argument><argument name='port'><type><or><int><min>0</min><max/></int><string/></or></type></argument></arguments>   <returntype><int/></returntype>   </method>   <method name='connect'><modifiers><variant/></modifiers>   <arguments><argument name='host'><type><string/></type></argument><argument name='port'><type><or><int><min>0</min><max/></int><string/></or></type></argument><argument name='client'><type><string/></type></argument><argument name='client_port'><type><or><int><min>0</min><max/></int><string/></or></type></argument></arguments>   <returntype><int/></returntype>   </method>   <method name='connect'><modifiers><variant/></modifiers>
autodoc.git/modref.xml:126684:   </docgroup>   <docgroup homogen-name='errno' homogen-type='method'><doc><text><p>Returns the error code for the last command on this file.    Error code is normally cleared when a command is successful.</p>   </text></doc>   <method name='errno'>   <arguments/>   <returntype><int/></returntype>   </method>   </docgroup>   <docgroup homogen-name='Fd' homogen-type='inherit'> - <inherit name='Fd'><modifiers><optional/></modifiers><classname resolved='predef::Stdio.Fd'>Fd</classname></inherit> + <inherit name='Fd'><modifiers><optional/></modifiers><classname resolved='predef::_Stdio.Fd'>Fd</classname></inherit>   </docgroup>   <docgroup homogen-name='line_iterator' homogen-type='method'><doc><text><p>Returns an iterator that will loop over the lines in this file.    If trim is true, all <tt>'\r'</tt> characters will be removed from    the input.</p>   </text></doc>   <method name='line_iterator'>   <arguments><argument name='trim'><type><or><int/><void/></or></type></argument></arguments>   <returntype><or><object resolved='predef::String.SplitIterator'>String.SplitIterator</object><object>LineIterator</object></or></returntype>   </method>   </docgroup>
autodoc.git/modref.xml:126746:    anyway.</p>   </text></group><group><returns/><text><p>This function returns 1 for success, 0 otherwise.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::Stdio.File.connect'>connect()</ref>, <ref resolved='predef::Stdio.File.set_nonblocking'>set_nonblocking()</ref>, <ref resolved='predef::Stdio.File.set_blocking'>set_blocking()</ref></p>   </text></group></doc>   <method name='open_socket'>   <arguments><argument name='port'><type><or><int/><string/><void/></or></type></argument><argument name='address'><type><or><string/><void/></or></type></argument><argument name='family_hint'><type><or><int/><string/><void/></or></type></argument></arguments>   <returntype><int/></returntype>   </method>   </docgroup>   <docgroup homogen-name='openat' homogen-type='method'><doc><text><p>Open a file relative to an open directory.</p> - </text><group><seealso/><text><p><ref>File.statat()</ref>, <ref>File.unlinkat()</ref></p> + </text><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.statat'>File.statat()</ref>, <ref resolved='predef::_Stdio.Fd.unlinkat'>File.unlinkat()</ref></p>   </text></group></doc>   <method name='openat'>   <arguments><argument name='filename'><type><string/></type></argument></arguments>   <returntype><object resolved='predef::Stdio.File'>File</object></returntype>   </method>   <method name='openat'>   <arguments><argument name='filename'><type><string/></type></argument><argument name='mode'><type><string/></type></argument></arguments>   <returntype><object resolved='predef::Stdio.File'>File</object></returntype>   </method>   <method name='openat'>   <arguments><argument name='filename'><type><string/></type></argument><argument name='mode'><type><string/></type></argument><argument name='mask'><type><int/></type></argument></arguments>   <returntype><object resolved='predef::Stdio.File'>File</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='openpt' homogen-type='method'><doc><text><p>Open the master end of a pseudo-terminal pair. The parameter    <ref resolved='predef::Stdio.File.openpt.mode'>mode</ref> should contain one or more of the following letters:</p>   <string><group><value>"r"</value><text><p>Open terminal for reading.</p>   </text></group><group><value>"w"</value><text><p>Open terminal for writing.</p>   </text></group></string><p><ref resolved='predef::Stdio.File.openpt.mode'>mode</ref> should always contain at least one of the letters    <expr>"r"</expr> or <expr>"w"</expr>.</p> - </text><group><seealso/><text><p><ref>grantpt()</ref></p> + </text><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.grantpt'>grantpt()</ref></p>   </text></group></doc>   <method name='openpt'>   <arguments><argument name='mode'><type><string/></type></argument></arguments>   <returntype><int/></returntype>   </method>   </docgroup>   <docgroup homogen-name='pipe' homogen-type='method'><doc><text><p>This function creates a pipe between the object it was called in    and an object that is returned.</p>   </text><group><param name='required_properties'/><text><p>Binary or (<ref resolved='predef::`|'>predef::`|()</ref>) of required <expr>PROP_</expr> properties.</p>   <int><group><value>PROP_IPC</value><text><p>The resulting pipe may be used for inter process communication.</p>   </text></group><group><value>PROP_NONBLOCK</value><text><p>The resulting pipe supports nonblocking I/O.</p>   </text></group><group><value>PROP_SHUTDOWN</value><text><p>The resulting pipe supports shutting down transmission in either    direction (see <ref resolved='predef::Stdio.File.close'>close()</ref>).</p>   </text></group><group><value>PROP_BUFFERED</value><text><p>The resulting pipe is buffered (usually 4KB).</p>   </text></group><group><value>PROP_BIDIRECTIONAL</value><text><p>The resulting pipe is bi-directional.</p>   </text></group><group><value>PROP_SEND_FD</value><text><p>The resulting pipe might support sending of file descriptors -  (see <ref resolved='predef::Stdio.File.send_fd'>send_fd()</ref> and <ref>receive_fd()</ref> for details).</p> +  (see <ref resolved='predef::Stdio.File.send_fd'>send_fd()</ref> and <ref resolved='predef::_Stdio.Fd.receive_fd'>receive_fd()</ref> for details).</p>   </text></group><group><value>PROP_TTY</value><text><p>The resulting pipe is a pseudo-tty.</p>   </text></group><group><value>PROP_REVERSE</value><text><p>The resulting pipe supports communication "backwards" (but    not necessarily "forwards", see <ref resolved='predef::_Stdio.PROP_BIDIRECTIONAL'>PROP_BIDIRECTIONAL</ref>).</p>   </text></group></int><p>The default is <expr>PROP_NONBLOCK|PROP_BIDIRECTIONAL</expr>.</p>   <p> If <ref resolved='predef::_Stdio.PROP_BIDIRECTIONAL'>PROP_BIDIRECTIONAL</ref> isn't specified, the read-end is this    object, and the write-end is the returned object (unless    <ref resolved='predef::_Stdio.PROP_REVERSE'>PROP_REVERSE</ref> has been specified, in which case it is the other    way around).</p>   <p> The two ends of a bi-directional pipe are indistinguishable.</p>   <p> For <ref resolved='predef::_Stdio.PROP_TTY'>PROP_TTY</ref> the returned object is the slave (unless    <ref resolved='predef::_Stdio.PROP_REVERSE'>PROP_REVERSE</ref> has been specified).</p>   <p> If the File object this function is called in was open to begin with,    it will be closed before the pipe is created.</p>   </text></group><group><note/><text><p>Calling this function with an argument of <tt>0</tt> is not the    same as calling it with no arguments.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::Process.create_process'>Process.create_process()</ref>, <ref resolved='predef::Stdio.File.send_fd'>send_fd()</ref>, <ref>receive_fd()</ref>, + </text></group><group><seealso/><text><p><ref resolved='predef::Process.create_process'>Process.create_process()</ref>, <ref resolved='predef::Stdio.File.send_fd'>send_fd()</ref>, <ref resolved='predef::_Stdio.Fd.receive_fd'>receive_fd()</ref>,    <ref resolved='predef::_Stdio.PROP_IPC'>PROP_IPC</ref>, <ref resolved='predef::_Stdio.PROP_NONBLOCK'>PROP_NONBLOCK</ref>, <ref resolved='predef::_Stdio.PROP_SEND_FD'>PROP_SEND_FD</ref>,    <ref resolved='predef::_Stdio.PROP_SHUTDOWN'>PROP_SHUTDOWN</ref>, <ref resolved='predef::_Stdio.PROP_BUFFERED'>PROP_BUFFERED</ref>, <ref resolved='predef::_Stdio.PROP_REVERSE'>PROP_REVERSE</ref>,    <ref resolved='predef::_Stdio.PROP_BIDIRECTIONAL'>PROP_BIDIRECTIONAL</ref>, <ref resolved='predef::_Stdio.PROP_TTY'>PROP_TTY</ref></p>   </text></group></doc>   <method name='pipe'>   <arguments><argument name='required_properties'><type><or><void/><int/></or></type></argument></arguments>   <returntype><object resolved='predef::Stdio.File'>File</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='query_buffer_mode' homogen-type='method'><doc><text><p>Get the active input and output buffers that have been
autodoc.git/modref.xml:126866:   </docgroup>   <docgroup homogen-name='query_id' homogen-type='method'><doc><text><p>This function returns the <tt>id</tt> that has been set with <ref resolved='predef::Stdio.File.set_id'>set_id()</ref>.</p>   </text><group><seealso/><text><p><ref resolved='predef::Stdio.File.set_id'>set_id()</ref></p>   </text></group></doc>   <method name='query_id'>   <arguments/>   <returntype><mixed/></returntype>   </method>   </docgroup>   <docgroup homogen-name='read' homogen-type='method'><doc><text><p>Read (optionally buffered) data from a file or a stream.</p> - <p> Proxy function for <ref>Fd::read()</ref>, that adds support for + <p> Proxy function for <ref resolved='predef::_Stdio.Fd.read'>Fd::read()</ref>, that adds support for    the buffering configured by <ref resolved='predef::Stdio.File.set_buffer_mode'>set_buffer_mode()</ref></p> - </text><group><seealso/><text><p><ref resolved='predef::Stdio.File.read_function'>read_function()</ref>, <ref>write()</ref>, <ref>Fd::read()</ref></p> + </text><group><seealso/><text><p><ref resolved='predef::Stdio.File.read_function'>read_function()</ref>, <ref resolved='predef::_Stdio.Fd.write'>write()</ref>, <ref resolved='predef::_Stdio.Fd.read'>Fd::read()</ref></p>   </text></group></doc>   <method name='read'>   <arguments><argument name='nbytes'><type><or><int/><void/></or></type></argument><argument name='not_all'><type><or><int><min>0</min><max>1</max></int><void/></or></type></argument></arguments>   <returntype><string><min>0</min><max>255</max></string></returntype>   </method>   </docgroup>   <docgroup homogen-name='read_function' homogen-type='method'><doc><text><p>Returns a function that when called will call <ref resolved='predef::Stdio.File.read'>read</ref> with    nbytes as argument. Can be used to get various callback    functions, eg for the fourth argument to    <ref resolved='predef::String.SplitIterator'>String.SplitIterator</ref>.</p>   </text></doc>   <method name='read_function'>   <arguments><argument name='nbytes'><type><int/></type></argument></arguments>   <returntype><function><returntype><string/></returntype></function></returntype>   </method>   </docgroup>   <docgroup homogen-name='send_fd' homogen-type='method'>   <method name='send_fd'> - <arguments><argument name='file'><type><or><object resolved='predef::Stdio.File'>File</object><object resolved='predef::Stdio.Fd'>Fd</object></or></type></argument></arguments> + <arguments><argument name='file'><type><or><object resolved='predef::Stdio.File'>File</object><object resolved='predef::_Stdio.Fd'>Fd</object></or></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='set_blocking' homogen-type='method'><doc><text><p>This function clears all callbacks and sets a stream to blocking    mode. i.e. reading, writing and closing will wait until data has    been transferred before returning.</p>   </text><group><note/><text><p>The callbacks are cleared and blocking mode is set in one atomic    operation, so no callback gets called in between if the backend    is running in another thread.</p>   <p> Even so, if the stream is in callback mode (i.e. if any    callbacks are installed) then only the backend thread can use    this function reliably; it might otherwise already be running in -  a callback which is about to call e.g. <ref>write</ref> when the stream +  a callback which is about to call e.g. <ref resolved='predef::_Stdio.Fd.write'>write</ref> when the stream    becomes blocking.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::Stdio.File.set_nonblocking'>set_nonblocking()</ref>, <ref resolved='predef::Stdio.File.set_nonblocking_keep_callbacks'>set_nonblocking_keep_callbacks()</ref>,    <ref resolved='predef::Stdio.File.set_blocking_keep_callbacks'>set_blocking_keep_callbacks()</ref></p>   </text></group></doc>   <method name='set_blocking'>   <arguments/>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-type='method'><doc><text><p>Toggle between blocking and nonblocking,
autodoc.git/modref.xml:126930:   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='set_buffer_mode' homogen-type='method'><doc><text><p>Toggle the file to Buffer mode.</p>   <p> In this mode reading and writing will be done via Buffer    objects, in the directions you included buffers.</p>   </text><group><param name='in'/><text><p>Input buffer. If this buffer is non-empty, its contents    will be returned after any already received data.</p>   </text></group><group><param name='out'/><text><p>Output buffer. If this buffer is non-empty, its contents    will be sent after any data already queued for sending.</p> - </text></group><group><note/><text><p>Normally you call <ref>write</ref> to re-trigger the write callback if + </text></group><group><note/><text><p>Normally you call <ref resolved='predef::_Stdio.Fd.write'>write</ref> to re-trigger the write callback if    you do not output anything in it (which will stop it from    re-occuring again).</p>   <p> This will work with buffered output mode as well, but simply    adding more data to the output buffer will work as well.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::Stdio.File.query_buffer_mode'>query_buffer_mode()</ref></p>   </text></group></doc>   <method name='set_buffer_mode'>   <arguments><argument name='in'><type><or><object resolved='predef::_Stdio.Buffer'>Stdio.Buffer</object><int><min>0</min><max>0</max></int></or></type></argument><argument name='out'><type><or><object resolved='predef::_Stdio.Buffer'>Stdio.Buffer</object><int><min>0</min><max>0</max></int></or></type></argument></arguments>   <returntype><void/></returntype>   </method>
autodoc.git/modref.xml:126963:   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-type='method'><doc><text><p>These functions set the various callbacks, which will be called    when various events occur on the stream. A zero as argument will    remove the callback.</p>   <p> A <ref resolved='predef::Pike.Backend'>Pike.Backend</ref> object is responsible for calling the    callbacks. It requires a thread to be waiting in it to execute    the calls. That means that only one of the callbacks will be    running at a time, so you don't need mutexes between them.</p> - <p> Unless you've specified otherwise with the <ref>set_backend</ref> + <p> Unless you've specified otherwise with the <ref resolved='predef::_Stdio.Fd.set_backend'>set_backend</ref>    function, the default backend <ref resolved='predef::Pike.DefaultBackend'>Pike.DefaultBackend</ref> will be    used. It's normally activated by returning <expr>-1</expr> from the    <tt>main</tt> function and will then execute in the main thread.</p>   <ul><group><item/><text><p>When data arrives on the stream, <ref resolved='predef::Stdio.File.set_read_callback.read_cb'>read_cb</ref> will be called with    some or all of that data as the second argument.</p>   <p> If the file is in buffer mode, the second argument will be a Buffer.</p>   <p> This will always be the same buffer, so data you do not use in    one read callback can be simply left in the buffer, when new    data arrives it will be appended</p>   </text></group><group><item/><text><p>When the stream has buffer space over for writing, <ref>write_cb</ref>
autodoc.git/modref.xml:127001:    If it doesn't write anything, then <ref>write_cb</ref> will be tried.    This also means that <ref>write_oob_cb</ref> might get called when the    remote end of a connection has closed the write direction.</p>   </text></group><group><item/><text><p>When an error or an end-of-stream in the read direction    occurs, <ref>close_cb</ref> will be called. <ref resolved='predef::Stdio.File.errno'>errno</ref> will return the    error, or zero in the case of an end-of-stream.</p>   <p> The name of this callback is rather unfortunate since it    really has nothing to do with a close: The stream is still    open when <ref>close_cb</ref> is called (you might not be able to read    and/or write to it, but you can still use things like -  <ref>query_address</ref>, and the underlying file descriptor is still +  <ref resolved='predef::_Stdio.Fd.query_address'>query_address</ref>, and the underlying file descriptor is still    allocated). Also, this callback will not be called for a local    close, neither by a call to <ref resolved='predef::Stdio.File.close'>close</ref> or by destructing this    object.</p>   <p> Also, <ref>close_cb</ref> will not be called if a remote close only    occurs in the write direction; that is handled by <ref>write_cb</ref>    (or possibly <ref>write_oob_cb</ref>).</p>   <p> Events to <ref resolved='predef::Stdio.File.set_read_callback.read_cb'>read_cb</ref> and <ref>close_cb</ref> will be automatically    deregistered if an end-of-stream occurs, and all events in the    case of an error. I.e. there won't be any more calls to the    callbacks unless they are reinstalled. This doesn't affect the
autodoc.git/modref.xml:127033:    backend that means it will immediately start another round and    check files and call outs anew.</p>   </text><group><param name='event_mask'/><text><p>An event mask specifing bitwise OR of one or more event types to    monitor, selected from <ref resolved='predef::_Stdio.NOTE_WRITE'>Stdio.NOTE_WRITE</ref> and friends.</p>   </text></group><group><note/><text><p>These functions do not set the file nonblocking.</p>   </text></group><group><note/><text><p>Callbacks are also set by <ref resolved='predef::Stdio.File.set_callbacks'>set_callbacks</ref> and    <ref resolved='predef::Stdio.File.set_nonblocking'>set_nonblocking()</ref>.</p>   </text></group><group><note/><text><p>After a callback has been called, it's disabled until it has    accessed the stream accordingly, i.e. the <ref>write_cb</ref> callback    is disabled after it's been called until something has been -  written with <ref>write</ref>, and the <ref>write_oob_cb</ref> callback is +  written with <ref resolved='predef::_Stdio.Fd.write'>write</ref>, and the <ref>write_oob_cb</ref> callback is    likewise disabled until something has been written with -  <ref>write_oob</ref>. Since the data already has been read when the read +  <ref resolved='predef::_Stdio.Fd.write_oob'>write_oob</ref>. Since the data already has been read when the read    callbacks are called, this effect is not noticeable for them.</p>   </text></group><group><note/><text><p>Installing callbacks means that you will start doing I/O on the    stream from the thread running the backend. If you are running    these set functions from another thread you must be prepared    that the callbacks can be called immediately by the backend    thread, so it might not be safe to continue using the stream in    this thread.</p>   <p> Because of that, it's useful to talk about "callback mode" when    any callback is installed. In callback mode the stream should be    seen as "bound" to the backend thread. For instance, it's only
autodoc.git/modref.xml:127060:   </text></group><group><note/><text><p>The file object will stay referenced from the backend object as    long as there are callbacks that can receive events.</p>   </text></group><group><bugs/><text><p>Setting a close callback without a read callback currently only    works when there's no risk of getting more data on the stream.    Otherwise the close callback will be silently deregistered if    data arrives.</p>   </text></group><group><note/><text><p>fs_event callbacks only trigger on systems that support these events.    Currently, this includes systems that use kqueue, such as Mac OS X,    and various flavours of BSD.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::Stdio.File.set_callbacks'>set_callbacks</ref>, <ref resolved='predef::Stdio.File.set_nonblocking'>set_nonblocking()</ref>, <ref resolved='predef::Stdio.File.set_id'>set_id()</ref>, -  <ref>set_backend</ref>, <ref resolved='predef::Stdio.File.query_read_callback'>query_read_callback</ref>, <ref resolved='predef::Stdio.File.query_write_callback'>query_write_callback</ref>, +  <ref resolved='predef::_Stdio.Fd.set_backend'>set_backend</ref>, <ref resolved='predef::Stdio.File.query_read_callback'>query_read_callback</ref>, <ref resolved='predef::Stdio.File.query_write_callback'>query_write_callback</ref>,    <ref resolved='predef::Stdio.File.query_read_oob_callback'>query_read_oob_callback</ref>, <ref resolved='predef::Stdio.File.query_write_oob_callback'>query_write_oob_callback</ref>,    <ref resolved='predef::Stdio.File.query_close_callback'>query_close_callback</ref></p>   </text></group></doc>   <method name='set_read_callback'>   <arguments><argument name='read_cb'><type><function><argtype><mixed/></argtype><argtype><string/></argtype><returntype><int/></returntype></function></type></argument></arguments>   <returntype><void/></returntype>   </method>   <method name='set_read_callback'>   <arguments><argument name='read_cb'><type><function><argtype><mixed/></argtype><argtype><object resolved='predef::_Stdio.Buffer'>Buffer</object></argtype><returntype><int/></returntype></function></type></argument></arguments>   <returntype><void/></returntype>
autodoc.git/modref.xml:127355:   </method>   <method name='create'>   <arguments><argument><value>"stdin"</value></argument></arguments>   <returntype><void/></returntype>   </method>   <method name='create'>   <arguments><argument><value>"stdin"</value></argument><argument name='accept_callback'><type><function/></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup> - <docgroup homogen-name='fd_factory' homogen-type='method'><doc><text><p>Factory creating empty <ref resolved='predef::Stdio.Fd'>Fd</ref> objects.</p> + <docgroup homogen-name='fd_factory' homogen-type='method'><doc><text><p>Factory creating empty <ref resolved='predef::_Stdio.Fd'>Fd</ref> objects.</p>   <p> This function is called by <ref resolved='predef::Stdio.Port.accept'>accept()</ref> when it needs to create    a new file.</p> - <p> The default implementation returns the <ref resolved='predef::Stdio.Fd'>Fd</ref> inherit in + <p> The default implementation returns the <ref resolved='predef::_Stdio.Fd'>Fd</ref> inherit in    an empty <ref resolved='predef::Stdio.File'>File</ref> object.</p>   </text><group><seealso/><text><p><ref resolved='predef::Stdio.Port.accept'>accept()</ref></p>   </text></group></doc>   <method name='fd_factory'><modifiers><protected/></modifiers>   <arguments/> - <returntype><object resolved='predef::Stdio.Fd'>Fd</object></returntype> + <returntype><object resolved='predef::_Stdio.Fd'>Fd</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='_port' homogen-type='inherit'>   <inherit name='_port'><classname resolved='predef::_Stdio._port'>_port</classname></inherit>   </docgroup>   </class>   <class name='Readline'>   <docgroup homogen-name='add_to_kill_ring' homogen-type='method'><doc><group><fixme/><text><p>Document this function</p>   </text></group></doc>   <method name='add_to_kill_ring'>
autodoc.git/modref.xml:134679:    to spawn new processes (by specifying the <expr>"forkd"</expr> modifier).</p>   <p> The typical use is when the main program is large and/or    when it has lots of open file descriptors. This can cause    considerable overhead in process creation.</p>   </text><group><seealso/><text><p><ref>Process.RemoteProcess</ref>, <ref resolved='predef::Process.create_process'>Process.create_process</ref></p>   </text></group></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup>   <class name='FdStream'> - <doc><text><p>This is the main control <ref resolved='predef::Stdio.Fd'>Stdio.Fd</ref> and is + <doc><text><p>This is the main control <ref resolved='predef::_Stdio.Fd'>Stdio.Fd</ref> and is    always on fd number <expr>3</expr>.</p>   <p> To spawn a new process, a new <ref resolved='predef::_Stdio.PROP_SEND_FD'>Stdio.PROP_SEND_FD</ref> -  capable <ref resolved='predef::Stdio.Fd'>Stdio.Fd</ref> is sent over this fd, and a +  capable <ref resolved='predef::_Stdio.Fd'>Stdio.Fd</ref> is sent over this fd, and a    single byte of data is sent as payload.</p>   <p> The sent fd will become a <ref>ForkFd</ref> inside a <ref resolved='predef::Tools.Standalone.forkd.ForkStream'>ForkStream</ref>.</p>   </text></doc>   <docgroup homogen-name='File' homogen-type='inherit'>   <inherit name='File'><classname resolved='predef::Stdio.File'>Stdio.File</classname></inherit>   </docgroup>   </class>   <class name='ForkStream'>   <doc><text><p>This class maps 1 to 1 to Process.RemoteProcess,    and implements the daemon side of the RPC protocol.</p>   <p> It contains an array (<ref resolved='predef::Tools.Standalone.forkd.ForkStream.fds'>fds</ref>) with the file descriptors    that have been received so far from the remote.</p>   </text></doc>   <docgroup homogen-name='fds' homogen-type='variable'><doc><text><p>The remote file descriptors received so far in order.</p>   </text></doc> - <variable name='fds'><type><array><valuetype><object resolved='predef::Stdio.Fd'>Stdio.Fd</object></valuetype></array></type></variable> + <variable name='fds'><type><array><valuetype><object resolved='predef::_Stdio.Fd'>Stdio.Fd</object></valuetype></array></type></variable>   </docgroup>   <docgroup homogen-name='File' homogen-type='inherit'>   <inherit name='File'><classname resolved='predef::Stdio.File'>Stdio.File</classname></inherit>   </docgroup>   </class>   </class>   <class name='git_export_autodoc'>   <doc><text><p>Tool for converting the Pike git repository to    a corresponding git repository containing the    extracted autodoc.xml and documentation.</p>
autodoc.git/modref.xml:142017:    <ref resolved='predef::_Stdio.PROP_BIDIRECTIONAL'>PROP_BIDIRECTIONAL</ref> hasn't been specified, to    request the direction of the resulting pipe to    reversed.</p>   </text><group><seealso/><text><p><ref resolved='predef::Stdio.File.pipe'>Stdio.File()-&gt;pipe()</ref></p>   </text></group></doc>   <constant name='PROP_REVERSE'><type><int/></type></constant>   </docgroup>   <docgroup homogen-name='PROP_SEND_FD' homogen-type='constant'><doc><text><p>The <ref resolved='predef::Stdio.File'>Stdio.File</ref> object might support the <ref resolved='predef::Stdio.File.send_fd'>Stdio.File()-&gt;send_fd()</ref>    operation.</p>   </text><group><seealso/><text><p><ref resolved='predef::Stdio.File.pipe'>Stdio.File()-&gt;pipe()</ref>, <ref resolved='predef::Stdio.File.send_fd'>Stdio.File()-&gt;send_fd()</ref>, -  <ref>Stdio.File()-&gt;receive_fd()</ref></p> +  <ref resolved='predef::_Stdio.Fd.receive_fd'>Stdio.File()-&gt;receive_fd()</ref></p>   </text></group></doc>   <constant name='PROP_SEND_FD'><type><int/></type></constant>   </docgroup>   <docgroup homogen-name='PROP_SHUTDOWN' homogen-type='constant'><doc><text><p>The file supports shutting down transmission in either    direction.</p>   </text><group><seealso/><text><p><ref resolved='predef::Stdio.File.close'>Stdio.File()-&gt;close()</ref>, <ref resolved='predef::Stdio.File.pipe'>Stdio.File()-&gt;pipe()</ref></p>   </text></group></doc>   <constant name='PROP_SHUTDOWN'><type><int/></type></constant>   </docgroup>   <docgroup homogen-name='PROP_TTY' homogen-type='constant'><doc><text><p>The <ref resolved='predef::Stdio.File'>Stdio.File</ref> object supports tty operations.</p>
autodoc.git/modref.xml:142065:   <constant name='XATTR_REPLACE'/>   </docgroup>   <docgroup homogen-name='__HAVE_OOB__' homogen-type='constant'><doc><text><p>Exists and has the value 1 if OOB operations are available.</p>   </text><group><note/><text><p>In Pike 7.5 and later OOB operations are always present.</p>   </text></group></doc>   <constant name='__HAVE_OOB__'/>   </docgroup>   <docgroup homogen-name='__HAVE_SEND_FD__' homogen-type='constant'><doc><text><p>Support for sending of file descriptors over    <ref resolved='predef::Stdio.File.pipe'>Stdio.File()-&gt;pipe()</ref> objects with <ref resolved='predef::_Stdio.PROP_SEND_FD'>PROP_SEND_FD</ref>    capability is supported.</p> - </text><group><seealso/><text><p><ref resolved='predef::Stdio.File.send_fd'>Stdio.File()-&gt;send_fd()</ref>, <ref>Stdio.File()-&gt;receive_fd()</ref>, -  <ref resolved='predef::Stdio.File.read'>Stdio.File()-&gt;read()</ref>, <ref>Stdio.File()-&gt;write()</ref>, + </text><group><seealso/><text><p><ref resolved='predef::Stdio.File.send_fd'>Stdio.File()-&gt;send_fd()</ref>, <ref resolved='predef::_Stdio.Fd.receive_fd'>Stdio.File()-&gt;receive_fd()</ref>, +  <ref resolved='predef::Stdio.File.read'>Stdio.File()-&gt;read()</ref>, <ref resolved='predef::_Stdio.Fd.write'>Stdio.File()-&gt;write()</ref>,    <ref resolved='predef::Stdio.File.pipe'>Stdio.File()-&gt;pipe()</ref></p>   </text></group></doc>   <constant name='__HAVE_SEND_FD__'/>   </docgroup>   <docgroup homogen-name='__OOB__' homogen-type='constant'><doc><text><p>Implementation level of nonblocking I/O OOB support.</p>   <int><group><value>0</value><text><p>Nonblocking OOB support is not supported.</p>   </text></group><group><value>1</value><text><p>Nonblocking OOB works a little.</p>   </text></group><group><value>2</value><text><p>Nonblocking OOB almost works.</p>   </text></group><group><value>3</value><text><p>Nonblocking OOB works as intended.</p>   </text></group><group><value>-1</value><text><p>Unknown level of nonblocking OOB support.</p>
autodoc.git/modref.xml:143011:   <method name='create'>   <arguments><argument name='fd'><type><int/></type></argument><argument name='mode'><type><string/></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='dup' homogen-type='method'><doc><text><p>Duplicate the file.</p>   </text><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.dup2'>dup2()</ref></p>   </text></group></doc>   <method name='dup'>   <arguments/> - <returntype><object resolved='predef::Stdio.Fd'>Stdio.Fd</object></returntype> + <returntype><object resolved='predef::_Stdio.Fd'>Stdio.Fd</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='dup2' homogen-type='method'><doc><text><p>Duplicate a file over another.</p>   <p> This function works similarly to <ref>assign()</ref>, but instead of making    the argument a reference to the same file, it creates a new file    with the same properties and places it in the argument.</p>   </text><group><returns/><text><p>Returns <expr>1</expr> on success and <expr>0</expr> (zero) on failure.</p>   </text></group><group><note/><text><p><ref resolved='predef::_Stdio.Fd.dup2.to'>to</ref> need not be open, in which    case a new fd is allocated.</p>   </text></group><group><note/><text><p>Note also that <ref resolved='predef::_Stdio.Fd.dup2.to'>to</ref> is also assigned to the same backend (if any)
autodoc.git/modref.xml:143037:   <returntype><int/></returntype>   </method>   </docgroup>   <docgroup homogen-name='errno' homogen-type='method'><doc><text><p>Return the errno for the latest failed file operation.</p>   </text></doc>   <method name='errno'>   <arguments/>   <returntype><int/></returntype>   </method>   </docgroup> - <docgroup homogen-name='fd_factory' homogen-type='method'><doc><text><p>Factory creating <ref resolved='predef::Stdio.Fd'>Stdio.Fd</ref> objects.</p> + <docgroup homogen-name='fd_factory' homogen-type='method'><doc><text><p>Factory creating <ref resolved='predef::_Stdio.Fd'>Stdio.Fd</ref> objects.</p>   <p> This function is called by <ref resolved='predef::_Stdio.Fd.openat'>openat()</ref>, <ref resolved='predef::_Stdio.Fd.pipe'>pipe()</ref>, <ref resolved='predef::_Stdio.Fd.dup'>dup()</ref>    and other functions creating new file objects.</p>   <p> The default implementation calls <expr>object_program(this_object())()</expr>    to create the new object, and returns the <ref resolved='predef::_Stdio.Fd'>Fd</ref> inherit in it.</p>   </text><group><note/><text><p>Note that this function must return the <ref resolved='predef::_Stdio.Fd'>Fd</ref> inherit in the object.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::Stdio.Port.fd_factory'>Stdio.Port()-&gt;fd_factory()</ref>, <ref resolved='predef::_Stdio.Fd.openat'>openat()</ref>, <ref resolved='predef::_Stdio.Fd.pipe'>pipe()</ref></p>   </text></group></doc>   <method name='fd_factory'>   <arguments/>   <returntype><object resolved='predef::_Stdio.Fd'>Fd</object></returntype>
autodoc.git/modref.xml:143469:    capable <ref resolved='predef::_Stdio.Fd.pipe'>pipe()</ref>.</p>   <p> The default implementation is just a prototype.</p>   <p> Overload this function to enable reception of    remote file descriptors.</p>   </text></group><group><note/><text><p>The capability of sending and receiving remote file    descriptors is only available on some operating systems.    This capability is indicated by the precence of <ref resolved='predef::_Stdio.__HAVE_SEND_FD__'>__HAVE_SEND_FD__</ref>.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.send_fd'>send_fd()</ref>, <ref resolved='predef::_Stdio.Fd.read'>read()</ref>, <ref resolved='predef::_Stdio.Fd.fd_factory'>fd_factory()</ref>, <ref resolved='predef::_Stdio.__HAVE_SEND_FD__'>__HAVE_SEND_FD__</ref></p>   </text></group></doc>   <method name='receive_fd'> - <arguments><argument name='fd'><type><object resolved='predef::Stdio.Fd'>Stdio.Fd</object></type></argument></arguments> + <arguments><argument name='fd'><type><object resolved='predef::_Stdio.Fd'>Stdio.Fd</object></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='release_fd' homogen-type='method'><doc><text><p>Returns the file descriptor number associated with this object, in    addition to releasing it so that this object behaves as if closed.    Other settings like callbacks and backend remain intact.    <ref resolved='predef::_Stdio.Fd.take_fd'>take_fd</ref> can later be used to reinstate the file descriptor so    that the state is restored.</p>   </text><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.query_fd'>query_fd()</ref>, <ref resolved='predef::_Stdio.Fd.take_fd'>take_fd()</ref></p>   </text></group></doc>
autodoc.git/modref.xml:143583:    without also sending some in-band data.</p>   <p> This operation is only supported on <ref resolved='predef::_Stdio.Fd.pipe'>pipe()</ref>'s created with    <ref resolved='predef::_Stdio.PROP_SEND_FD'>PROP_SEND_FD</ref>.</p>   <p> This function is not available on all operating systems, check    for <ref resolved='predef::_Stdio.__HAVE_SEND_FD__'>__HAVE_SEND_FD__</ref>.</p>   <p> The queue is emptied on successful <ref resolved='predef::_Stdio.Fd.write'>write()</ref> and when the    write direction is <ref resolved='predef::_Stdio.Fd.close'>close()</ref>'d.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.receive_fd'>receive_fd()</ref>, <ref resolved='predef::_Stdio.Fd.write'>write()</ref>, <ref resolved='predef::_Stdio.Fd.pipe'>pipe()</ref>, <ref resolved='predef::_Stdio.Fd.read'>read()</ref>, <ref resolved='predef::_Stdio.__HAVE_SEND_FD__'>__HAVE_SEND_FD__</ref></p>   </text></group></doc>   <method name='send_fd'> - <arguments><argument name='fd'><type><object resolved='predef::Stdio.Fd'>Stdio.Fd</object></type></argument></arguments> + <arguments><argument name='fd'><type><object resolved='predef::_Stdio.Fd'>Stdio.Fd</object></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='set_backend' homogen-type='method'><doc><text><p>Set the backend used for the callbacks.</p>   </text><group><note/><text><p>The backend keeps a reference to this object only when it is in    callback mode. So if this object hasn't got any active callbacks    and it runs out of other references, it will still be destructed    quickly (after closing, if necessary).</p>   <p> Also, this object does not keep a reference to the backend.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.query_backend'>query_backend</ref>, <ref resolved='predef::_Stdio.Fd.set_nonblocking'>set_nonblocking</ref>, <ref>set_read_callback</ref>, <ref>set_write_callback</ref>, <ref>set_fs_event_callback</ref></p>
autodoc.git/modref.xml:143745:    this object. As opposed to using <ref resolved='predef::_Stdio.Fd.open'>open</ref> with a file descriptor    number, it will be closed by this object upon destruct or when    <ref resolved='predef::_Stdio.Fd.close'>close</ref> is called.</p>   </text><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.release_fd'>release_fd()</ref></p>   </text></group></doc>   <method name='take_fd'>   <arguments><argument name='fd'><type><int/></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup> + <docgroup homogen-name='tcdrain' homogen-type='method'><doc><text><p>Wait for transmission buffers to empty.</p> + </text><group><returns/><text><p>Returns <expr>1</expr> on success and <expr>0</expr> (zero) on failure.</p> + </text></group><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.tcflush'>tcflush()</ref></p> + </text></group></doc> + <method name='tcdrain'> + <arguments/> + <returntype><int><min>0</min><max>1</max></int></returntype> + </method> + </docgroup> + <docgroup homogen-name='tcflush' homogen-type='method'><doc><text><p>Flush queued terminal control messages.</p> + </text><group><param name='flush_direction'/><text><string><group><value>"TCIFLUSH"</value><text><p>Flush received but not read.</p> + </text></group><group><value>"TCOFLUSH"</value><text><p>Flush written but not transmitted.</p> + </text></group><group><value>"TCIOFLUSH"</value><text><p>Flush both of the above. Default.</p> + </text></group></string> + </text></group><group><returns/><text><p>Returns <expr>1</expr> on success and <expr>0</expr> (zero) on failure.</p> + </text></group><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.tcdrain'>tcdrain()</ref></p> + </text></group></doc> + <method name='tcflush'> + <arguments><argument name='flush_direction'><type><or><string/><void/></or></type></argument></arguments> + <returntype><int><min>0</min><max>1</max></int></returntype> + </method> + </docgroup> + <docgroup homogen-type='method'><doc><text><p>Gets/sets term attributes. The returned value/the <ref>attr</ref> parameter +  is a mapping on the form</p> + <mapping><group><member><type><int><min>-1</min><max/></int></type><index>"ispeed"</index></member><text><p>In baud rate.</p> + </text></group><group><member><type><int><min>-1</min><max/></int></type><index>"ospeed"</index></member><text><p>Out baud rate.</p> + </text></group><group><member><type><or><int><min>-1</min><max>-1</max></int><int><min>5</min><max>8</max></int></or></type><index>"csize"</index></member><text><p>Character size in bits.</p> + </text></group><group><member><type><int/></type><index>"rows"</index></member><text><p>Terminal rows.</p> + </text></group><group><member><type><int/></type><index>"columns"</index></member><text><p>Terminal columns.</p> + </text></group><group><member><type><int><min>0</min><max>1</max></int></type><index>flag_name</index></member><text><p>The value of a named flag. The flag name is +  the string describing the termios flags (IGNBRK, BRKINT, +  IGNPAR, PARMRK, INPCK, ISTRIP, INLCR, IGNCR, ICRNL, IUCLC, +  IXON, IXANY, IXOFF, IMAXBEL, OPOST, OLCUC, ONLCR, OCRNL, +  ONOCR, ONLRET, OFILL, OFDEL, OXTABS, ONOEOT, CSTOPB, CREAD, +  PARENB, PARODD, HUPCL, CLOCAL, CRTSCTS, ISIG, ICANON, XCASE, +  ECHO, ECHOE, ECHOK, ECHONL, ECHOCTL, ECHOPRT, ECHOKE, FLUSHO, +  NOFLSH, TOSTOP, PENDIN). See the manpage for termios or +  other documentation for more information. All flags are not +  available on all platforms.</p> + </text></group><group><member><type><int><min>0</min><max>255</max></int></type><index>character_name</index></member><text><p>Sets the value of a control character (VINTR, VQUIT, VERASE, +  VKILL, VEOF, VTIME, VMIN, VSWTC, VSTART, VSTOP, VSUSP, VEOL, +  VREPRINT, VDISCARD, VWERASE, VLNEXT, VEOL2). All control +  characters are not available on all platforms.</p> + </text></group></mapping><p>Negative values are not allowed as indata, but might appear in the +  result from <ref resolved='predef::_Stdio.Fd.tcgetattr'>tcgetattr</ref> when the actual value is unknown. <ref resolved='predef::_Stdio.Fd.tcsetattr'>tcsetattr</ref> +  returns 0 if failed.</p> + <p> The argument <ref>when</ref> to <ref resolved='predef::_Stdio.Fd.tcsetattr'>tcsetattr</ref> describes when the +  changes are to take effect:</p> + <string><group><value>"TCSANOW"</value><text><p>The change occurs immediately (default).</p> + </text></group><group><value>"TCSADRAIN"</value><text><p>The change occurs after all output has been written.</p> + </text></group><group><value>"TCSAFLUSH"</value><text><p>The change occurs after all output has been written, +  and empties input buffers.</p> + </text></group></string> + </text><group><example/><text><p>// setting the terminal in raw mode: +  Stdio.stdin-&gt;tcsetattr((["ECHO":0,"ICANON":0,"VMIN":0,"VTIME":0]));</p> + </text></group><group><note/><text><p>Unknown flags are ignored by <ref resolved='predef::_Stdio.Fd.tcsetattr'>tcsetattr()</ref>. <ref resolved='predef::_Stdio.Fd.tcsetattr'>tcsetattr</ref> always +  changes the attribute, so only include attributes that actually +  should be altered in the attribute mapping.</p> + </text></group><group><bugs/><text><p>Terminal rows and columns setting by <ref resolved='predef::_Stdio.Fd.tcsetattr'>tcsetattr()</ref> is not +  currently supported.</p> + </text></group><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.tcsetsize'>tcsetsize()</ref></p> + </text></group></doc> + <method name='tcgetattr'> + <arguments/> + <returntype><mapping/></returntype> + </method> + <method name='tcsetattr'> + <arguments><argument name='attr'><type><mapping/></type></argument></arguments> + <returntype><int/></returntype> + </method> + <method name='tcsetattr'> + <arguments><argument name='attr'><type><mapping/></type></argument><argument name='when'><type><string/></type></argument></arguments> + <returntype><int/></returntype> + </method> + </docgroup> + <docgroup homogen-name='tcsendbreak' homogen-type='method'><doc><text><p>Send a break signal.</p> + </text><group><param name='duration'/><text><p>Duration to send the signal for. <expr>0</expr> (zero) causes +  a break signal to be sent for between 0.25 and 0.5 seconds. +  Other values are operating system dependent:</p> + <dl><group><item name='SunOS'/><text><p>The number of joined break signals as above.</p> + </text></group><group><item name='Linux, AIX, Digital Unix, Tru64'/><text><p>The time in milliseconds.</p> + </text></group><group><item name='FreeBSD, NetBSD, HP-UX, MacOS'/><text><p>The value is ignored.</p> + </text></group><group><item name='Solaris, Unixware'/><text><p>The behavior is changed to be similar to <ref resolved='predef::_Stdio.Fd.tcdrain'>tcdrain()</ref>.</p> + </text></group></dl> + </text></group><group><returns/><text><p>Returns <expr>1</expr> on success and <expr>0</expr> (zero) on failure.</p> + </text></group></doc> + <method name='tcsendbreak'> + <arguments><argument name='duration'><type><or><int/><void/></or></type></argument></arguments> + <returntype><int><min>0</min><max>1</max></int></returntype> + </method> + </docgroup> + <docgroup homogen-name='tcsetsize' homogen-type='method'><doc><text><p>Set the number of rows and columns for a terminal.</p> + </text><group><returns/><text><p>Returns <expr>1</expr> on success and <expr>0</expr> (zero) on failure.</p> + </text></group><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.tcgetattr'>tcgetattr()</ref>, <ref resolved='predef::_Stdio.Fd.tcsetattr'>tcsetattr()</ref></p> + </text></group></doc> + <method name='tcsetsize'> + <arguments><argument name='rows'><type><int/></type></argument><argument name='cols'><type><int/></type></argument></arguments> + <returntype><int><min>0</min><max>1</max></int></returntype> + </method> + </docgroup>   <docgroup homogen-name='tell' homogen-type='method'><doc><text><p>Returns the current offset in the file.</p>   </text><group><seealso/><text><p><ref resolved='predef::_Stdio.Fd.seek'>seek()</ref></p>   </text></group></doc>   <method name='tell'>   <arguments/>   <returntype><int/></returntype>   </method>   </docgroup>   <docgroup homogen-name='truncate' homogen-type='method'><doc><text><p>Truncate a file.</p>   <p> Truncates the file to the specified length <ref resolved='predef::_Stdio.Fd.truncate.length'>length</ref>.</p>
autodoc.git/modref.xml:144087:   <arguments/>   <returntype><int/></returntype>   </method>   </docgroup>   <docgroup homogen-name='fd_factory' homogen-type='method'><doc><text><p>Factory creating <ref resolved='predef::Stdio.UDP'>Stdio.UDP</ref> objects.</p>   <p> This function is called by <ref resolved='predef::_Stdio.UDP.dup'>dup()</ref>    and other functions creating new UDP objects.</p>   <p> The default implementation calls <expr>object_program(this_object())()</expr>    to create the new object, and returns the <ref resolved='predef::_Stdio.UDP'>UDP</ref> inherit in it.</p>   </text><group><note/><text><p>Note that this function must return the <ref resolved='predef::_Stdio.UDP'>UDP</ref> inherit in the object.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::_Stdio.UDP.dup'>dup()</ref>, <ref>Stdio.File()-&gt;fd_factory()</ref></p> + </text></group><group><seealso/><text><p><ref resolved='predef::_Stdio.UDP.dup'>dup()</ref>, <ref resolved='predef::_Stdio.Fd.fd_factory'>Stdio.File()-&gt;fd_factory()</ref></p>   </text></group></doc>   <method name='fd_factory'>   <arguments/>   <returntype><object resolved='predef::_Stdio.UDP'>UDP</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='get_type' homogen-type='method'><doc><text><p>Returns socket type and protocol family.</p>   </text></doc>   <method name='get_type'>   <arguments/>