autodoc.git / modref.xml

version» Context lines:

autodoc.git/modref.xml:1:   <?xml version='1.0' encoding='utf-8'?> - <manual time-stamp='2014-06-18' version='Pike v8.0.3'> + <manual time-stamp='2022-03-09' version='Pike v8.0.3'>    <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:1268:   <docgroup homogen-name='State' homogen-type='inherit'>   <inherit name='State'><classname resolved='predef::Nettle.BlockCipher.CBC.State'>Crypto.DES.CBC.State</classname></inherit>   </docgroup>   </class>   <class name='dsa'>   <doc><group><deprecated><name><ref resolved='7.8::Crypto.DSA'>Crypto.DSA</ref></name></deprecated></group></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='7.6::'>7.5::</classname></import>   </docgroup>   </class> + <class name='hmac'> + <doc><group><deprecated><name><ref resolved='predef::Crypto.HMAC'>Crypto.HMAC</ref></name></deprecated></group></doc> + <docgroup homogen-name='' homogen-type='import'> + <import name=''><classname resolved='7.6::'>7.5::</classname></import> + </docgroup> + <docgroup homogen-name='HMAC' homogen-type='inherit'> + <inherit name='HMAC'><classname resolved='predef::Crypto.HMAC'>Crypto.HMAC</classname></inherit> + </docgroup> + <class name='Wrapper'> + <modifiers><protected/></modifiers> + <class name='HMAC'> + <docgroup homogen-name='`()' homogen-type='method'><doc><text><p>Hashes the <ref resolved='7.4::Crypto.hmac.Wrapper.HMAC.`().text'>text</ref> according to the HMAC algorithm and returns +  the hash value.</p> + </text></doc> + <method name='`()'> + <arguments><argument name='text'><type><string/></type></argument></arguments> + <returntype><string/></returntype> + </method> + </docgroup> + <docgroup homogen-name='create' homogen-type='method'><doc><group><param name='passwd'/><text><p>The secret password (K).</p> + </text></group></doc> + <method name='create'> + <arguments><argument name='passwd'><type><string/></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='digest_info' homogen-type='method'><doc><text><p>Hashes the <ref resolved='7.4::Crypto.hmac.Wrapper.HMAC.digest_info.text'>text</ref> according to the HMAC algorithm and returns +  the hash value as a PKCS-1 digestinfo block.</p> + </text></doc> + <method name='digest_info'> + <arguments><argument name='text'><type><string/></type></argument></arguments> + <returntype><string/></returntype> + </method> + </docgroup> + </class> + </class> + </class>   <class name='idea'>   <doc><text><p>This is the Pike 7.4 compatibility implementation of    the IDEA cipher.</p>   </text><group><deprecated><name><ref resolved='predef::Crypto.IDEA'>Crypto.IDEA</ref></name></deprecated></group></doc>   <docgroup homogen-name='State' homogen-type='inherit'>   <inherit name='State'><classname resolved='predef::Nettle.IDEA.State'>Nettle.IDEA.State</classname></inherit>   </docgroup>   <docgroup homogen-name='name' homogen-type='method'>   <method name='name'>   <arguments/>
autodoc.git/modref.xml:1607:   </class>   </module>   </module>   <module name='SSL'>   <class name='cipher'>   <doc><text><p>Encryption and MAC algorithms used in SSL.</p>   </text><group><deprecated><name><ref resolved='7.8::SSL.Cipher'>SSL.Cipher</ref></name></deprecated></group></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='7.4::'>7.4::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;constants&quot;' homogen-type='inherit'> - <inherit name='&quot;constants&quot;'><classname resolved='7.4::SSL.constants'>"constants"</classname></inherit> + <docgroup homogen-name='"constants"' homogen-type='inherit'> + <inherit name='"constants"'><classname resolved='7.4::SSL.constants'>"constants"</classname></inherit>   </docgroup>   </class>   <class name='constants'>   <doc><text><p>Protocol constants</p>   </text><group><deprecated><name><ref resolved='predef::SSL.Constants'>SSL.Constants</ref></name></deprecated></group></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup>   </class>   <class name='sslfile'>   <doc><text><p>Interface similar to Stdio.File.</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='7.6::'>7.5::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;cipher&quot;' homogen-type='inherit'> - <inherit name='&quot;cipher&quot;'><classname resolved='7.4::SSL.cipher'>"cipher"</classname></inherit> + <docgroup homogen-name='"cipher"' homogen-type='inherit'> + <inherit name='"cipher"'><classname resolved='7.4::SSL.cipher'>"cipher"</classname></inherit>   </docgroup>   <docgroup homogen-name='connection' homogen-type='inherit'>   <inherit name='connection'><classname resolved='7.8::SSL.connection'>SSL.connection</classname></inherit>   </docgroup>   </class>   </module>   <module name='Sql'>   <class name='sql'>   <doc><group><deprecated><name><ref resolved='predef::Sql.Sql'>Sql.Sql</ref></name></deprecated></group></doc>   <docgroup homogen-name='' homogen-type='import'>
autodoc.git/modref.xml:4610:   <variable name='client_cert_distinguished_names'><type><array><valuetype><string/></valuetype></array></type></variable>   </docgroup>   <docgroup homogen-type='variable'><doc><text><p>Random cookies, sent and received with the hello-messages.</p>   </text></doc>   <variable name='client_random'><type><string/></type></variable>   <variable name='server_random'><type><string/></type></variable>   </docgroup>   <docgroup homogen-name='create' homogen-type='method'><doc><group><param name='is_server'/><text><p>Whether this is the server end of the connection or not.</p>   </text></group><group><param name='ctx'/><text><p>The context for the connection.</p>   </text></group><group><param name='min_version'/><text><p>Minimum version of SSL to support. -  Defaults to <ref resolved='7.8::SSL.Constants.ProtocolVersion.PROTOCOL_SSL_3_0'>Constants.PROTOCOL_SSL_3_0</ref>.</p> +  Defaults to <ref resolved='predef::SSL.Constants.ProtocolVersion.PROTOCOL_SSL_3_0'>Constants.PROTOCOL_SSL_3_0</ref>.</p>   </text></group><group><param name='max_version'/><text><p>Maximum version of SSL to support.    Defaults to <ref resolved='7.8::SSL.Constants.PROTOCOL_minor'>Constants.PROTOCOL_minor</ref>.</p>   </text></group></doc>   <method name='create'>   <arguments><argument name='is_server'><type><int/></type></argument><argument name='ctx'><type><or><void/><object resolved='7.8::SSL.context'>SSL.context</object></or></type></argument><argument name='min_version'><type><or><void/><object resolved='7.8::SSL.Constants.ProtocolVersion'>ProtocolVersion</object></or></type></argument><argument name='max_version'><type><or><void/><object resolved='7.8::SSL.Constants.ProtocolVersion'>ProtocolVersion</object></or></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='handle_handshake' homogen-type='method'><doc><text><p>Do handshake processing. Type is one of HANDSHAKE_*, data is the    contents of the packet, and raw is the raw packet received (needed
autodoc.git/modref.xml:4777:   <variable name='rsa'><type><object resolved='7.8::Crypto.RSA'>Crypto.RSA</object></type></variable>   </docgroup>   <docgroup homogen-name='set_cipher_suite' homogen-type='method'><doc><text><p>Sets the proper authentication method and cipher specification    for the given cipher <ref resolved='7.8::SSL.session.set_cipher_suite.suite'>suite</ref> and <ref>verison</ref>.</p>   </text></doc>   <method name='set_cipher_suite'>   <arguments><argument name='suite'><type><int/></type></argument><argument name='version'><type><or><object resolved='7.8::SSL.Constants.ProtocolVersion'>ProtocolVersion</object><int/></or></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup> - <docgroup homogen-name='set_compression_method' homogen-type='method'><doc><text><p>Sets the compression method. Currently only <ref resolved='predef::SSL.Constants.CompressionType.COMPRESSION_null'>COMPRESSION_null</ref> is + <docgroup homogen-name='set_compression_method' homogen-type='method'><doc><text><p>Sets the compression method. Currently only <ref resolved='7.8::SSL.Constants.CompressionType.COMPRESSION_null'>COMPRESSION_null</ref> is    supported.</p>   </text></doc>   <method name='set_compression_method'>   <arguments><argument name='compr'><type><int/></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   </class>   <class name='sslfile'>   <doc><text><p>Interface similar to <ref resolved='7.8::Stdio.File'>Stdio.File</ref>.</p>
autodoc.git/modref.xml:6252:    ANSI-C preprocessor but has a few extra features. These and the    default set of preprocessor macros are described here.</p>   </text></doc>   <docgroup homogen-name='#!' homogen-type='directive'><doc><text><p>All lines beginning with <ref resolved='cpp::'>#!</ref> will be regarded as comments,    to enable shell integration. It is recommended that Pike applications    begin with the line <tt>"#! /usr/bin/env pike"</tt> for maximum cross    platform compatibility.</p>   </text></doc>   <directive name='#!'/>   </docgroup> - <docgroup homogen-name='#&quot;&quot;' homogen-type='directive'><doc><text><p>If a string literal is opened with <tt>#"</tt> newlines in the + <docgroup homogen-name='#""' homogen-type='directive'><doc><text><p>If a string literal is opened with <tt>#"</tt> newlines in the    string will end up in the string literal, instead of triggering a    <tt>"newline in string"</tt> error.</p>   </text><group><note/><text><p>Newlines will be converted to <tt>\n</tt> characters in the string    even if the newlines in the file are something else.</p>   <p> This preprocessor directive may appear anywhere a string may    appear.</p>   </text></group><group><seealso/><text><p><ref resolved='cpp::'>#string</ref></p>   </text></group></doc> - <directive name='#&quot;&quot;'/> + <directive name='#""'/>   </docgroup>   <docgroup homogen-type='directive'><doc><text><p>A hash character followed by a number or by the string    <tt>"line"</tt> and a number will make the preprocessor line counter    set this number as the line number for the next line and adjust the    following lines accordingly.</p>   <p> All error messages from Pike will use these line numbers.</p>   <p> Optionally the number may be followed by a file name, e.g.    <tt>#line 1 "/home/pike/program.pike.in"</tt>. Then this    filename will be used instead of the current file for error    messages.</p>
autodoc.git/modref.xml:9350:    time ranges that function can handle, e.g. Windows doesn't handle    a negative <ref resolved='predef::ctime.timestamp'>timestamp</ref>.</p>   </text><group><seealso/><text><p><ref resolved='predef::time'>time()</ref>, <ref resolved='predef::localtime'>localtime()</ref>, <ref resolved='predef::mktime'>mktime()</ref>, <ref resolved='predef::gmtime'>gmtime()</ref></p>   </text></group></doc>   <method name='ctime'>   <arguments><argument name='timestamp'><type><int/></type></argument></arguments>   <returntype><string/></returntype>   </method>   </docgroup>    - <docgroup homogen-name='decode' homogen-type='method'><doc><text><p>Decodes a WebP datastream to an Image.Image object.</p> - <p> The following parameters are recognized:</p> - <mapping><group><member><type><int/></type><index>"deblock"</index></member><text><p>Strength of the deblocking filter. Default is 4, maximum is 16. -  0 means no deblocking is done.</p> - </text></group><group><member><type><int/></type><index>"noise"</index></member><text><p>Strength of the added noise. Default is 0, maximum is 16. -  0 (the default) means that no noise is added.</p> - </text></group></mapping></text></doc> - <method name='decode'> - <arguments><argument name='data'><type><string/></type></argument><argument name='parameters'><type><or><void/><mapping><indextype><string/></indextype><valuetype><int/></valuetype></mapping></or></type></argument></arguments> - <returntype><object resolved='predef::Image.Image'>Image.Image</object></returntype> - </method> - </docgroup> +    <docgroup homogen-name='decode_value' homogen-type='method'><doc><text><p>Decode a value from the string <ref resolved='predef::decode_value.coded_value'>coded_value</ref>.</p>   <p> This function takes a string created with <ref resolved='predef::encode_value'>encode_value()</ref> or    <ref resolved='predef::encode_value_canonic'>encode_value_canonic()</ref> and converts it back to the value that was    coded.</p>   <p> If <ref resolved='predef::decode_value.codec'>codec</ref> is specified, it's used as the codec for the decode.    If none is specified, then one is instantiated through    <expr>master()-&gt;Decoder()</expr>. As a compatibility fallback, the    master itself is used if it has no <expr>Decoder</expr> class.</p>   </text><group><seealso/><text><p><ref resolved='predef::encode_value'>encode_value()</ref>, <ref resolved='predef::encode_value_canonic'>encode_value_canonic()</ref></p>   </text></group></doc>
autodoc.git/modref.xml:9458:   <method name='dirname'>   <arguments><argument name='x'><type><string/></type></argument></arguments>   <returntype><string/></returntype>   </method>   </docgroup>                - <docgroup homogen-name='encode' homogen-type='method'><doc><text><p>Encodes and Image.Image object to a WebP data stream.</p> - <p> The following parameters are recognized:</p> - <mapping><group><member><type><int/></type><index>"quality"</index></member><text><p>The overall quality of the generated image, 0 to 100. -  Default is 80.</p> - </text></group><group><member><type><int/></type><index>"sharpness"</index></member><text><p>Affects the filtering strength of the in-loop filter. -  default is 0, maximum is 7.</p> - </text></group><group><member><type><int/></type><index>"denoise"</index></member><text><p>This affect the pre-processing stage, where the source is -  first denoised before encoding. -  default is no denoise (0), maximum is 6.</p> - </text></group><group><member><type><int/></type><index>"profile"</index></member><text><p>Overall control of the filtering streength. -  default (0) is to do full filtering, max setting is 2 (no filtering)</p> - </text></group><group><member><type><int/></type><index>"threads"</index></member><text><p>The maximum number of threads to use when encoding. For large -  images setting this high will increase perfornance. Default is -  to only use one thread.</p> - </text></group><group><member><type><int/></type><index>"quantize"</index></member><text><p>An alternative way to specify the quality. -  If used the quality member must not be used. -  0 to 63, 0 is maximum quality, 63 is lowest.</p> - </text></group><group><member><type><int/></type><index>"maxtime"</index></member><text><p>How much time the encoder is allowed to use, in microseconds -  Default is 0, which means unlimited time. -  1 means to do the encoding as quickly as possible. -  This is realmtime, not cpu-time, so on a multi-cpu machine increasing -  the number of threads will improve the result for non-zero times.</p> - </text></group></mapping></text></doc> - <method name='encode'> - <arguments><argument name='x'><type><object resolved='predef::Image.Image'>Image.Image</object></type></argument><argument name='parameters'><type><or><void/><mapping><indextype><string/></indextype><valuetype><int/></valuetype></mapping></or></type></argument></arguments> - <returntype><string/></returntype> - </method> - </docgroup> +    <docgroup homogen-name='encode_value' homogen-type='method'><doc><text><p>Code a value into a string.</p>   <p> This function takes a value, and converts it to a string. This string    can then be saved, sent to another Pike process, packed or used in    any way you like. When you want your value back you simply send this    string to <ref resolved='predef::decode_value'>decode_value()</ref> and it will return the value you encoded.</p>   <p> Almost any value can be coded, mappings, floats, arrays, circular    structures etc.</p>   <p> If <ref resolved='predef::encode_value.codec'>codec</ref> is specified, it's used as the codec for the encode.    If none is specified, then one is instantiated through    <expr>master()-&gt;Encoder()</expr>. As a compatibility fallback, the
autodoc.git/modref.xml:9730:   </text></group></dl><p>Unless something else is mentioned above, <ref resolved='predef::filter.fun'>fun</ref> is used as    filter like this:</p>   <dl><group><item name='function'/><text><p><ref resolved='predef::filter.fun'>fun</ref> is called for each element. It gets the current    element as the first argument and <ref resolved='predef::filter.extra'>extra</ref> as the rest. The    element is kept if it returns true, otherwise it's filtered    out.</p>   </text></group><group><item name='object'/><text><p>The object is used as a function like above, i.e. the    <ref resolved='lfun::`()'>lfun::`()</ref> method in it is called.</p>   </text></group><group><item name='multiset'/><item name='mapping'/><text><p><ref resolved='predef::filter.fun'>fun</ref> is indexed with each element. The element is kept if    the result is nonzero, otherwise it's filtered out.</p> - </text></group><group><item name='&quot;zero or left out&quot;'/><text><p>Each element that is callable is called with <ref resolved='predef::filter.extra'>extra</ref> as + </text></group><group><item name='"zero or left out"'/><text><p>Each element that is callable is called with <ref resolved='predef::filter.extra'>extra</ref> as    arguments. The element is kept if the result of the call is    nonzero, otherwise it's filtered out. Elements that aren't    callable are also filtered out.</p>   </text></group><group><item name='string'/><text><p>Each element is indexed with the given string. If the result    of that is zero then the element is filtered out, otherwise    the result is called with <ref resolved='predef::filter.extra'>extra</ref> as arguments. The element    is kept if the return value is nonzero, otherwise it's    filtered out.</p>   <p> This is typically used when <ref resolved='predef::filter.arr'>arr</ref> is a collection of    objects, and <ref resolved='predef::filter.fun'>fun</ref> is the name of some predicate function
autodoc.git/modref.xml:10537:    multiset, in that order, which is then handled as described    above.</p>   </text></group></dl><p><ref resolved='predef::map.fun'>fun</ref> is applied in different ways depending on its type:</p>   <dl><group><item name='function'/><text><p><ref resolved='predef::map.fun'>fun</ref> is called for each element. It gets the current    element as the first argument and <ref resolved='predef::map.extra'>extra</ref> as the rest. The    result of the call is collected.</p>   </text></group><group><item name='object'/><text><p><ref resolved='predef::map.fun'>fun</ref> is used as a function like above, i.e. the    <ref resolved='lfun::`()'>lfun::`()</ref> method in it is called.</p>   </text></group><group><item name='multiset'/><item name='mapping'/><text><p><ref resolved='predef::map.fun'>fun</ref> is indexed with each element. The result of that is    collected.</p> - </text></group><group><item name='&quot;zero or left out&quot;'/><text><p>Each element that is callable is called with <ref resolved='predef::map.extra'>extra</ref> as + </text></group><group><item name='"zero or left out"'/><text><p>Each element that is callable is called with <ref resolved='predef::map.extra'>extra</ref> as    arguments. The result of the calls are collected. Elements    that aren't callable gets zero as result.</p>   </text></group><group><item name='string'/><text><p>Each element is indexed with the given string. If the result    of that is zero then a zero is collected, otherwise it's    called with <ref resolved='predef::map.extra'>extra</ref> as arguments and the result of that    call is collected.</p>   <p> This is typically used when <ref resolved='predef::map.arr'>arr</ref> is a collection of    objects, and <ref resolved='predef::map.fun'>fun</ref> is the name of some function in them.</p>   </text></group></dl>   </text><group><note/><text><p>The function is never destructive on <ref resolved='predef::map.arr'>arr</ref>.</p>
autodoc.git/modref.xml:12506:    tree[val] = idx;   }   foreach(tree; float|int key; mixed val) {    // in here the keys will be reached in order 14.2, 80.4 and 99.9.   }</p>   </text></code></text></group><group><example/><text><code><text><p>ADT.CritBit.FloatTree tree = ADT.CritBit.FloatTree();   array(float|int) a = ({ 80.4, 99.9, 14.2 });   foreach (a; int idx; float|int val) {    tree[val] = idx;   } - foreach(ADT.CritBit.FloatTree.Iterator(tree, -1); float|int key; mixed val) { + foreach(ADT.CritBit.FloatTree.Iterator (tree, -1); float|int key; mixed val) {    // in here the keys will be reached in order 99.9, 80.4 and 14.2.   }</p> - </text></code></text></group><group><seealso/><text><p><ref>ADT.CritBit.FloatTree.Iterator</ref></p> + </text></code></text></group><group><seealso/><text><p><ref>ADT.CritBit.FloatTree.Iterator </ref></p>   </text></group></doc>   <docgroup homogen-name='_equal' homogen-type='method'>   <method name='_equal'>   <arguments><argument name='o'><type><mixed/></type></argument></arguments>   <returntype><int><min>0</min><max>1</max></int></returntype>   </method>   </docgroup>   <docgroup homogen-name='_indices' homogen-type='method'><doc><text><p>Returns a sorted array of indices of the <ref resolved='predef::ADT.CritBit.FloatTree'>FloatTree</ref>.</p>   </text></doc>   <method name='_indices'>
autodoc.git/modref.xml:12732:    tree[val] = idx;   }   foreach(tree; string key; mixed val) {    // in here the keys will be reached in order "10.243.7.1", "127.0.0.1/8" and "172.16.5.2".   }</p>   </text></code></text></group><group><example/><text><code><text><p>ADT.CritBit.IPv4Tree tree = ADT.CritBit.IPv4Tree();   array(string) a = ({ "10.243.7.1", "127.0.0.1/8", "172.16.5.2" });   foreach (a; int idx; string val) {    tree[val] = idx;   } - foreach(ADT.CritBit.IPv4Tree.Iterator(tree, -1); string key; mixed val) { + foreach(ADT.CritBit.IPv4Tree.Iterator (tree, -1); string key; mixed val) {    // in here the keys will be reached in order "172.16.5.2", "127.0.0.1/8" and "10.243.7.1".   }</p> - </text></code></text></group><group><seealso/><text><p><ref>ADT.CritBit.IPv4Tree.Iterator</ref></p> + </text></code></text></group><group><seealso/><text><p><ref>ADT.CritBit.IPv4Tree.Iterator </ref></p>   </text></group></doc>   <docgroup homogen-name='_equal' homogen-type='method'>   <method name='_equal'>   <arguments><argument name='o'><type><mixed/></type></argument></arguments>   <returntype><int><min>0</min><max>1</max></int></returntype>   </method>   </docgroup>   <docgroup homogen-name='_indices' homogen-type='method'><doc><text><p>Returns a sorted array of indices of the <ref resolved='predef::ADT.CritBit.IPv4Tree'>IPv4Tree</ref>.</p>   </text></doc>   <method name='_indices'>
autodoc.git/modref.xml:12966:    tree[val] = idx;   }   foreach(tree; int key; mixed val) {    // in here the keys will be reached in order 3, 1025 and 15000.   }</p>   </text></code></text></group><group><example/><text><code><text><p>ADT.CritBit.IntTree tree = ADT.CritBit.IntTree();   array(int) a = ({ 1025, 15000, 3 });   foreach (a; int idx; int val) {    tree[val] = idx;   } - foreach(ADT.CritBit.IntTree.Iterator(tree, -1); int key; mixed val) { + foreach(ADT.CritBit.IntTree.Iterator (tree, -1); int key; mixed val) {    // in here the keys will be reached in order 15000, 1025 and 3.   }</p> - </text></code></text></group><group><seealso/><text><p><ref>ADT.CritBit.IntTree.Iterator</ref></p> + </text></code></text></group><group><seealso/><text><p><ref>ADT.CritBit.IntTree.Iterator </ref></p>   </text></group></doc>   <docgroup homogen-name='_equal' homogen-type='method'>   <method name='_equal'>   <arguments><argument name='o'><type><mixed/></type></argument></arguments>   <returntype><int><min>0</min><max>1</max></int></returntype>   </method>   </docgroup>   <docgroup homogen-name='_indices' homogen-type='method'><doc><text><p>Returns a sorted array of indices of the <ref resolved='predef::ADT.CritBit.IntTree'>IntTree</ref>.</p>   </text></doc>   <method name='_indices'>
autodoc.git/modref.xml:13215:    tree[val] = idx;   }   foreach(tree; string key; mixed val) {    // in here the keys will be reached in order "ahead", "bar" and "foo".   }</p>   </text></code></text></group><group><example/><text><code><text><p>ADT.CritBit.StringTree tree = ADT.CritBit.StringTree();   array(string) a = ({ "fooo", "bar", "ahead" });   foreach (a; int idx; string val) {    tree[val] = idx;   } - foreach(ADT.CritBit.StringTree.Iterator(tree, -1); string key; mixed val) { + foreach(ADT.CritBit.StringTree.Iterator (tree, -1); string key; mixed val) {    // in here the keys will be reached in order "foo", "bar" and "ahead".   }</p> - </text></code></text></group><group><seealso/><text><p><ref>ADT.CritBit.StringTree.Iterator</ref></p> + </text></code></text></group><group><seealso/><text><p><ref>ADT.CritBit.StringTree.Iterator </ref></p>   </text></group></doc>   <docgroup homogen-name='_equal' homogen-type='method'>   <method name='_equal'>   <arguments><argument name='o'><type><mixed/></type></argument></arguments>   <returntype><int><min>0</min><max>1</max></int></returntype>   </method>   </docgroup>   <docgroup homogen-name='_indices' homogen-type='method'><doc><text><p>Returns a sorted array of indices of the <ref resolved='predef::ADT.CritBit.StringTree'>StringTree</ref>.</p>   </text></doc>   <method name='_indices'>
autodoc.git/modref.xml:21405:   </docgroup>   <docgroup homogen-name='get_default_module' homogen-type='method'><doc><text><p>Get the default module for the current compatibility level    (ie typically the value returned by <ref resolved='predef::all_constants'>predef::all_constants()</ref>).</p>   <p> The default implementation calls the corresponding function    in the master object.</p>   </text><group><returns/><text><mixed><group><type><or><mapping><indextype><string/></indextype><valuetype><mixed/></valuetype></mapping><object resolved='predef::CompilerEnvironment.get_default_module'/></or></type><text><p>Constant table to use.</p>   </text></group><group><type><int><min>0</min><max>0</max></int></type><text><p>Use the builtin constant table.</p>   </text></group></mixed>   </text></group><group><note/><text><p>This function is typically called by    <ref>Pike_compiler()-&gt;get_default_module()</ref>.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::MasterObject.CompatResolver.get_default_module'>MasterObject()-&gt;get_default_module()</ref>.</p> + </text></group><group><seealso/><text><p><ref resolved='predef::CompilationHandler.get_default_module'>MasterObject()-&gt;get_default_module()</ref>.</p>   </text></group></doc>   <method name='get_default_module'>   <arguments/>   <returntype><or><mapping><indextype><string/></indextype><valuetype><mixed/></valuetype></mapping><object resolved='predef::CompilerEnvironment.get_default_module'/></or></returntype>   </method>   </docgroup>   <docgroup homogen-name='handle_inherit' homogen-type='method'><doc><text><p>Look up an inherit <ref resolved='predef::CompilerEnvironment.handle_inherit.inh'>inh</ref>.</p>   <p> The default implementation calls the corresponding function    in the master object.</p>   </text><group><seealso/><text><p><ref resolved='predef::MasterObject.handle_inherit'>MasterObject()-&gt;handle_inherit()</ref>.</p>
autodoc.git/modref.xml:25741:    privileged users to create and mount their own filesystem    implementations.</p>   <p> FUSE is only available on Linux.</p>   <p> See http://sourceforge.net/projects/fuse/ for more information</p>   <p> This module maps the Fuse library more or less directly to pike.</p>   <p> A tip: /usr/include/asm/errno.h can be included in pike programs on Linux.</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;___Fuse&quot;' homogen-type='inherit'> - <inherit name='&quot;___Fuse&quot;'><classname>"___Fuse"</classname></inherit> + <docgroup homogen-name='"___Fuse"' homogen-type='inherit'> + <inherit name='"___Fuse"'><classname>"___Fuse"</classname></inherit>   </docgroup>   <docgroup homogen-name='run' homogen-type='method'><doc><text><p>Start fuse. Args is as in argv in main().    The first argument (argv[0], program name) is used as the filesystem name.    The first non-flag argument after argv[0] is used as the mountpoint.    Otherwise these arguments are supported:    <pre>    -d enable debug output (implies -f)    -f foreground operation    -s disable multithreaded operation    -r mount read only (equivalent to '-o ro')
autodoc.git/modref.xml:80352:   </text><group><note/><text><p>Data must not be wide string.</p>   </text></group></doc>   <method name='crc32'>   <arguments><argument name='data'><type><string/></type></argument><argument name='start_value'><type><or><void/><int/></or></type></argument></arguments>   <returntype><int/></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;___Gz&quot;' homogen-type='inherit'> - <inherit name='&quot;___Gz&quot;'><classname>"___Gz"</classname></inherit> + <docgroup homogen-name='"___Gz"' homogen-type='inherit'> + <inherit name='"___Gz"'><classname>"___Gz"</classname></inherit>   </docgroup>   <docgroup homogen-name='uncompress' homogen-type='method'><doc><text><p>Uncompresses the <ref resolved='predef::Gz.uncompress.data'>data</ref> and returns it. The <ref resolved='predef::Gz.uncompress.raw'>raw</ref> parameter    tells the decoder that the indata lacks the data header and footer    defined in RFC 1950.</p>   </text></doc>   <method name='uncompress'>   <arguments><argument name='data'><type><string/></type></argument><argument name='raw'><type><or><void/><int><min>0</min><max>1</max></int></or></type></argument></arguments>   <returntype><string/></returntype>   </method>   </docgroup>
autodoc.git/modref.xml:80628:    write(inflate(s));</p>   </text></group><group><seealso/><text><p><ref resolved='predef::Gz.deflate.deflate'>Gz.deflate-&gt;deflate()</ref></p>   </text></group></doc>   <method name='inflate'>   <arguments><argument name='data'><type><string/></type></argument></arguments>   <returntype><string/></returntype>   </method>   </docgroup>   </class>   </module> + <module name='HTTPAccept'> + <doc><text><p>High performance webserver optimized for somewhat static content.</p> + <p> HTTPAccept is a less capable WWW-server than the +  <ref resolved='predef::Protocols.HTTP.Server'>Protocols.HTTP.Server</ref> server, but for some applications it can be +  preferable. It is significantly more optimized, for most uses, and +  can handle a very high number of requests per second on even +  low end machines.</p> + </text></doc> + <class name='LogEntry'> + <docgroup homogen-name='from' homogen-type='variable'> + <variable name='from'><type><string/></type></variable> + </docgroup> + <docgroup homogen-name='method' homogen-type='variable'> + <variable name='method'><type><string/></type></variable> + </docgroup> + <docgroup homogen-name='protocol' homogen-type='variable'> + <variable name='protocol'><type><string/></type></variable> + </docgroup> + <docgroup homogen-name='raw' homogen-type='variable'> + <variable name='raw'><type><string/></type></variable> + </docgroup> + <docgroup homogen-name='received_bytes' homogen-type='variable'> + <variable name='received_bytes'><type><int/></type></variable> + </docgroup> + <docgroup homogen-name='reply' homogen-type='variable'> + <variable name='reply'><type><int/></type></variable> + </docgroup> + <docgroup homogen-name='sent_bytes' homogen-type='variable'> + <variable name='sent_bytes'><type><int/></type></variable> + </docgroup> + <docgroup homogen-name='time' homogen-type='variable'> + <variable name='time'><type><int/></type></variable> + </docgroup> + <docgroup homogen-name='url' homogen-type='variable'> + <variable name='url'><type><string/></type></variable> + </docgroup> + </class> + <class name='Loop'> + <docgroup homogen-name='cache_status' homogen-type='method'><doc><text><p>Returns information about the cache.</p> + <mapping name='result'><group><member><type><int/></type><index>hits</index></member><text><p>The number of hits since start</p> + </text></group><group><member><type><int/></type><index>misses</index></member><text><p>The number of misses since start</p> + </text></group><group><member><type><int/></type><index>stale</index></member><text><p>The number of misses that were stale hits, and not used</p> + </text></group><group><member><type><int/></type><index>size</index></member><text><p>The total current size</p> + </text></group><group><member><type><int/></type><index>entries</index></member><text><p>The number of entries in the cache</p> + </text></group><group><member><type><int/></type><index>max_size</index></member><text><p>The maximum size of the cache</p> + </text></group><group><member><type><int/></type><index>sent_bytes</index></member><text><p>The number of bytes sent since the last call to cache_status</p> + </text></group><group><member><type><int/></type><index>received_bytes</index></member><text><p>The number of bytes received since the last call to cache_status</p> + </text></group><group><member><type><int/></type><index>num_requests</index></member><text><p>The number of requests received since the last call to cache_status</p> + </text></group></mapping></text></doc> + <method name='cache_status'> + <arguments/> + <returntype><mapping><indextype><string/></indextype><valuetype><int/></valuetype></mapping></returntype> + </method> + </docgroup> + <docgroup homogen-name='create' homogen-type='method'><doc><text><p>Create a new <ref resolved='predef::HTTPAccept'>HTTPAccept</ref>.</p> + <p> This will start a new thread that will listen for requests on the +  port, parse them and pass on requests, instanced from the +  <ref resolved='predef::HTTPAccept.Loop.create.program'>program</ref> class (which has to inherit <ref resolved='predef::HTTPAccept.RequestProgram'>RequestProgram</ref> to the +  <ref resolved='predef::HTTPAccept.Loop.create.request_handler'>request_handler</ref> callback function.</p> + <p> <ref resolved='predef::HTTPAccept.Loop.create.cache_size'>cache_size</ref> is the maximum size of the cache, in bytes. +  <ref resolved='predef::HTTPAccept.Loop.create.keep_log'>keep_log</ref> indicates if a log of all requests should be kept. +  <ref resolved='predef::HTTPAccept.Loop.create.timeout'>timeout</ref> if non-zero indicates a maximum time the server will wait for requests.</p> + </text></doc> + <method name='create'> + <arguments><argument name='port'><type><object resolved='predef::Stdio.Port'>Stdio.Port</object></type></argument><argument name='program'><type><object resolved='predef::HTTPAccept.RequestProgram'>RequestProgram</object></type></argument><argument name='request_handler'><type><function><argtype><object resolved='predef::HTTPAccept.RequestProgram'>RequestProgram</object></argtype><returntype><void/></returntype></function></type></argument><argument name='cache_size'><type><int/></type></argument><argument name='keep_log'><type><object>bool</object></type></argument><argument name='timeout'><type><int/></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='log_as_array' homogen-type='method'><doc><text><p>Return the current log as an array of LogEntry objects.</p> + </text></doc> + <method name='log_as_array'> + <arguments/> + <returntype><array><valuetype><object resolved='predef::HTTPAccept.LogEntry'>LogEntry</object></valuetype></array></returntype> + </method> + </docgroup> + <docgroup homogen-name='log_as_commonlog_to_file' homogen-type='method'><doc><text><p>Write the current log to the specified file in a somewhat common +  commonlog format.</p> + <p> Will return the number of bytes written.</p> + </text></doc> + <method name='log_as_commonlog_to_file'> + <arguments><argument name='fd'><type><object resolved='predef::Stdio.Stream'>Stdio.Stream</object></type></argument></arguments> + <returntype><int/></returntype> + </method> + </docgroup> + <docgroup homogen-name='log_size' homogen-type='method'><doc><text><p>Returns the number of entries waiting to be logged.</p> + </text></doc> + <method name='log_size'> + <arguments/> + <returntype><int/></returntype> + </method> + </docgroup> + <docgroup homogen-name='logp' homogen-type='method'><doc><text><p>Returns true if logging is enabled</p> + </text></doc> + <method name='logp'> + <arguments/> + <returntype><object>bool</object></returntype> + </method> + </docgroup> + </class> + <class name='RequestProgram'> + <docgroup homogen-name='client' homogen-type='variable'><doc><text><p>The user agent</p> + </text></doc> + <variable name='client'><type><string/></type></variable> + </docgroup> + <docgroup homogen-name='data' homogen-type='variable'><doc><text><p>Any payload that arrived with the request</p> + </text></doc> + <variable name='data'><type><string/></type></variable> + </docgroup> + <docgroup homogen-name='headers' homogen-type='variable'><doc><text><p>All received headers</p> + </text></doc> + <variable name='headers'><type><mapping><indextype><string/></indextype><valuetype><array><valuetype><string/></valuetype></array></valuetype></mapping></type></variable> + </docgroup> + <docgroup homogen-name='method' homogen-type='variable'><doc><text><p>The method (GET, PUT etc)</p> + </text></doc> + <variable name='method'><type><string/></type></variable> + </docgroup> + <docgroup homogen-name='my_fd' homogen-type='variable'><doc><text><p>The filedescriptor for this request.</p> + </text></doc> + <variable name='my_fd'><type><object resolved='predef::Stdio.NonblockingStream'>Stdio.NonblockingStream</object></type></variable> + </docgroup> + <docgroup homogen-name='not_query' homogen-type='variable'><doc><text><p>The part of the URL before the first '?'.</p> + </text></doc> + <variable name='not_query'><type><string/></type></variable> + </docgroup> + <docgroup homogen-name='output' homogen-type='method'><doc><text><p>Send <ref resolved='predef::HTTPAccept.RequestProgram.output.data'>data</ref> directly to the remote side.</p> + </text></doc> + <method name='output'> + <arguments><argument name='data'><type><string/></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='pragma' homogen-type='variable'><doc><text><p>Tokenized pragma headers</p> + </text></doc> + <variable name='pragma'><type><multiset><indextype><string/></indextype></multiset></type></variable> + </docgroup> + <docgroup homogen-name='prot' homogen-type='variable'><doc><text><p>The protocol part of the request. As an example "HTTP/1.1"</p> + </text></doc> + <variable name='prot'><type><string/></type></variable> + </docgroup> + <docgroup homogen-name='query' homogen-type='variable'><doc><text><p>The part of the URL after the first '?'</p> + </text></doc> + <variable name='query'><type><string/></type></variable> + </docgroup> + <docgroup homogen-name='raw' homogen-type='variable'><doc><text><p>The full request</p> + </text></doc> + <variable name='raw'><type><string/></type></variable> + </docgroup> + <docgroup homogen-name='raw_url' homogen-type='variable'><doc><text><p>The raw URL received, the part after the method and before the protocol.</p> + </text></doc> + <variable name='raw_url'><type><string/></type></variable> + </docgroup> + <docgroup homogen-name='referer' homogen-type='variable'><doc><text><p>The referer header</p> + </text></doc> + <variable name='referer'><type><string/></type></variable> + </docgroup> + <docgroup homogen-name='remoteaddr' homogen-type='variable'><doc><text><p>The remote address</p> + </text></doc> + <variable name='remoteaddr'><type><string/></type></variable> + </docgroup> + <docgroup homogen-name='reply' homogen-type='method'><doc><text><p>Send a reply to the remote side. +  In the first case the <ref resolved='predef::HTTPAccept.RequestProgram.reply.data'>data</ref> will be sent. +  In the second case the <ref resolved='predef::HTTPAccept.RequestProgram.reply.headers'>headers</ref> will be sent, then <ref resolved='predef::HTTPAccept.RequestProgram.reply.len'>len</ref> bytes from <ref resolved='predef::HTTPAccept.RequestProgram.reply.fd'>fd</ref>. +  In the last case <ref resolved='predef::HTTPAccept.RequestProgram.reply.len'>len</ref> bytes from <ref resolved='predef::HTTPAccept.RequestProgram.reply.fd'>fd</ref> will be sent.</p> + </text></doc> + <method name='reply'> + <arguments><argument name='data'><type><string/></type></argument></arguments> + <returntype><void/></returntype> + </method> + <method name='reply'> + <arguments><argument name='headers'><type><string/></type></argument><argument name='fd'><type><object resolved='predef::Stdio.File'>Stdio.File</object></type></argument><argument name='len'><type><int/></type></argument></arguments> + <returntype><void/></returntype> + </method> + <method name='reply'> + <arguments><argument name='ignore'><type><int><min>0</min><max>0</max></int></type></argument><argument name='fd'><type><object resolved='predef::Stdio.File'>Stdio.File</object></type></argument><argument name='len'><type><int/></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='reply_with_cache' homogen-type='method'><doc><text><p>Send <ref resolved='predef::HTTPAccept.RequestProgram.reply_with_cache.data'>data</ref> as the reply, and keep it as a cache entry to +  requests to this URL for <ref resolved='predef::HTTPAccept.RequestProgram.reply_with_cache.stay_time'>stay_time</ref> seconds.</p> + </text></doc> + <method name='reply_with_cache'> + <arguments><argument name='data'><type><string/></type></argument><argument name='stay_time'><type><int><min>1</min><max/></int></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='rest_query' homogen-type='variable'><doc><text><p>The part of the URL after the first '?' that does not seem to be query variables.</p> + </text></doc> + <variable name='rest_query'><type><string/></type></variable> + </docgroup> + <docgroup homogen-name='since' homogen-type='variable'><doc><text><p>The get-if-not-modified, if set.</p> + </text></doc> + <variable name='since'><type><string/></type></variable> + </docgroup> + <docgroup homogen-name='time' homogen-type='variable'><doc><text><p>The time_t when the request arrived to the server</p> + </text></doc> + <variable name='time'><type><int/></type></variable> + </docgroup> + <docgroup homogen-name='variables' homogen-type='variable'><doc><text><p>Parsed query variables</p> + </text></doc> + <variable name='variables'><type><mapping><indextype><string/></indextype><valuetype><string/></valuetype></mapping></type></variable> + </docgroup> + </class> + </module>   <module name='Image'>   <docgroup homogen-name='_decode' homogen-type='method'><doc><text><p>Attempts to decode <ref resolved='predef::Image._decode.data'>data</ref> as image data. The heuristics    has some limited ability to decode macbinary files as well.</p>   </text></doc>   <method name='_decode'>   <arguments><argument name='data'><type><string/></type></argument></arguments>   <returntype><mapping/></returntype>   </method>   </docgroup>   <docgroup homogen-name='_load' homogen-type='method'><doc><text><p>Loads a file with <ref resolved='predef::Image.load_file'>load_file</ref> and decodes it with <ref resolved='predef::Image._decode'>_decode</ref>.</p>
autodoc.git/modref.xml:88386:   <dt><i>The variables in the expression:</i></dt>   <dt>L</dt><dd><i>The active layer</i></dd>   <dt>S</dt><dd><i>The source layer (the sum of the layers below)</i></dd>   <dt>D</dt><dd><i>The destintion layer (the result)</i></dd>   <dt>Xrgb</dt><dd><i>Layer red (<b>Xr</b>), green (<b>Xg</b>) or blue channel (<b>Xb</b>) </i></dd>   <dt>Xhsv</dt><dd><i>Layer hue (<b>Xh</b>), saturation (<b>Xs</b>) or value channel (<b>Xv</b>) (virtual channels)</i></dd>   <dt>Xhls</dt><dd><i>Layer hue (<b>Xh</b>), lightness channel (<b>Xl</b>) or saturation (<b>Xs</b>) (virtual channels)</i></dd>   <dt>aX</dt><dd><i>Layer alpha, channel in layer alpha</i></dd>   </dl>   <i>All channels are calculated separately, if nothing else is specified.</i> - <table cellpadding='1' cellspacing='0'><tr><td align='left' colspan='2'><b>top layer</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.1.png' height='80' width='480'>layers.c.0.png</image></td><td align='left' valign='center'/></tr> - <tr><td align='left' colspan='2'><b>bottom layer</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.2.png' height='80' width='480'>layers.c.1.png</image></td><td align='left' valign='center'/></tr> - <tr><td align='left' colspan='2'><b>normal</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.3.png' height='80' width='480'>layers.c.2.png</image></td><td align='left' valign='center'>D=L applied with alpha: D=(L*aL+S*(1-aL)*aS) / (aL+(1-aL)*aS), aD=(aL+(1-aL)*aS)</td></tr> - <tr><td> </td></tr><tr><td align='left' colspan='2'><b>add</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.4.png' height='80' width='480'>layers.c.3.png</image></td><td align='left' valign='center'>D=L+S applied with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>subtract</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.5.png' height='80' width='480'>layers.c.4.png</image></td><td align='left' valign='center'>D=S-L applied with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>multiply</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.6.png' height='80' width='480'>layers.c.5.png</image></td><td align='left' valign='center'>D=S*L applied with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>divide</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.7.png' height='80' width='480'>layers.c.6.png</image></td><td align='left' valign='center'>D=S/L applied with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>negdivide</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.8.png' height='80' width='480'>layers.c.7.png</image></td><td align='left' valign='center'>D=1.0-S/L applied with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>modulo</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.9.png' height='80' width='480'>layers.c.8.png</image></td><td align='left' valign='center'>D=S%L applied with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>invsubtract</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.10.png' height='80' width='480'>layers.c.9.png</image></td><td align='left' valign='center'>D=L-S applied with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>invdivide</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.11.png' height='80' width='480'>layers.c.10.png</image></td><td align='left' valign='center'>D=L/S applied with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>invmodulo</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.12.png' height='80' width='480'>layers.c.11.png</image></td><td align='left' valign='center'>D=L%S applied with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>imultiply</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.13.png' height='80' width='480'>layers.c.12.png</image></td><td align='left' valign='center'>D=(1-L)*S applied with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>idivide</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.14.png' height='80' width='480'>layers.c.13.png</image></td><td align='left' valign='center'>D=S/(1-L) applied with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>invidivide</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.15.png' height='80' width='480'>layers.c.14.png</image></td><td align='left' valign='center'>D=L/(1-S) applied with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>difference</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.16.png' height='80' width='480'>layers.c.15.png</image></td><td align='left' valign='center'>D=abs(L-S) applied with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>max</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.17.png' height='80' width='480'>layers.c.16.png</image></td><td align='left' valign='center'>D=max(L,S) applied with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>min</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.18.png' height='80' width='480'>layers.c.17.png</image></td><td align='left' valign='center'>D=min(L,S) applied with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>bitwise_and</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.19.png' height='80' width='480'>layers.c.18.png</image></td><td align='left' valign='center'>D=L&amp;amp;amp;S applied with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>bitwise_or</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.20.png' height='80' width='480'>layers.c.19.png</image></td><td align='left' valign='center'>D=L|S applied with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>bitwise_xor</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.21.png' height='80' width='480'>layers.c.20.png</image></td><td align='left' valign='center'>D=L^S applied with alpha, aD=aS</td></tr> - <tr><td> </td></tr><tr><td align='left' colspan='2'><b>replace</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.22.png' height='80' width='480'>layers.c.21.png</image></td><td align='left' valign='center'>D=(L*aL+S*(1-aL)*aS) / (aL+(1-aL)*aS), aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>red</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.23.png' height='80' width='480'>layers.c.22.png</image></td><td align='left' valign='center'>Dr=(Lr*aLr+Sr*(1-aLr)*aSr) / (aLr+(1-aLr)*aSr), Dgb=Sgb, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>green</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.24.png' height='80' width='480'>layers.c.23.png</image></td><td align='left' valign='center'>Dg=(Lg*aLg+Sg*(1-aLg)*aSg) / (aLg+(1-aLg)*aSg), Drb=Srb, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>blue</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.25.png' height='80' width='480'>layers.c.24.png</image></td><td align='left' valign='center'>Db=(Lb*aLb+Sb*(1-aLb)*aSb) / (aLb+(1-aLb)*aSb), Drg=Srg, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>hardlight</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.26.png' height='80' width='480'>layers.c.25.png</image></td><td align='left' valign='center'>Like photoshop hardlight layer mode, aD=aS</td></tr> - <tr><td> </td></tr><tr><td align='left' colspan='2'><b>replace_hsv</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.27.png' height='80' width='480'>layers.c.26.png</image></td><td align='left' valign='center'>Dhsv=Lhsv apply with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>hue</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.28.png' height='80' width='480'>layers.c.27.png</image></td><td align='left' valign='center'>Dh=Lh apply with alpha, Dsv=Lsv, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>saturation</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.29.png' height='80' width='480'>layers.c.28.png</image></td><td align='left' valign='center'>Ds=Ls apply with alpha, Dhv=Lhv, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>value</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.30.png' height='80' width='480'>layers.c.29.png</image></td><td align='left' valign='center'>Dv=Lv apply with alpha, Dhs=Lhs, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>color</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.31.png' height='80' width='480'>layers.c.30.png</image></td><td align='left' valign='center'>Dhs=Lhs apply with alpha, Dv=Lv, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>value_mul</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.32.png' height='80' width='480'>layers.c.31.png</image></td><td align='left' valign='center'>Dv=Lv*Sv apply with alpha, Dhs=Lhs, aD=aS</td></tr> - <tr><td> </td></tr><tr><td align='left' colspan='2'><b>darken</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.33.png' height='80' width='480'>layers.c.32.png</image></td><td align='left' valign='center'>Dv=min(Lv,Sv) apply with alpha, Dhs=Lhs, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>lighten</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.34.png' height='80' width='480'>layers.c.33.png</image></td><td align='left' valign='center'>Dv=max(Lv,Sv) apply with alpha, Dhs=Lhs, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>saturate</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.35.png' height='80' width='480'>layers.c.34.png</image></td><td align='left' valign='center'>Ds=max(Ls,Ss) apply with alpha, Dhv=Lhv, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>desaturate</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.36.png' height='80' width='480'>layers.c.35.png</image></td><td align='left' valign='center'>Ds=min(Ls,Ss) apply with alpha, Dhv=Lhv, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>hls_replace</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.37.png' height='80' width='480'>layers.c.36.png</image></td><td align='left' valign='center'>Dhls=Lhls apply with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>hls_hue</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.38.png' height='80' width='480'>layers.c.37.png</image></td><td align='left' valign='center'>Dh=Lh apply with alpha, Dsv=Lsv, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>hls_saturation</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.39.png' height='80' width='480'>layers.c.38.png</image></td><td align='left' valign='center'>Ds=Ls apply with alpha, Dhv=Lhv, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>hls_lightness</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.40.png' height='80' width='480'>layers.c.39.png</image></td><td align='left' valign='center'>Dl=Ll apply with alpha, Dhs=Lhs, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>hls_color</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.41.png' height='80' width='480'>layers.c.40.png</image></td><td align='left' valign='center'>Dhs=Lhs apply with alpha, Dl=Ll, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>hls_lightness_mul</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.42.png' height='80' width='480'>layers.c.41.png</image></td><td align='left' valign='center'>Dl=Ll*Sl apply with alpha, Dhs=Lhs, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>hls_darken</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.43.png' height='80' width='480'>layers.c.42.png</image></td><td align='left' valign='center'>Dl=min(Ll,Sl) apply with alpha, Dhs=Lhs, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>hls_lighten</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.44.png' height='80' width='480'>layers.c.43.png</image></td><td align='left' valign='center'>Dl=max(Ll,Sl) apply with alpha, Dhs=Lhs, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>hls_saturate</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.45.png' height='80' width='480'>layers.c.44.png</image></td><td align='left' valign='center'>Ds=max(Ls,Ss) apply with alpha, Dhl=Lhl, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>hls_desaturate</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.46.png' height='80' width='480'>layers.c.45.png</image></td><td align='left' valign='center'>Ds=min(Ls,Ss) apply with alpha, Dhl=Lhl, aD=aS</td></tr> - <tr><td> </td></tr><tr><td align='left' colspan='2'><b>dissolve</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.47.png' height='80' width='480'>layers.c.46.png</image></td><td align='left' valign='center'>i=random 0 or 1, D=i?L:S, aD=i+aS</td></tr> - <tr><td align='left' colspan='2'><b>behind</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.48.png' height='80' width='480'>layers.c.47.png</image></td><td align='left' valign='center'>D=(S*aS+L*(1-aS)*aL) / (aS+(1-aS)*aL), aD=(aS+(1-aS)*aL); simply swap S and L</td></tr> - <tr><td align='left' colspan='2'><b>erase</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.49.png' height='80' width='480'>layers.c.48.png</image></td><td align='left' valign='center'>D=S, aD=aS*(1-aL)</td></tr> - <tr><td> </td></tr><tr><td align='left' colspan='2'><b>screen</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.50.png' height='80' width='480'>layers.c.49.png</image></td><td align='left' valign='center'>1-(1-S)*(1-L) applied with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>overlay</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.51.png' height='80' width='480'>layers.c.50.png</image></td><td align='left' valign='center'>(1-(1-a)*(1-b)-a*b)*a+a*b applied with alpha, aD=aS</td></tr> - <tr><td align='left' colspan='2'><b>burn_alpha</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.52.png' height='80' width='480'>layers.c.51.png</image></td><td align='left' valign='center'>aD=aL+aS applied with alpha, D=L+S; experimental, may change or be removed</td></tr> - <tr><td> </td></tr><tr><td align='left' colspan='2'><b>equal</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.53.png' height='80' width='480'>layers.c.52.png</image></td><td align='left' valign='center'>each channel D=max if L==S, 0 otherwise, apply with alpha</td></tr> - <tr><td align='left' colspan='2'><b>not_equal</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.54.png' height='80' width='480'>layers.c.53.png</image></td><td align='left' valign='center'>each channel D=max if L!=S, 0 otherwise, apply with alpha</td></tr> - <tr><td align='left' colspan='2'><b>less</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.55.png' height='80' width='480'>layers.c.54.png</image></td><td align='left' valign='center'>each channel D=max if L&amp;amp;lt;S, 0 otherwise, apply with alpha</td></tr> - <tr><td align='left' colspan='2'><b>more</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.56.png' height='80' width='480'>layers.c.55.png</image></td><td align='left' valign='center'>each channel D=max if L&amp;amp;gt;S, 0 otherwise, apply with alpha</td></tr> - <tr><td align='left' colspan='2'><b>less_or_equal</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.57.png' height='80' width='480'>layers.c.56.png</image></td><td align='left' valign='center'>each channel D=max if L&amp;amp;lt;=S, 0 otherwise, apply with alpha</td></tr> - <tr><td align='left' colspan='2'><b>more_or_equal</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.58.png' height='80' width='480'>layers.c.57.png</image></td><td align='left' valign='center'>each channel D=max if L&amp;amp;gt;=S, 0 otherwise, apply with alpha</td></tr> - <tr><td> </td></tr><tr><td align='left' colspan='2'><b>logic_equal</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.59.png' height='80' width='480'>layers.c.58.png</image></td><td align='left' valign='center'>logic: D=white and opaque if L==S, black and transparent otherwise</td></tr> - <tr><td align='left' colspan='2'><b>logic_not_equal</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.60.png' height='80' width='480'>layers.c.59.png</image></td><td align='left' valign='center'>logic: D=white and opaque if any L!=S, black and transparent otherwise</td></tr> - <tr><td align='left' colspan='2'><b>logic_strict_less</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.61.png' height='80' width='480'>layers.c.60.png</image></td><td align='left' valign='center'>logic: D=white and opaque if all L&amp;amp;lt;S, black and transparent otherwise</td></tr> - <tr><td align='left' colspan='2'><b>logic_strict_more</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.62.png' height='80' width='480'>layers.c.61.png</image></td><td align='left' valign='center'>logic: D=white and opaque if all L&amp;amp;gt;S, black and transparent otherwise</td></tr> - <tr><td align='left' colspan='2'><b>logic_strict_less_equal</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.63.png' height='80' width='480'>layers.c.62.png</image></td><td align='left' valign='center'>logic: D=white and opaque if all L&amp;amp;lt;=L, black and transparent otherwise</td></tr> - <tr><td align='left' colspan='2'><b>logic_strict_more_equal</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.64.png' height='80' width='480'>layers.c.63.png</image></td><td align='left' valign='center'>logic: D=white and opaque if all L&amp;amp;gt;=L, black and transparent otherwise</td></tr> + <table cellpadding='1' cellspacing='0'><tr><td align='left' colspan='2'><b>top layer</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.1.jpeg' height='80' width='480'>layers.c.0.jpeg</image></td><td align='left' valign='center'/></tr> + <tr><td align='left' colspan='2'><b>bottom layer</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.2.jpeg' height='80' width='480'>layers.c.1.jpeg</image></td><td align='left' valign='center'/></tr> + <tr><td align='left' colspan='2'><b>normal</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.3.jpeg' height='80' width='480'>layers.c.2.jpeg</image></td><td align='left' valign='center'>D=L applied with alpha: D=(L*aL+S*(1-aL)*aS) / (aL+(1-aL)*aS), aD=(aL+(1-aL)*aS)</td></tr> + <tr><td> </td></tr><tr><td align='left' colspan='2'><b>add</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.4.jpeg' height='80' width='480'>layers.c.3.jpeg</image></td><td align='left' valign='center'>D=L+S applied with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>subtract</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.5.jpeg' height='80' width='480'>layers.c.4.jpeg</image></td><td align='left' valign='center'>D=S-L applied with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>multiply</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.6.jpeg' height='80' width='480'>layers.c.5.jpeg</image></td><td align='left' valign='center'>D=S*L applied with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>divide</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.7.jpeg' height='80' width='480'>layers.c.6.jpeg</image></td><td align='left' valign='center'>D=S/L applied with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>negdivide</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.8.jpeg' height='80' width='480'>layers.c.7.jpeg</image></td><td align='left' valign='center'>D=1.0-S/L applied with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>modulo</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.9.jpeg' height='80' width='480'>layers.c.8.jpeg</image></td><td align='left' valign='center'>D=S%L applied with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>invsubtract</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.10.jpeg' height='80' width='480'>layers.c.9.jpeg</image></td><td align='left' valign='center'>D=L-S applied with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>invdivide</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.11.jpeg' height='80' width='480'>layers.c.10.jpeg</image></td><td align='left' valign='center'>D=L/S applied with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>invmodulo</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.12.jpeg' height='80' width='480'>layers.c.11.jpeg</image></td><td align='left' valign='center'>D=L%S applied with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>imultiply</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.13.jpeg' height='80' width='480'>layers.c.12.jpeg</image></td><td align='left' valign='center'>D=(1-L)*S applied with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>idivide</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.14.jpeg' height='80' width='480'>layers.c.13.jpeg</image></td><td align='left' valign='center'>D=S/(1-L) applied with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>invidivide</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.15.jpeg' height='80' width='480'>layers.c.14.jpeg</image></td><td align='left' valign='center'>D=L/(1-S) applied with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>difference</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.16.jpeg' height='80' width='480'>layers.c.15.jpeg</image></td><td align='left' valign='center'>D=abs(L-S) applied with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>max</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.17.jpeg' height='80' width='480'>layers.c.16.jpeg</image></td><td align='left' valign='center'>D=max(L,S) applied with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>min</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.18.jpeg' height='80' width='480'>layers.c.17.jpeg</image></td><td align='left' valign='center'>D=min(L,S) applied with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>bitwise_and</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.19.jpeg' height='80' width='480'>layers.c.18.jpeg</image></td><td align='left' valign='center'>D=L&amp;amp;amp;S applied with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>bitwise_or</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.20.jpeg' height='80' width='480'>layers.c.19.jpeg</image></td><td align='left' valign='center'>D=L|S applied with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>bitwise_xor</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.21.jpeg' height='80' width='480'>layers.c.20.jpeg</image></td><td align='left' valign='center'>D=L^S applied with alpha, aD=aS</td></tr> + <tr><td> </td></tr><tr><td align='left' colspan='2'><b>replace</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.22.jpeg' height='80' width='480'>layers.c.21.jpeg</image></td><td align='left' valign='center'>D=(L*aL+S*(1-aL)*aS) / (aL+(1-aL)*aS), aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>red</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.23.jpeg' height='80' width='480'>layers.c.22.jpeg</image></td><td align='left' valign='center'>Dr=(Lr*aLr+Sr*(1-aLr)*aSr) / (aLr+(1-aLr)*aSr), Dgb=Sgb, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>green</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.24.jpeg' height='80' width='480'>layers.c.23.jpeg</image></td><td align='left' valign='center'>Dg=(Lg*aLg+Sg*(1-aLg)*aSg) / (aLg+(1-aLg)*aSg), Drb=Srb, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>blue</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.25.jpeg' height='80' width='480'>layers.c.24.jpeg</image></td><td align='left' valign='center'>Db=(Lb*aLb+Sb*(1-aLb)*aSb) / (aLb+(1-aLb)*aSb), Drg=Srg, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>hardlight</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.26.jpeg' height='80' width='480'>layers.c.25.jpeg</image></td><td align='left' valign='center'>Like photoshop hardlight layer mode, aD=aS</td></tr> + <tr><td> </td></tr><tr><td align='left' colspan='2'><b>replace_hsv</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.27.jpeg' height='80' width='480'>layers.c.26.jpeg</image></td><td align='left' valign='center'>Dhsv=Lhsv apply with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>hue</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.28.jpeg' height='80' width='480'>layers.c.27.jpeg</image></td><td align='left' valign='center'>Dh=Lh apply with alpha, Dsv=Lsv, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>saturation</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.29.jpeg' height='80' width='480'>layers.c.28.jpeg</image></td><td align='left' valign='center'>Ds=Ls apply with alpha, Dhv=Lhv, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>value</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.30.jpeg' height='80' width='480'>layers.c.29.jpeg</image></td><td align='left' valign='center'>Dv=Lv apply with alpha, Dhs=Lhs, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>color</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.31.jpeg' height='80' width='480'>layers.c.30.jpeg</image></td><td align='left' valign='center'>Dhs=Lhs apply with alpha, Dv=Lv, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>value_mul</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.32.jpeg' height='80' width='480'>layers.c.31.jpeg</image></td><td align='left' valign='center'>Dv=Lv*Sv apply with alpha, Dhs=Lhs, aD=aS</td></tr> + <tr><td> </td></tr><tr><td align='left' colspan='2'><b>darken</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.33.jpeg' height='80' width='480'>layers.c.32.jpeg</image></td><td align='left' valign='center'>Dv=min(Lv,Sv) apply with alpha, Dhs=Lhs, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>lighten</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.34.jpeg' height='80' width='480'>layers.c.33.jpeg</image></td><td align='left' valign='center'>Dv=max(Lv,Sv) apply with alpha, Dhs=Lhs, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>saturate</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.35.jpeg' height='80' width='480'>layers.c.34.jpeg</image></td><td align='left' valign='center'>Ds=max(Ls,Ss) apply with alpha, Dhv=Lhv, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>desaturate</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.36.jpeg' height='80' width='480'>layers.c.35.jpeg</image></td><td align='left' valign='center'>Ds=min(Ls,Ss) apply with alpha, Dhv=Lhv, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>hls_replace</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.37.jpeg' height='80' width='480'>layers.c.36.jpeg</image></td><td align='left' valign='center'>Dhls=Lhls apply with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>hls_hue</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.38.jpeg' height='80' width='480'>layers.c.37.jpeg</image></td><td align='left' valign='center'>Dh=Lh apply with alpha, Dsv=Lsv, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>hls_saturation</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.39.jpeg' height='80' width='480'>layers.c.38.jpeg</image></td><td align='left' valign='center'>Ds=Ls apply with alpha, Dhv=Lhv, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>hls_lightness</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.40.jpeg' height='80' width='480'>layers.c.39.jpeg</image></td><td align='left' valign='center'>Dl=Ll apply with alpha, Dhs=Lhs, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>hls_color</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.41.jpeg' height='80' width='480'>layers.c.40.jpeg</image></td><td align='left' valign='center'>Dhs=Lhs apply with alpha, Dl=Ll, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>hls_lightness_mul</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.42.jpeg' height='80' width='480'>layers.c.41.jpeg</image></td><td align='left' valign='center'>Dl=Ll*Sl apply with alpha, Dhs=Lhs, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>hls_darken</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.43.jpeg' height='80' width='480'>layers.c.42.jpeg</image></td><td align='left' valign='center'>Dl=min(Ll,Sl) apply with alpha, Dhs=Lhs, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>hls_lighten</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.44.jpeg' height='80' width='480'>layers.c.43.jpeg</image></td><td align='left' valign='center'>Dl=max(Ll,Sl) apply with alpha, Dhs=Lhs, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>hls_saturate</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.45.jpeg' height='80' width='480'>layers.c.44.jpeg</image></td><td align='left' valign='center'>Ds=max(Ls,Ss) apply with alpha, Dhl=Lhl, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>hls_desaturate</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.46.jpeg' height='80' width='480'>layers.c.45.jpeg</image></td><td align='left' valign='center'>Ds=min(Ls,Ss) apply with alpha, Dhl=Lhl, aD=aS</td></tr> + <tr><td> </td></tr><tr><td align='left' colspan='2'><b>dissolve</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.47.jpeg' height='80' width='480'>layers.c.46.jpeg</image></td><td align='left' valign='center'>i=random 0 or 1, D=i?L:S, aD=i+aS</td></tr> + <tr><td align='left' colspan='2'><b>behind</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.48.jpeg' height='80' width='480'>layers.c.47.jpeg</image></td><td align='left' valign='center'>D=(S*aS+L*(1-aS)*aL) / (aS+(1-aS)*aL), aD=(aS+(1-aS)*aL); simply swap S and L</td></tr> + <tr><td align='left' colspan='2'><b>erase</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.49.jpeg' height='80' width='480'>layers.c.48.jpeg</image></td><td align='left' valign='center'>D=S, aD=aS*(1-aL)</td></tr> + <tr><td> </td></tr><tr><td align='left' colspan='2'><b>screen</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.50.jpeg' height='80' width='480'>layers.c.49.jpeg</image></td><td align='left' valign='center'>1-(1-S)*(1-L) applied with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>overlay</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.51.jpeg' height='80' width='480'>layers.c.50.jpeg</image></td><td align='left' valign='center'>(1-(1-a)*(1-b)-a*b)*a+a*b applied with alpha, aD=aS</td></tr> + <tr><td align='left' colspan='2'><b>burn_alpha</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.52.jpeg' height='80' width='480'>layers.c.51.jpeg</image></td><td align='left' valign='center'>aD=aL+aS applied with alpha, D=L+S; experimental, may change or be removed</td></tr> + <tr><td> </td></tr><tr><td align='left' colspan='2'><b>equal</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.53.jpeg' height='80' width='480'>layers.c.52.jpeg</image></td><td align='left' valign='center'>each channel D=max if L==S, 0 otherwise, apply with alpha</td></tr> + <tr><td align='left' colspan='2'><b>not_equal</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.54.jpeg' height='80' width='480'>layers.c.53.jpeg</image></td><td align='left' valign='center'>each channel D=max if L!=S, 0 otherwise, apply with alpha</td></tr> + <tr><td align='left' colspan='2'><b>less</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.55.jpeg' height='80' width='480'>layers.c.54.jpeg</image></td><td align='left' valign='center'>each channel D=max if L&amp;amp;lt;S, 0 otherwise, apply with alpha</td></tr> + <tr><td align='left' colspan='2'><b>more</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.56.jpeg' height='80' width='480'>layers.c.55.jpeg</image></td><td align='left' valign='center'>each channel D=max if L&amp;amp;gt;S, 0 otherwise, apply with alpha</td></tr> + <tr><td align='left' colspan='2'><b>less_or_equal</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.57.jpeg' height='80' width='480'>layers.c.56.jpeg</image></td><td align='left' valign='center'>each channel D=max if L&amp;amp;lt;=S, 0 otherwise, apply with alpha</td></tr> + <tr><td align='left' colspan='2'><b>more_or_equal</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.58.jpeg' height='80' width='480'>layers.c.57.jpeg</image></td><td align='left' valign='center'>each channel D=max if L&amp;amp;gt;=S, 0 otherwise, apply with alpha</td></tr> + <tr><td> </td></tr><tr><td align='left' colspan='2'><b>logic_equal</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.59.jpeg' height='80' width='480'>layers.c.58.jpeg</image></td><td align='left' valign='center'>logic: D=white and opaque if L==S, black and transparent otherwise</td></tr> + <tr><td align='left' colspan='2'><b>logic_not_equal</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.60.jpeg' height='80' width='480'>layers.c.59.jpeg</image></td><td align='left' valign='center'>logic: D=white and opaque if any L!=S, black and transparent otherwise</td></tr> + <tr><td align='left' colspan='2'><b>logic_strict_less</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.61.jpeg' height='80' width='480'>layers.c.60.jpeg</image></td><td align='left' valign='center'>logic: D=white and opaque if all L&amp;amp;lt;S, black and transparent otherwise</td></tr> + <tr><td align='left' colspan='2'><b>logic_strict_more</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.62.jpeg' height='80' width='480'>layers.c.61.jpeg</image></td><td align='left' valign='center'>logic: D=white and opaque if all L&amp;amp;gt;S, black and transparent otherwise</td></tr> + <tr><td align='left' colspan='2'><b>logic_strict_less_equal</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.63.jpeg' height='80' width='480'>layers.c.62.jpeg</image></td><td align='left' valign='center'>logic: D=white and opaque if all L&amp;amp;lt;=L, black and transparent otherwise</td></tr> + <tr><td align='left' colspan='2'><b>logic_strict_more_equal</b></td></tr><tr><td align='right'><image file='predef.Image.Layer.set_mode.64.jpeg' height='80' width='480'>layers.c.63.jpeg</image></td><td align='left' valign='center'>logic: D=white and opaque if all L&amp;amp;gt;=L, black and transparent otherwise</td></tr>   </table></p>      <p> <ref resolved='predef::Image.Layer.available_modes'>available_modes</ref>() simply gives an array    containing the names of these modes.   </p>   </text>   <group><note/><text>   <p>image and alpha channel must be of the same size,   or canceled.</p>   </text></group>
autodoc.git/modref.xml:89787:   </text></group><group><member><type><int/></type><index>"NewSubfileType"</index></member><member><type><string/></type><index>"BitsPerSample"</index></member><member><type><int/></type><index>"Compression"</index></member><member><type><int/></type><index>"PhotometricInterpretation"</index></member><member><type><string/></type><index>"Make"</index></member><member><type><string/></type><index>"Model"</index></member><member><type><int/></type><index>"SamplesPerPixel"</index></member><member><type><int/></type><index>"ResolutionUnit"</index></member><member><type><string/></type><index>"Software"</index></member><member><type><string/></type><index>"DateTime"</index></member><member><type><int/></type><index>"Predictor"</index></member><member><type><string/></type><index>"XMP"</index></member></group></mapping>   </text></doc>   <method name='decode_header'><modifiers><public/></modifiers>   <arguments><argument name='data'><type><string/></type></argument></arguments>   <returntype><mapping/></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;____Image_TIFF&quot;' homogen-type='inherit'> - <inherit name='&quot;____Image_TIFF&quot;'><classname>"____Image_TIFF"</classname></inherit> + <docgroup homogen-name='"____Image_TIFF"' homogen-type='inherit'> + <inherit name='"____Image_TIFF"'><classname>"____Image_TIFF"</classname></inherit>   </docgroup>   </module>   <module name='TIM'>   <doc>   <text>   <p>   Handle decoding of TIM images.</p>      <p>TIM is the framebuffer format of the PSX game system.   It is a simple, uncompressed, truecolor or CLUT format
autodoc.git/modref.xml:90083:   </method>   </docgroup>   <docgroup homogen-name='decode_header' homogen-type='method'><doc><group><returns/><text><mapping><group><member><type><string/></type><index>"format"</index></member><text><p>The MIME type and encoding for the image, e.g. "image/x-wap.wbmp; type=0".</p>   </text></group><group><member><type><int/></type><index>"xsize"</index></member><member><type><int/></type><index>"ysize"</index></member><member><type><int/></type><index>"fix_header_field"</index></member><member><type><int/></type><index>"ext_header_field"</index></member></group></mapping></text></group></doc>   <method name='decode_header'>   <arguments><argument name='image'><type><string/></type></argument></arguments>   <returntype><mapping/></returntype>   </method>   </docgroup>   </module> + <module name='WebP'> + <doc><text><p>WebP is a truecolor image format with alpha channel support +  currently developed by Google.</p> + <p> This module supports decoding and encoding of lossy and lossless +  WebP images with and without alpha channels using the libwebp library.</p> + <p> WebP images are generally smaller than the same quality JPEG or +  PNG image, but takes longer to encode and decode, and support in +  various applications is less common.</p> + </text></doc> + <docgroup homogen-name='_decode' homogen-type='method'><doc><text><p>Decode a WebP image.</p> + </text><group><returns/><text><mapping><group><member><type><object resolved='predef::Image.Image'>Image.Image</object></type><index>"alpha"</index></member><member><type><object resolved='predef::Image.Image'>Image.Image</object></type><index>"image"</index></member><member><type><string/></type><index>"format"</index></member><member><type><int><min>1</min><max>16384</max></int></type><index>"width"</index></member><member><type><int><min>1</min><max>16384</max></int></type><index>"height"</index></member></group></mapping></text></group></doc> + <method name='_decode'> + <arguments><argument name='data'><type><string/></type></argument></arguments> + <returntype><mapping/></returntype> + </method> + </docgroup> + <docgroup homogen-name='decode' homogen-type='method'><doc><text><p>Decode a WebP image, like <ref resolved='predef::Image.WebP._decode'>_decode</ref>.</p> + </text><group><returns/><text><p>The decoded image or an error</p> + </text></group></doc> + <method name='decode'> + <arguments><argument name='data'><type><string/></type></argument></arguments> + <returntype><object resolved='predef::Image.Image'>Image.Image</object></returntype> + </method> + </docgroup> + <docgroup homogen-name='encode' homogen-type='method'><doc><text><p>Encode an image using the WebP format.</p> + <p> The image to encode has to be at most 16384 pixels in any direction.</p> + <p> Commonly used options:</p> + <mapping><group><member><type><object resolved='predef::Image.Image'>Image.Image</object></type><index>"alpha"</index></member><text><p>If present, the alpha channel for the image will be the green +  component of this image. Has to be the same size as the <ref resolved='predef::Image.WebP.encode.image'>image</ref></p> + </text></group><group><member><type><int/></type><index>"preset"</index></member><text><p>Initialization for the encoding options. +  One of PRESET_DEFAULT, PRESET_PICTURE, PRESET_PHOTO +  PRESET_DRAWING, PRESET_ICON and PRESET_TEXT</p> + </text></group><group><member><type><object>bool</object></type><index>"lossless"</index></member><text><p>If set, do lossless encoding.</p> + </text></group><group><member><type><float/></type><index>"quality"</index></member><text><p>Between 0 and 99. If quality is 100+, lossless encoding with +  quality 70 will be used.</p> + </text></group></mapping><p>Additionally these advanced options are also supported:</p> + <mapping><group><member><type><int/></type><index>"image_hint"</index></member><text><p>One of HINT_DEFAULT, HINT_PICTURE, HINT_PHOTO and HINT_GRAPH. +  Only used in lossless mode</p> + </text></group><group><member><type><int/></type><index>"target_size"</index></member><text><p>If non zero, sets the desired filesize, in bytes. Takes +  precedence over quality.</p> + </text></group><group><member><type><int/></type><index>"target_PSNR"</index></member><text><p>if non-zero, specifies the minimal distortion to try to +  achieve. Takes precedence over target_size.</p> + </text></group><group><member><type><int><min>1</min><max>4</max></int></type><index>"segments"</index></member><text><p>maximum number of segments to use.</p> + </text></group><group><member><type><int><min>0</min><max>100</max></int></type><index>"sns_strength"</index></member><text><p>Spatial Noise Shaping. 0=off, 100=maximum.</p> + </text></group><group><member><type><int><min>0</min><max>100</max></int></type><index>"filter_strength"</index></member><text><p>0=off</p> + </text></group><group><member><type><int><min>0</min><max>7</max></int></type><index>"filter_sharpness"</index></member><text><p>0=off</p> + </text></group><group><member><type><int><min>0</min><max>1</max></int></type><index>"filter_type"</index></member><text><p>For the type, 0=simple, 1=strong.</p> + </text></group><group><member><type><object>bool</object></type><index>autofilter</index></member><text><p>If true, automatically adjust the filter strengths</p> + </text></group><group><member><type><int><min>0</min><max>1</max></int></type><index>"alpha_compression"</index></member><text><p>Select alpha channel encoding format. Currently supported are 0: No alpha and 1: WebP lossless</p> + </text></group><group><member><type><int><min>0</min><max>2</max></int></type><index>"alpha_filtering"</index></member><text><p>Select alpha filtering method. 0: none, 1: fast, 2: best. Default if 1.</p> + </text></group><group><member><type><int><min>0</min><max>100</max></int></type><index>"alpha_quality"</index></member><text><p>Select the base image quality for the alpha channel.</p> + </text></group><group><member><type><int><min>1</min><max>10</max></int></type><index>"pass"</index></member><text><p>The number of entropy analysis passes. Defaults to 1.</p> + </text></group><group><member><type><object>bool</object></type><index>"show_compressed"</index></member></group><group><member><type><object>bool</object></type><index>"preprocessing"</index></member><text><p>If true, do preprocessing (segment-smooth)</p> + </text></group><group><member><type><int><min>0</min><max>3</max></int></type><index>"partitions"</index></member><text><p>log2(number of token partitions). Default is set to 0 for easier +  progressive decoding.</p> + </text></group><group><member><type><int><min>0</min><max>100</max></int></type><index>"partition_limit"</index></member><text><p>quality degradation allowed to fit the 512k limit on prediction +  modes coding (0: no degradation, 100: maximum possible +  degradation).</p> + </text></group><group><member><type><object>bool</object></type><index>"emulate_jpeg_size"</index></member><text><p>If true, try to map the quality setting to generate similar sizes +  when compared to jpeg.</p> + </text></group><group><member><type><int/></type><index>"thread_level"</index></member><text><p>The maximum number of extra threads to use. Defaults to 0</p> + </text></group><group><member><type><object>bool</object></type><index>"low_memory"</index></member><text><p>Decrease memory usage at the cost of encoding speed</p> + </text></group></mapping> + </text><group><returns/><text><p>Always returns the encoded image as a string or throws an error.</p> + </text></group></doc> + <method name='encode'> + <arguments><argument name='image'><type><object resolved='predef::Image.Image'>Image.Image</object></type></argument><argument name='options'><type><or><mapping><indextype><string/></indextype><valuetype><or><int/><float/><object resolved='predef::Image.Image'>Image.Image</object></or></valuetype></mapping><void/></or></type></argument></arguments> + <returntype><string/></returntype> + </method> + </docgroup> + </module>   <module name='X'>   <doc>   <text>   <p>   This submodule handles encoding and decoding of   the binary formats of X11.</p>      <p>   </p>   </text>
autodoc.git/modref.xml:91333:   </docgroup>   <docgroup homogen-name='JString' homogen-type='method'>   <method name='JString'>   <arguments><argument name='s'><type><string/></type></argument></arguments>   <returntype><object resolved='predef::Java.jobject'>jobject</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;___Java&quot;' homogen-type='inherit'> - <inherit name='&quot;___Java&quot;'><classname>"___Java"</classname></inherit> + <docgroup homogen-name='"___Java"' homogen-type='inherit'> + <inherit name='"___Java"'><classname>"___Java"</classname></inherit>   </docgroup>   <docgroup homogen-name='pkg' homogen-type='variable'><doc><text><p>Singleton 'package' object.</p>   <p> Usage: object cls = Java.pkg.java.lang.String;</p>   <p> or: object cls = Java.pkg["java/lang/String"];</p>   <p> cls is a jclass object; call it to create a jobject, which will have all the methods of the Java class.</p>   <p> Example: Java.pkg.FooClass()-&gt;getResult();</p>   </text></doc>   <variable name='pkg'><type><object resolved='predef::Java'/></type></variable>   </docgroup>   <class name='jclass'>
autodoc.git/modref.xml:92007:   <returntype><string/></returntype>   </method>   </docgroup>   </class>   <module name='cat'>   <doc><text><p>Catalan language locale.</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;abstract&quot;' homogen-type='inherit'> - <inherit name='&quot;abstract&quot;'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit> + <docgroup homogen-name='"abstract"' homogen-type='inherit'> + <inherit name='"abstract"'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit>   </docgroup>   </module>   <module name='ces'>   <doc><text><p>Czech language locale by Jan Petrous 16.10.1997,    based on Slovenian language module by Iztok Umek.</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;abstract&quot;' homogen-type='inherit'> - <inherit name='&quot;abstract&quot;'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit> + <docgroup homogen-name='"abstract"' homogen-type='inherit'> + <inherit name='"abstract"'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit>   </docgroup>   </module>   <module name='deu'>   <doc><text><p>German language locale by Tvns Böker.</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;abstract&quot;' homogen-type='inherit'> - <inherit name='&quot;abstract&quot;'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit> + <docgroup homogen-name='"abstract"' homogen-type='inherit'> + <inherit name='"abstract"'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit>   </docgroup>   </module>   <module name='eng'>   <doc><text><p>English language locale.</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;abstract&quot;' homogen-type='inherit'> - <inherit name='&quot;abstract&quot;'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit> + <docgroup homogen-name='"abstract"' homogen-type='inherit'> + <inherit name='"abstract"'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit>   </docgroup>   </module>   <module name='fin'>   <doc><text><p>Finnish language locale created by Janne Edelman, Turku Unix Users    Group ry, Turku, Finland</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;abstract&quot;' homogen-type='inherit'> - <inherit name='&quot;abstract&quot;'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit> + <docgroup homogen-name='"abstract"' homogen-type='inherit'> + <inherit name='"abstract"'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit>   </docgroup>   </module>   <module name='fra'>   <doc><text><p>French language locale by Patrick Kremer.</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;abstract&quot;' homogen-type='inherit'> - <inherit name='&quot;abstract&quot;'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit> + <docgroup homogen-name='"abstract"' homogen-type='inherit'> + <inherit name='"abstract"'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit>   </docgroup>   </module>   <module name='hrv'>   <doc><text><p>Croatian language locale by Klara Makovac 1997/07/02</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;abstract&quot;' homogen-type='inherit'> - <inherit name='&quot;abstract&quot;'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit> + <docgroup homogen-name='"abstract"' homogen-type='inherit'> + <inherit name='"abstract"'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit>   </docgroup>   </module>   <module name='hun'>   <doc><text><p>Hungarian language locale by Zsolt Varga.</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;abstract&quot;' homogen-type='inherit'> - <inherit name='&quot;abstract&quot;'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit> + <docgroup homogen-name='"abstract"' homogen-type='inherit'> + <inherit name='"abstract"'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit>   </docgroup>   </module>   <module name='ita'>   <doc><text><p>Italian language locale by Francesco Chemolli</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;abstract&quot;' homogen-type='inherit'> - <inherit name='&quot;abstract&quot;'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit> + <docgroup homogen-name='"abstract"' homogen-type='inherit'> + <inherit name='"abstract"'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit>   </docgroup>   </module>   <module name='jpn'>   <doc><text><p>Japanese language locale.</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;abstract&quot;' homogen-type='inherit'> - <inherit name='&quot;abstract&quot;'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit> + <docgroup homogen-name='"abstract"' homogen-type='inherit'> + <inherit name='"abstract"'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit>   </docgroup>   </module>   <module name='mri'>   <doc><text><p>Maaori (New Zealand) language locale by Jason Rumney</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;abstract&quot;' homogen-type='inherit'> - <inherit name='&quot;abstract&quot;'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit> + <docgroup homogen-name='"abstract"' homogen-type='inherit'> + <inherit name='"abstract"'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit>   </docgroup>   </module>   <module name='nld'>   <doc><text><p>Dutch language locale by Stephen R. van den Berg</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;abstract&quot;' homogen-type='inherit'> - <inherit name='&quot;abstract&quot;'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit> + <docgroup homogen-name='"abstract"' homogen-type='inherit'> + <inherit name='"abstract"'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit>   </docgroup>   </module>   <module name='nor'>   <doc><text><p>Norwegian language locale</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;abstract&quot;' homogen-type='inherit'> - <inherit name='&quot;abstract&quot;'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit> + <docgroup homogen-name='"abstract"' homogen-type='inherit'> + <inherit name='"abstract"'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit>   </docgroup>   </module>   <module name='pol'>   <doc><text><p>Polish language locale by Piotr Klaban &lt;makler@man.torun.pl&gt;.</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;abstract&quot;' homogen-type='inherit'> - <inherit name='&quot;abstract&quot;'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit> + <docgroup homogen-name='"abstract"' homogen-type='inherit'> + <inherit name='"abstract"'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit>   </docgroup>   </module>   <module name='por'>   <doc><text><p>Portuguese language locale</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;abstract&quot;' homogen-type='inherit'> - <inherit name='&quot;abstract&quot;'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit> + <docgroup homogen-name='"abstract"' homogen-type='inherit'> + <inherit name='"abstract"'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit>   </docgroup>   </module>   <module name='rus'>   <doc><text><p>Russian language locale</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;abstract&quot;' homogen-type='inherit'> - <inherit name='&quot;abstract&quot;'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit> + <docgroup homogen-name='"abstract"' homogen-type='inherit'> + <inherit name='"abstract"'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit>   </docgroup>   </module>   <module name='slv'>   <doc><text><p>Slovenian language locale by Iztok Umek 7. 8. 1997</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;abstract&quot;' homogen-type='inherit'> - <inherit name='&quot;abstract&quot;'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit> + <docgroup homogen-name='"abstract"' homogen-type='inherit'> + <inherit name='"abstract"'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit>   </docgroup>   </module>   <module name='spa'>   <doc><text><p>Spanish language locale</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;abstract&quot;' homogen-type='inherit'> - <inherit name='&quot;abstract&quot;'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit> + <docgroup homogen-name='"abstract"' homogen-type='inherit'> + <inherit name='"abstract"'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit>   </docgroup>   </module>   <module name='srp'>   <doc><text><p>Serbian language locale by Goran Opacic 1996/12/11</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;abstract&quot;' homogen-type='inherit'> - <inherit name='&quot;abstract&quot;'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit> + <docgroup homogen-name='"abstract"' homogen-type='inherit'> + <inherit name='"abstract"'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit>   </docgroup>   </module>   <module name='swe'>   <doc><text><p>Swedish language locale</p>   </text></doc>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;abstract&quot;' homogen-type='inherit'> - <inherit name='&quot;abstract&quot;'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit> + <docgroup homogen-name='"abstract"' homogen-type='inherit'> + <inherit name='"abstract"'><classname resolved='predef::Locale.Language.abstract'>"abstract"</classname></inherit>   </docgroup>   </module>   </module>   <class name='LanguageListObject'>   <modifiers><protected/></modifiers>   <docgroup homogen-name='create' homogen-type='method'>   <method name='create'><modifiers><protected/></modifiers>   <arguments><argument name='languages'><type><array><valuetype><string/></valuetype></array></type></argument></arguments>   <returntype><void/></returntype>   </method>
autodoc.git/modref.xml:94250:   <returntype><array><valuetype><int/></valuetype></array></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup>   <docgroup homogen-name='inf' homogen-type='constant'><doc><text><p>Floating point infinity.</p>   </text></doc>   <constant name='inf'/>   </docgroup> - <docgroup homogen-name='&quot;___Math&quot;' homogen-type='inherit'> - <inherit name='&quot;___Math&quot;'><classname>"___Math"</classname></inherit> + <docgroup homogen-name='"___Math"' homogen-type='inherit'> + <inherit name='"___Math"'><classname>"___Math"</classname></inherit>   </docgroup>   <docgroup homogen-name='log10' homogen-type='method'><doc><text><p>The 10-logarithm of <ref resolved='predef::Math.log10.x'>x</ref>.</p>   </text></doc>   <method name='log10'>   <arguments><argument name='x'><type><or><int/><float/></or></type></argument></arguments>   <returntype><float/></returntype>   </method>   </docgroup>   <docgroup homogen-name='log2' homogen-type='method'><doc><text><p>The 2-logarithm of <ref resolved='predef::Math.log2.x'>x</ref>.</p>   </text></doc>
autodoc.git/modref.xml:99250:   </method>   </docgroup>   <class name='odbc'>   <doc><text><p>Low-level connection to an ODBC or DSN database.</p>   </text><group><note/><text><p>You typically don't want to access this module directly, but    instead use the <ref>Sql.odbc</ref> or <ref>Sql.dsn</ref> created by <ref resolved='predef::Sql.Sql'>Sql.Sql()</ref>.</p>   </text></group><group><seealso/><text><p><ref>Sql.odbc</ref>, <ref>Sql.dsn</ref></p>   </text></group></doc>   </class>   </module> + <module name='Oracle'> + <doc><text><p>Pike interface to Oracle databases.</p> + </text><group><thanks/><text><p>Original design by Marcus Comstedt.</p> + <p> Re-written for Oracle 8.x and later by Fredrik Hubinette.</p> + <p> Re-structured into a CMOD by Henrik Grubbström.</p> + </text></group></doc> + <class name='oracle'> + <doc><text><p>Connection to an Oracle database server.</p> + </text><group><note/><text><p>You probably don't want to access this class directly, but +  rather via <ref resolved='predef::Sql.Sql'>Sql.Sql</ref>.</p> + </text></group><group><seealso/><text><p><ref resolved='predef::Sql.Sql'>Sql.Sql</ref>, <ref>Sql.oracle</ref></p> + </text></group></doc> + <docgroup homogen-name='Connection' homogen-type='inherit'> + <inherit name='Connection'><classname>__builtin.Sql.Connection</classname></inherit> + </docgroup> +  + <class name='LOB'> + <doc><text><p>Large OBject.</p> + </text></doc> + </class> + <class name='NULL'> + <docgroup homogen-name='Null' homogen-type='inherit'> + <inherit name='Null'><classname resolved='predef::Val.Null'>Val.Null</classname></inherit> + </docgroup> + <docgroup homogen-name='is_oracle_null' homogen-type='constant'> + <constant name='is_oracle_null'/> + </docgroup> + </class> + <class name='compile_query'> + <class name='TypedResult'> + <docgroup homogen-name='Result' homogen-type='inherit'> + <inherit name='Result'><classname>__builtin.Sql.Result</classname></inherit> + </docgroup> + </class> +  + </class> + </class> + </module>   <module name='PDF'>   <docgroup homogen-type='constant'>   <constant name='a0_width'/>   <constant name='a0_height'/>   <constant name='a1_width'/>   <constant name='a1_height'/>   <constant name='a2_width'/>   <constant name='a2_height'/>   <constant name='a3_width'/>   <constant name='a3_height'/>
autodoc.git/modref.xml:100883:   </text></doc>   <docgroup homogen-type='constant'><constant name='NOTICE'/>   <constant name='WARNING'/>   <constant name='ERROR'/>   </docgroup>   </enum>   </module>   <module name='Pike'>   <doc><text><p>This module parses and tokenizes Pike source code.</p>   </text></doc> - <docgroup homogen-name='&quot;C.pmod&quot;' homogen-type='inherit'> - <inherit name='&quot;C.pmod&quot;'><classname resolved='predef::Parser.C'>"C.pmod"</classname></inherit> + <docgroup homogen-name='"C.pmod"' homogen-type='inherit'> + <inherit name='"C.pmod"'><classname resolved='predef::Parser.C'>"C.pmod"</classname></inherit>   </docgroup>   <docgroup homogen-name='split' homogen-type='method'><doc><text><p>Splits the <ref resolved='predef::Parser.Pike.split.data'>data</ref> string into an array of tokens. An additional    element with a newline will be added to the resulting array of    tokens. If the optional argument <ref resolved='predef::Parser.Pike.split.state'>state</ref> is provided the split    function is able to pause and resume splitting inside #"" and    /**/ tokens. The <ref resolved='predef::Parser.Pike.split.state'>state</ref> argument should be an initially empty    mapping, in which split will store its state between successive    calls.</p>   </text></doc>   <method name='split'>
autodoc.git/modref.xml:103466:   </text></group><group><note/><text><p>The result of <expr>Pike.count_memory(0,a,b)</expr> might be larger    than the sum of <expr>Pike.count_memory(0,a)</expr> and    <expr>Pike.count_memory(0,b)</expr> since <expr>a</expr> and <expr>b</expr>    together might reference things that aren't referenced from    anywhere else.</p>   </text></group><group><note/><text><p>It's possible that a string that is referenced still isn't    counted, because strings are always shared in Pike and the same    string may be in use in some unrelated part of the program.</p>   </text></group></doc>   <method name='count_memory'> - <arguments><argument name='options'><type><or><int/><mapping><indextype><string/></indextype><valuetype><int/></valuetype></mapping></or></type></argument><argument name='things'><type><varargs><or><array/><multiset/><mapping/><object resolved='predef::Pike.count_memory'/><program/><string/><type><mixed/></type><int/></or></varargs></type></argument></arguments> + <arguments><argument name='options'><type><or><int/><mapping><indextype><string/></indextype><valuetype><int/></valuetype></mapping></or></type></argument><argument name='things'><type><varargs><mixed/></varargs></type></argument></arguments>   <returntype><int/></returntype>   </method>   </docgroup>   <docgroup homogen-name='gc_parameters' homogen-type='method'><doc><text><p>Set and get various parameters that control the operation of the    garbage collector. The passed mapping contains the parameters to    set. If a parameter is missing from the mapping, the current value    will be filled in instead. The same mapping is returned. Thus an    empty mapping, or no argument at all, causes a mapping with all    current settings to be returned.</p>   <p> The following parameters are recognized:</p>
autodoc.git/modref.xml:104769:    statement ("<expr>/bin/sh -c <ref resolved='predef::Process.spawn.command'>command</ref></expr>" for Unix, "<expr>cmd /c    <ref resolved='predef::Process.spawn.command'>command</ref></expr>" for Windows).</p>   </text><group><param name='stdin'/><param name='stdout'/><param name='stderr'/><text><p>Stream objects to use as standard input, standard output and    standard error, respectively, for the created process. The    corresponding streams for this process are used for those that    are left out.</p>   </text></group><group><returns/><text><p>Returns a <ref resolved='predef::Process.Process'>Process.Process</ref> object for the created process.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::Process.system'>system</ref>, <ref resolved='predef::Process.popen'>popen</ref></p>   </text></group></doc>   <method name='spawn'> - <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><argument><value/></argument></arguments> + <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><object resolved='predef::Process.Process'>Process</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='spawn_pike' homogen-type='method'><doc><text><p>Spawn a new pike process similar to the current.</p>   </text><group><param name='argv'/><text><p>Arguments for the new process.</p>   </text></group><group><param name='options'/><text><p>Process creation options. See <ref resolved='predef::Process.Process'>Process.Process</ref> for details. May also    specify "add_predefines", "add_program_path", or "add_include_path" in    order to include these components in command path (module path is    included by default.)</p>   </text></group><group><seealso/><text><p><ref resolved='predef::Process.Process'>Process.Process</ref></p>
autodoc.git/modref.xml:105120:   <constant name='limit_value'/>   </docgroup>   <docgroup homogen-name='pid' homogen-type='method'><doc><text><p>Returns the process identifier of the process.</p>   </text></doc>   <method name='pid'>   <arguments/>   <returntype><int/></returntype>   </method>   </docgroup>   <docgroup homogen-name='set_priority' homogen-type='method'><doc><text><p>Sets the priority of the process. <ref resolved='predef::Process.create_process.set_priority.priority'>priority</ref> is one of the strings</p> - <dl><group><item name='&quot;realtime&quot;'/><item name='&quot;highest&quot;'/><item name='&quot;higher&quot;'/><item name='&quot;high&quot;'/><item name='&quot;low&quot;'/><item name='&quot;lowest&quot;'/></group></dl></text></doc> + <dl><group><item name='"realtime"'/><item name='"highest"'/><item name='"higher"'/><item name='"high"'/><item name='"low"'/><item name='"lowest"'/></group></dl></text></doc>   <method name='set_priority'>   <arguments><argument name='priority'><type><string/></type></argument></arguments>   <returntype><int/></returntype>   </method>   </docgroup>   <docgroup homogen-name='status' homogen-type='method'><doc><text><p>Returns the status of the process:</p>   <int><group><value>-1</value><text><p>Unknown</p>   </text></group><group><value>0</value><text><p>Running</p>   </text></group><group><value>1</value><text><p>Stopped</p>   </text></group><group><value>2</value><text><p>Exited</p>
autodoc.git/modref.xml:107478:    certificate first, provided in binary format.</p>   </text></group></doc>   <method name='create'>   <arguments><argument name='_callback'><type><function><argtype><object resolved='predef::Protocols.HTTP.Server.Request'>Request</object></argtype><returntype><void/></returntype></function></type></argument><argument name='_portno'><type><or><void/><int/></or></type></argument><argument name='_interface'><type><or><void/><string/></or></type></argument><argument name='key'><type><or><void/><string/></or></type></argument><argument name='certificate'><type><or><void/><string/><array><valuetype><string/></valuetype></array></or></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;.&quot;' homogen-type='import'> - <import name='&quot;.&quot;'><classname resolved='predef::Protocols.HTTP.Server'>"."</classname></import> + <docgroup homogen-name='"."' homogen-type='import'> + <import name='"."'><classname resolved='predef::Protocols.HTTP.Server'>"."</classname></import>   </docgroup>   <docgroup homogen-name='new_connection' homogen-type='method'><doc><text><p>The port accept callback</p>   </text></doc>   <method name='new_connection'><modifiers><protected/></modifiers>   <arguments/>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='request_program' homogen-type='variable'>   <variable name='request_program'><type><or><object resolved='predef::Protocols.HTTP.Server.SSLPort'/><function/><program/></or></type></variable>
autodoc.git/modref.xml:107963:   </text></group></mapping>   </text></group></doc>   <method name='create'>   <arguments><argument name='server'><type><or><string/><object resolved='predef::Protocols.IRC.Client.create'/></or></type></argument><argument name='options'><type><or><void/><mapping><indextype><string/></indextype><valuetype><mixed/></valuetype></mapping></or></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;.&quot;' homogen-type='import'> - <import name='&quot;.&quot;'><classname resolved='predef::Protocols.IRC'>"."</classname></import> + <docgroup homogen-name='"."' homogen-type='import'> + <import name='"."'><classname resolved='predef::Protocols.IRC'>"."</classname></import>   </docgroup>   </class>   <class name='Person'>   <doc><text><p>Abstract class for a person.</p>   </text></doc>   <docgroup homogen-name='ip' homogen-type='variable'><doc><text><p>User domain, e.g. <expr>"mistel.idonex.se"</expr>.</p>   </text></doc>   <variable name='ip'><type><string/></type></variable>   </docgroup>   <docgroup homogen-name='last_action' homogen-type='variable'><doc><text><p>Time of last action, represented as posix time.</p>
autodoc.git/modref.xml:108382:    name is returned.</p>   </text></doc>   <method name='get_constant_name'>   <arguments><argument name='val'><type><mixed/></type></argument></arguments>   <returntype><string/></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;.&quot;' homogen-type='import'> - <import name='&quot;.&quot;'><classname resolved='predef::Protocols'>"."</classname></import> + <docgroup homogen-name='"."' homogen-type='import'> + <import name='"."'><classname resolved='predef::Protocols'>"."</classname></import>   </docgroup>   <docgroup homogen-name='ldap_decode_string' homogen-type='method'><doc><text><p>Decodes all <expr>\xx</expr> escapes in <ref resolved='predef::Protocols.LDAP.ldap_decode_string.str'>str</ref>.</p>   </text><group><seealso/><text><p><ref resolved='predef::Protocols.LDAP.ldap_encode_string'>ldap_encode_string</ref></p>   </text></group></doc>   <method name='ldap_decode_string'>   <arguments><argument name='str'><type><string/></type></argument></arguments>   <returntype><string/></returntype>   </method>   </docgroup>   <docgroup homogen-name='ldap_encode_string' homogen-type='method'><doc><text><p>Quote characters in the given string as necessary for use as a
autodoc.git/modref.xml:108785:   </text><group><seealso/><text><p><ref resolved='predef::Protocols.LDAP.client.search'>search</ref></p>   </text></group></doc>   <method name='get_supported_controls'>   <arguments/>   <returntype><multiset><indextype><string/></indextype></multiset></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;.&quot;' homogen-type='import'> - <import name='&quot;.&quot;'><classname resolved='predef::Protocols.LDAP'>"."</classname></import> + <docgroup homogen-name='"."' homogen-type='import'> + <import name='"."'><classname resolved='predef::Protocols.LDAP'>"."</classname></import>   </docgroup>   <docgroup homogen-name='Constants' homogen-type='import'>   <import name='Constants'><classname resolved='predef::SSL.Constants'>SSL.Constants</classname></import>   </docgroup>   <docgroup homogen-name='info' homogen-type='variable'><doc><text><p>Several information about code itself and about active connection too</p>   </text></doc>   <variable name='info'><type><mapping/></type></variable>   </docgroup>   <docgroup homogen-name='protocol' homogen-type='inherit'>   <inherit name='protocol'><classname resolved='predef::Protocols.LDAP.protocol'>.protocol</classname></inherit>
autodoc.git/modref.xml:109565:   <returntype><void/></returntype>   </method>   <method name='create'>   <arguments><argument name='server'><type><string/></type></argument><argument name='options'><type><mapping/></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;.&quot;' homogen-type='import'> - <import name='&quot;.&quot;'><classname resolved='predef::Protocols.LysKOM'>"."</classname></import> + <docgroup homogen-name='"."' homogen-type='import'> + <import name='"."'><classname resolved='predef::Protocols.LysKOM'>"."</classname></import>   </docgroup>   <docgroup homogen-type='variable'><doc><text><p>Description of the connected server.</p>   </text></doc>   <variable name='protocol_level'><type><int/></type></variable>   <variable name='session_software'><type><string/></type></variable>   <variable name='software_version'><type><string/></type></variable>   </docgroup>   </class>   <module name='ProtocolTypes'>   <doc><text><p>Data types as defined by the LysKOM protocol specification.</p>
autodoc.git/modref.xml:109757:   <returntype><object resolved='predef::Protocols.LysKOM.Session.create_text'/></returntype>   </method>   <method name='create_text'>   <arguments><argument name='subject'><type><string/></type></argument><argument name='body'><type><string/></type></argument><argument name='options'><type><mapping/></type></argument><argument name='callback'><type><function/></type></argument><argument name='extra'><type><varargs><mixed/></varargs></type></argument></arguments>   <returntype><object resolved='predef::Protocols.LysKOM.Session.create_text'/></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;.&quot;' homogen-type='import'> - <import name='&quot;.&quot;'><classname resolved='predef::Protocols.LysKOM'>"."</classname></import> + <docgroup homogen-name='"."' homogen-type='import'> + <import name='"."'><classname resolved='predef::Protocols.LysKOM'>"."</classname></import>   </docgroup>   <docgroup homogen-name='login' homogen-type='method'><doc><text><p>Performs a login. Throws a lyskom error if unsuccessful.</p>   </text><group><returns/><text><p>The session object logged in.</p>   </text></group></doc>   <method name='login'>   <arguments><argument name='user_no'><type><int/></type></argument><argument name='password'><type><string/></type></argument></arguments>   <returntype><object resolved='predef::Protocols.LysKOM.Session.login'/></returntype>   </method>   <method name='login'>   <arguments><argument name='user_no'><type><int/></type></argument><argument name='password'><type><string/></type></argument><argument name='invisible'><type><int/></type></argument></arguments>
autodoc.git/modref.xml:110893:   </text></group><group><returns/><text><p>the function associated with oid, if any</p>   </text></group></doc>   <method name='get_set_oid_callback'>   <arguments><argument name='oid'><type><string/></type></argument></arguments>   <returntype><or><void/><function/></or></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;protocol&quot;' homogen-type='inherit'> - <inherit name='&quot;protocol&quot;'><classname resolved='predef::Protocols.SNMP.protocol'>"protocol"</classname></inherit> + <docgroup homogen-name='"protocol"' homogen-type='inherit'> + <inherit name='"protocol"'><classname resolved='predef::Protocols.SNMP.protocol'>"protocol"</classname></inherit>   </docgroup>   <docgroup homogen-name='set_get_communities' homogen-type='method'><doc><text><p>set the valid community strings for Get requests</p>   </text><group><param name='communities'/><text><p>an array of valid Get communities</p>   </text></group><group><note/><text><p>send an empty array to disable Get requests</p>   </text></group></doc>   <method name='set_get_communities'>   <arguments><argument name='communities'><type><array/></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>
autodoc.git/modref.xml:112358:   <docgroup homogen-name='`()' homogen-type='method'><doc><text><p>Convenience/compatibility method to get a <ref resolved='predef::Regexp.SimpleRegexp'>SimpleRegexp</ref> object.</p>   </text></doc>   <method name='`()'>   <arguments><argument name='regexp'><type><or><void/><string/></or></type></argument></arguments>   <returntype><object resolved='predef::Regexp.SimpleRegexp'>SimpleRegexp</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;___Regexp&quot;' homogen-type='inherit'> - <inherit name='&quot;___Regexp&quot;'><classname>"___Regexp"</classname></inherit> + <docgroup homogen-name='"___Regexp"' homogen-type='inherit'> + <inherit name='"___Regexp"'><classname>"___Regexp"</classname></inherit>   </docgroup>   <docgroup homogen-name='match' homogen-type='method'><doc><text><p>Calls <ref resolved='predef::Regexp.PCRE.Plain.match'>Regexp.PCRE.Plain.match</ref> in a temporary regexp object.    Faster to type but slower to run...</p>   </text></doc>   <method name='match'>   <arguments><argument name='regexp'><type><string/></type></argument><argument name='data'><type><string/></type></argument></arguments>   <returntype><int><min>0</min><max>1</max></int></returntype>   </method>   </docgroup>   <docgroup homogen-name='replace' homogen-type='method'><doc><text><p>Calls <ref resolved='predef::Regexp.PCRE.Plain.replace'>Regexp.PCRE.Plain.replace</ref> in a temporary regexp object.
autodoc.git/modref.xml:113095:   <docgroup homogen-name='get' homogen-type='method'><doc><text><p>Get a named object from the remote server.</p>   </text></doc>   <method name='get'>   <arguments><argument name='name'><type><string/></type></argument></arguments>   <returntype><object resolved='predef::Remote.Client.get'/></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;.&quot;' homogen-type='import'> - <import name='&quot;.&quot;'><classname resolved='predef::Remote'>"."</classname></import> + <docgroup homogen-name='"."' homogen-type='import'> + <import name='"."'><classname resolved='predef::Remote'>"."</classname></import>   </docgroup>   <docgroup homogen-name='provide' homogen-type='method'><doc><text><p>Provide a named <ref resolved='predef::Remote.Client.provide.thing'>thing</ref> to the <ref resolved='predef::Remote.Server'>Remote.Server</ref>.</p>   </text><group><param name='name'/><text><p>Name to provide <ref resolved='predef::Remote.Client.provide.thing'>thing</ref> under.</p>   </text></group><group><param name='thing'/><text><p>Thing to provide.</p>   </text></group></doc>   <method name='provide'>   <arguments><argument name='name'><type><string/></type></argument><argument name='thing'><type><mixed/></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>
autodoc.git/modref.xml:113344:   </text></group><group><param name='max_call_threads'/><text><p>Maximum number of concurrent threads.</p>   </text></group></doc>   <method name='create'>   <arguments><argument name='host'><type><string/></type></argument><argument name='port'><type><int/></type></argument><argument name='max_call_threads'><type><or><void/><int/></or></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;.&quot;' homogen-type='import'> - <import name='&quot;.&quot;'><classname resolved='predef::Remote'>"."</classname></import> + <docgroup homogen-name='"."' homogen-type='import'> + <import name='"."'><classname resolved='predef::Remote'>"."</classname></import>   </docgroup>   <docgroup homogen-name='port' homogen-type='variable'><doc><text><p>Port for the <ref resolved='predef::Remote.Server'>Remote.Server</ref>.</p>   </text></doc>   <variable name='port'><type><object resolved='predef::Stdio.Port'>Stdio.Port</object></type></variable>   </docgroup>   <docgroup homogen-name='provide' homogen-type='method'><doc><text><p>Provide a named <ref resolved='predef::Remote.Server.provide.thing'>thing</ref> to the <ref resolved='predef::Remote.Client'>Remote.Client</ref>(s).</p>   </text><group><param name='name'/><text><p>Name to provide <ref resolved='predef::Remote.Server.provide.thing'>thing</ref> under.</p>   </text></group><group><param name='thing'/><text><p>Thing to provide.</p>   </text></group></doc>   <method name='provide'>
autodoc.git/modref.xml:115563:    send_packet() function to transmit packets.</p>   </text></doc>   <method name='handle_handshake'>   <arguments><argument name='type'><type><int/></type></argument><argument name='data'><type><string><min>0</min><max>255</max></string></type></argument><argument name='raw'><type><string><min>0</min><max>255</max></string></type></argument></arguments>   <returntype><int><min>-1</min><max>1</max></int></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;.&quot;' homogen-type='import'> - <import name='&quot;.&quot;'><classname resolved='predef::SSL'>"."</classname></import> + <docgroup homogen-name='"."' homogen-type='import'> + <import name='"."'><classname resolved='predef::SSL'>"."</classname></import>   </docgroup>   <docgroup homogen-name='Constants' homogen-type='import'>   <import name='Constants'><classname resolved='predef::SSL.Constants'>Constants</classname></import>   </docgroup>   <docgroup homogen-name='Connection' homogen-type='inherit'>   <inherit name='Connection'><classname resolved='predef::SSL.Connection'>Connection</classname></inherit>   </docgroup>   </class>   <class name='Connection'>   <doc><text><p>SSL.Connection keeps the state relevant for a single SSL connection.
autodoc.git/modref.xml:116297:   <docgroup homogen-name='get_trusted_issuers' homogen-type='method'><doc><text><p>Get the list of trusted issuers. See <ref resolved='predef::SSL.Context.set_trusted_issuers'>set_trusted_issuers</ref>.</p>   </text></doc>   <method name='get_trusted_issuers'>   <arguments/>   <returntype><array><valuetype><array><valuetype><string/></valuetype></array></valuetype></array></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;.&quot;' homogen-type='import'> - <import name='&quot;.&quot;'><classname resolved='predef::SSL'>"."</classname></import> + <docgroup homogen-name='"."' homogen-type='import'> + <import name='"."'><classname resolved='predef::SSL'>"."</classname></import>   </docgroup>   <docgroup homogen-name='Constants' homogen-type='import'>   <import name='Constants'><classname resolved='predef::SSL.Constants'>Constants</classname></import>   </docgroup>   <docgroup homogen-type='variable'><doc><text><p>Temporary, non-certified, private keys, used for RSA key exchange    in export mode. They are used as follows:</p>   <p> <ref resolved='predef::SSL.Context.short_rsa'>short_rsa</ref> is a 512-bit RSA key used for the SSL 3.0 and TLS 1.0    export cipher suites.</p>   <p> <ref resolved='predef::SSL.Context.long_rsa'>long_rsa</ref> is a 1024-bit RSA key to be used for the RSA_EXPORT1024    suites from draft-ietf-tls-56-bit-ciphersuites-01.txt.</p>
autodoc.git/modref.xml:117130:    send_packet() function to transmit packets.</p>   </text></doc>   <method name='handle_handshake'>   <arguments><argument name='type'><type><int/></type></argument><argument name='data'><type><string><min>0</min><max>255</max></string></type></argument><argument name='raw'><type><string><min>0</min><max>255</max></string></type></argument></arguments>   <returntype><int><min>-1</min><max>1</max></int></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;.&quot;' homogen-type='import'> - <import name='&quot;.&quot;'><classname resolved='predef::SSL'>"."</classname></import> + <docgroup homogen-name='"."' homogen-type='import'> + <import name='"."'><classname resolved='predef::SSL'>"."</classname></import>   </docgroup>   <docgroup homogen-name='Constants' homogen-type='import'>   <import name='Constants'><classname resolved='predef::SSL.Constants'>Constants</classname></import>   </docgroup>   <docgroup homogen-name='Connection' homogen-type='inherit'>   <inherit name='Connection'><classname resolved='predef::SSL.Connection'>Connection</classname></inherit>   </docgroup>   </class>   <class name='Session'>   <doc><text><p>The most important information in a session object is a
autodoc.git/modref.xml:117227:   </text></doc>   <variable name='heartbeat_mode'><type><object>HeartBeatModeType</object></type></variable>   </docgroup>   <docgroup homogen-name='identity' homogen-type='variable'><doc><text><p>Identifies the session to the server</p>   </text></doc>   <variable name='identity'><type><string><min>0</min><max>255</max></string></type></variable>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;.&quot;' homogen-type='import'> - <import name='&quot;.&quot;'><classname resolved='predef::SSL'>"."</classname></import> + <docgroup homogen-name='"."' homogen-type='import'> + <import name='"."'><classname resolved='predef::SSL'>"."</classname></import>   </docgroup>   <docgroup homogen-name='Constants' homogen-type='import'>   <import name='Constants'><classname resolved='predef::SSL.Constants'>Constants</classname></import>   </docgroup>   <docgroup homogen-name='is_supported_cert' homogen-type='method'><doc><text><p>Used to filter certificates not supported by the peer.</p>   </text><group><param name='cp'/><text><p>Candidate <ref resolved='predef::SSL.Constants.CertificatePair'>CertificatePair</ref>.</p>   </text></group><group><param name='version'/><text><p>Negotiated version of SSL.</p>   </text></group><group><param name='ecc_curves'/><text><p>The set of ecc_curves supported by the peer.</p>   </text></group></doc>   <method name='is_supported_cert'><modifiers><protected/></modifiers>
autodoc.git/modref.xml:117394:   <docgroup homogen-name='encrypt_packet' homogen-type='method'><doc><text><p>Encrypts a packet (including deflating and MAC-generation).</p>   </text></doc>   <method name='encrypt_packet'>   <arguments><argument name='packet'><type><object resolved='predef::SSL.Packet'>Packet</object></type></argument><argument name='version'><type><object resolved='predef::SSL.Constants.ProtocolVersion'>ProtocolVersion</object></type></argument></arguments>   <returntype><or><object resolved='predef::SSL.Alert'>Alert</object><object resolved='predef::SSL.Packet'>Packet</object></or></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;.&quot;' homogen-type='import'> - <import name='&quot;.&quot;'><classname resolved='predef::SSL'>"."</classname></import> + <docgroup homogen-name='"."' homogen-type='import'> + <import name='"."'><classname resolved='predef::SSL'>"."</classname></import>   </docgroup>   <docgroup homogen-name='Constants' homogen-type='import'>   <import name='Constants'><classname resolved='predef::SSL.Constants'>Constants</classname></import>   </docgroup>   <docgroup homogen-name='mac' homogen-type='variable'><doc><text><p>Message Authentication Code</p>   </text></doc>   <variable name='mac'><type><object resolved='predef::SSL.Cipher.MACAlgorithm'>Cipher.MACAlgorithm</object></type></variable>   </docgroup>   <docgroup homogen-name='salt' homogen-type='variable'><doc><text><p>TLS 1.2 IV salt.    This is used as a prefix for the IV for the AEAD cipher algorithms.</p>
autodoc.git/modref.xml:117966:   <class name='DefaultParser'>   <docgroup homogen-name='create' homogen-type='method'>   <method name='create'><modifiers><protected/></modifiers>   <arguments><argument name='opt'><type><or><mapping><indextype><string/></indextype><valuetype><mixed/></valuetype></mapping><void/></or></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;.&quot;' homogen-type='import'> - <import name='&quot;.&quot;'><classname resolved='predef::Search.Grammar'>"."</classname></import> + <docgroup homogen-name='"."' homogen-type='import'> + <import name='"."'><classname resolved='predef::Search.Grammar'>"."</classname></import>   </docgroup>   <docgroup homogen-name='AbstractParser' homogen-type='inherit'>   <inherit name='AbstractParser'><modifiers><protected/></modifiers><classname resolved='predef::Search.Grammar.AbstractParser'>.AbstractParser</classname></inherit>   </docgroup>   <docgroup homogen-name='Lexer' homogen-type='inherit'>   <inherit name='Lexer'><modifiers><protected/></modifiers><classname resolved='predef::Search.Grammar.Lexer'>.Lexer</classname></inherit>   </docgroup>   <docgroup homogen-name='options' homogen-type='variable'>   <variable name='options'><type><mapping><indextype><string/></indextype><valuetype><mixed/></valuetype></mapping></type></variable>   </docgroup>
autodoc.git/modref.xml:123241:    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:123661:   <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:124169:   <method name='load_authorities'>   <arguments><argument name='root_cert_dirs'><type><or><string/><array><valuetype><string/></valuetype></array><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:124450:   <variable name='ext_keyUsage'><type><object>keyUsage</object></type></variable>   </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. RFC3280 4.2.1.2.</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='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><valuetype><object resolved='predef::Standards.ASN1.Types.Object'>Object</object></valuetype></array><object resolved='predef::Standards.ASN1.Types.Object'>Object</object></or></type></argument></arguments> + <arguments><argument name='asn1'><type><or><array><valuetype><object resolved='predef::Object'>Object</object></valuetype></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='keyinfo' homogen-type='variable'>
autodoc.git/modref.xml:124552:   <method name='get_module_xml'>   <arguments><argument name='dir'><type><object>Directory</object></type></argument><argument name='id'><type><string/></type></argument><argument name='version'><type><string/></type></argument><argument name='manufacturer'><type><or><string/><void/></or></type></argument><argument name='description'><type><or><string/><void/></or></type></argument><argument name='guid'><type><or><string/><void/></or></type></argument><argument name='comments'><type><or><string/><void/></or></type></argument><argument name='installer_version'><type><or><string/><void/></or></type></argument></arguments>   <returntype><object>WixNode</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup>   </module>   </module> + <module name='_BSON'> + <docgroup homogen-name='decode' homogen-type='method'> + <method name='decode'> + <arguments><argument name='document'><type><object>Stdio.Buffer</object></type></argument></arguments> + <returntype><mapping/></returntype> + </method> + </docgroup> + <docgroup homogen-name='decode' homogen-type='method'> + <method name='decode'> + <arguments><argument name='document'><type><string><min>0</min><max>255</max></string></type></argument></arguments> + <returntype><mapping/></returntype> + </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='DN_ACCESS' homogen-type='constant'><doc><text><p>Used in <ref resolved='predef::Stdio.File.notify'>File.notify()</ref> to get a callback when files    within a directory are accessed.</p>   </text></doc>   <constant name='DN_ACCESS'/>
autodoc.git/modref.xml:125991:   <arguments><argument name='filename'><type><string/></type></argument><argument name='mode'><type><string/></type></argument><argument name='mask'><type><int/></type></argument></arguments>   <returntype><int/></returntype>   </method>   </docgroup>   <docgroup homogen-name='open' homogen-type='method'><doc><text><p>Open a file, or use an existing fd.</p>   <p> If <ref resolved='predef::Stdio.File.open.filename'>filename</ref> is given, attempt to open the named file. If <ref resolved='predef::Stdio.File.open.fd'>fd</ref>    is given instead, it should be the file descriptor for an already    opened file, which will then be used by this object.</p>   <p> <ref resolved='predef::Stdio.File.open.mode'>mode</ref> describes how the file is opened. It's a case-insensitive    string consisting of one or more of the following letters:</p> - <dl><group><item name='&quot;r&quot;'/><text><p>Open for reading.</p> - </text></group><group><item name='&quot;w&quot;'/><text><p>Open for writing.</p> - </text></group><group><item name='&quot;a&quot;'/><text><p>Append new data to the end.</p> - </text></group><group><item name='&quot;c&quot;'/><text><p>Create the file if it doesn't exist already.</p> - </text></group><group><item name='&quot;t&quot;'/><text><p>Truncate the file to zero length if it already contains data. + <dl><group><item name='"r"'/><text><p>Open for reading.</p> + </text></group><group><item name='"w"'/><text><p>Open for writing.</p> + </text></group><group><item name='"a"'/><text><p>Append new data to the end.</p> + </text></group><group><item name='"c"'/><text><p>Create the file if it doesn't exist already.</p> + </text></group><group><item name='"t"'/><text><p>Truncate the file to zero length if it already contains data.    Use only together with <expr>"w"</expr>.</p> - </text></group><group><item name='&quot;x&quot;'/><text><p>Open exclusively - the open fails if the file already exists. + </text></group><group><item name='"x"'/><text><p>Open exclusively - the open fails if the file already exists.    Use only together with <expr>"c"</expr>. Note that it's not safe to    assume that this is atomic on some systems.</p>   </text></group></dl><p><ref resolved='predef::Stdio.File.open.access'>access</ref> specifies the permissions to use if a new file is    created. It is a UNIX style permission bitfield:</p>   <dl><group><item name='0400'/><text><p>User has read permission.</p>   </text></group><group><item name='0200'/><text><p>User has write permission.</p>   </text></group><group><item name='0100'/><text><p>User has execute permission.</p>   </text></group><group><item name='0040'/><text><p>Group has read permission.</p>   </text></group><group><item name='0020'/><text><p>Group has write permission.</p>   </text></group><group><item name='0010'/><text><p>Group has execute permission.</p>
autodoc.git/modref.xml:129182:   <method name='create'>   <arguments><argument name='buffer'><type><string/></type></argument><argument name='split_set'><type><or><int/><array><valuetype><int/></valuetype></array><multiset><indextype><int/></indextype></multiset></or></type></argument><argument name='flags'><type><or><int/><void/></or></type></argument><argument name='feed'><type><or><function><returntype><string/></returntype></function><void/></or></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='predef::Iterator' homogen-type='inherit'>   <inherit name='predef::Iterator'><classname resolved='predef::Iterator'>predef::Iterator</classname></inherit>   </docgroup>   </class>   </module> + <module name='Sybase'> + <class name='sybase'> + <docgroup homogen-name='Connection' homogen-type='inherit'> + <inherit name='Connection'><classname>__builtin.Sql.Connection</classname></inherit> + </docgroup> + </class> + </module>   <module name='System'>   <doc><text><p>This module embodies common operating system calls, making them    available to the Pike programmer.</p>   </text></doc>   <docgroup homogen-name='AllocConsole' homogen-type='method'><doc><text><p>Allocates a new console for the calling process.</p>   </text><group><note/><text><p>Only available on certain Windows systems.</p>   </text></group><group><returns/><text><p>0 on success, non-zero otherwise.</p>   </text></group></doc>   <method name='AllocConsole'>   <arguments/>
autodoc.git/modref.xml:132326:    classes, modules, methods, variables ...    The classes can produce XML representations of themselves.</p>   </text></doc>   <docgroup homogen-name='EmptyDoc' homogen-type='variable'><doc><text><p>The empty <ref resolved='predef::Tools.AutoDoc.PikeObjects.Documentation'>Documentation</ref>.</p>   </text></doc>   <variable name='EmptyDoc'><modifiers><protected/></modifiers><type><object resolved='predef::Tools.AutoDoc.PikeObjects.Documentation'>Documentation</object></type></variable>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;module.pmod&quot;' homogen-type='inherit'> - <inherit name='&quot;module.pmod&quot;'><modifiers><protected/></modifiers><classname resolved='predef::Tools.AutoDoc'>"module.pmod"</classname></inherit> + <docgroup homogen-name='"module.pmod"' homogen-type='inherit'> + <inherit name='"module.pmod"'><modifiers><protected/></modifiers><classname resolved='predef::Tools.AutoDoc'>"module.pmod"</classname></inherit>   </docgroup>   <docgroup homogen-name='Tree' homogen-type='inherit'>   <inherit name='Tree'><modifiers><protected/></modifiers><classname resolved='predef::Parser.XML.Tree'>Parser.XML.Tree</classname></inherit>   </docgroup>   <class name='ArrayType'>   <doc><text><p>The class for representing array types.</p>   </text><group><seealso/><text><p><ref resolved='predef::Tools.AutoDoc.PikeObjects.Type'>Type</ref></p>   </text></group></doc>   <docgroup homogen-name='create' homogen-type='method'>   <method name='create'>
autodoc.git/modref.xml:133287:   </text><group><param name='root'/><text><p>The root (<tt>&lt;autodoc&gt;</tt>) node of the documentation tree.</p>   </text></group></doc>   <method name='handleAppears'>   <arguments><argument name='root'><type><object resolved='predef::Parser.XML.Tree.SimpleNode'>SimpleNode</object></type></argument><argument name='flags'><type><or><object resolved='predef::Tools.AutoDoc.Flags'>.Flags</object><void/></or></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;module.pmod&quot;' homogen-type='inherit'> - <inherit name='&quot;module.pmod&quot;'><modifiers><protected/></modifiers><classname resolved='predef::Tools.AutoDoc'>"module.pmod"</classname></inherit> + <docgroup homogen-name='"module.pmod"' homogen-type='inherit'> + <inherit name='"module.pmod"'><modifiers><protected/></modifiers><classname resolved='predef::Tools.AutoDoc'>"module.pmod"</classname></inherit>   </docgroup>   <docgroup homogen-name='Tree' homogen-type='inherit'>   <inherit name='Tree'><modifiers><protected/></modifiers><classname resolved='predef::Parser.XML.Tree'>Parser.XML.Tree</classname></inherit>   </docgroup>   <docgroup homogen-name='mergeTrees' homogen-type='method'><doc><text><p>Puts all children of <ref resolved='predef::Tools.AutoDoc.ProcessXML.mergeTrees.source'>source</ref> into the tree <ref resolved='predef::Tools.AutoDoc.ProcessXML.mergeTrees.dest'>dest</ref>, in their    correct place module-hierarchically.</p>   <p> Used to merge the results of extractions of different Pike and C files.</p>   <p> Some minor effort is expended to normalize the result to some    sort of canonical order.</p>   </text><group><param name='source'/><param name='dest'/><text><p>The nodes <ref resolved='predef::Tools.AutoDoc.ProcessXML.mergeTrees.source'>source</ref> and <ref resolved='predef::Tools.AutoDoc.ProcessXML.mergeTrees.dest'>dest</ref> are <tt>&lt;class&gt;</tt>, <tt>&lt;module&gt;</tt>,
autodoc.git/modref.xml:133426:   </docgroup>   <docgroup homogen-name='xml' homogen-type='method'><doc><group><returns/><text><p>Returns a string with an XML-fragment describing the source position.</p>   </text></group></doc>   <method name='xml'>   <arguments><argument name='flags'><type><or><object resolved='predef::Tools.AutoDoc.Flags'>Flags</object><void/></or></type></argument></arguments>   <returntype><string/></returntype>   </method>   </docgroup>   </class>   </module> + <module name='Hilfe'> + <docgroup homogen-name='format_hr_time' homogen-type='method'><doc><text><p>Helper function that formats a time span in nanoseconds to +  something more human readable (ns, ms or s).</p> + </text></doc> + <method name='format_hr_time'> + <arguments><argument name='i'><type><int/></type></argument></arguments> + <returntype><string/></returntype> + </method> + </docgroup> + <docgroup homogen-name='' homogen-type='import'> + <import name=''><classname resolved='predef::'>predef::</classname></import> + </docgroup> + <class name='Command'> + <doc><text><p>Abstract class for Hilfe commands.</p> + </text></doc> + <docgroup homogen-name='doc' homogen-type='method'><doc><text><p>A more elaborate documentation of the command. This should be +  less than 68 characters per line.</p> + </text></doc> + <method name='doc'> + <arguments><argument name='what'><type><string/></type></argument><argument name='with'><type><string/></type></argument></arguments> + <returntype><string/></returntype> + </method> + </docgroup> + <docgroup homogen-name='exec' homogen-type='method'><doc><text><p>The actual command callback. Messages to the user should be +  written out by using the safe_write method in the <ref resolved='predef::Tools.Hilfe.Evaluator'>Evaluator</ref> +  object.</p> + </text></doc> + <method name='exec'> + <arguments><argument name='e'><type><object resolved='predef::Tools.Hilfe.Evaluator'>Evaluator</object></type></argument><argument name='line'><type><string/></type></argument><argument name='words'><type><array><valuetype><string/></valuetype></array></type></argument><argument name='tokens'><type><array><valuetype><string/></valuetype></array></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='help' homogen-type='method'><doc><text><p>Returns a one line description of the command. This help should +  be shorter than 54 characters.</p> + </text></doc> + <method name='help'> + <arguments><argument name='what'><type><string/></type></argument></arguments> + <returntype><string/></returntype> + </method> + </docgroup> + </class> + <class name='CommandReset'> + <doc><text><p>Variable reset command. Put ___Hilfe-&gt;commands-&gt;reset = +  Tools.Hilfe.CommandReset(); in your .hilferc to have this command +  defined when you open Hilfe.</p> + </text></doc> + <docgroup homogen-name='Command' homogen-type='inherit'> + <inherit name='Command'><classname resolved='predef::Tools.Hilfe.Command'>Command</classname></inherit> + </docgroup> + </class> + <class name='CommandSet'> + <modifiers><protected/></modifiers> + <docgroup homogen-name='Command' homogen-type='inherit'> + <inherit name='Command'><classname resolved='predef::Tools.Hilfe.Command'>Command</classname></inherit> + </docgroup> + <class name='Intwriter'> + <modifiers><protected/></modifiers> + <docgroup homogen-name='create' homogen-type='method'> + <method name='create'><modifiers><protected/></modifiers> + <arguments><argument name='type'><type><string/></type></argument><argument name='fallback'><type><function/></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-type='variable'> + <variable name='type'><type><string/></type></variable> + <variable name='fallback'><type><function/></type></variable> + </docgroup> + </class> + <class name='Reswriter'> + <modifiers><protected/></modifiers> + <docgroup homogen-name='create' homogen-type='method'> + <method name='create'><modifiers><protected/></modifiers> + <arguments><argument name='format'><type><string/></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='format' homogen-type='variable'> + <variable name='format'><type><string/></type></variable> + </docgroup> + </class> + </class> + <class name='Evaluator'> + <doc><text><p>This class implements the actual Hilfe interpreter. It is accessible +  as ___Hilfe from Hilfe expressions.</p> + </text></doc> + <docgroup homogen-name='add_buffer' homogen-type='method'><doc><text><p>Add buffer tokenizes the input string and determines if the +  new line is a Hilfe command. If not, it updates the current +  state with the new tokens and sends any and all complete +  expressions to evaluation in <ref resolved='predef::Tools.Hilfe.Evaluator.parse_expression'>parse_expression</ref>.</p> + </text></doc> + <method name='add_buffer'> + <arguments><argument name='s'><type><string/></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='add_input_hook' homogen-type='method'><doc><text><p>Adds a function to the input hook, making +  all user data be fed into the function.</p> + </text><group><seealso/><text><p><ref resolved='predef::Tools.Hilfe.Evaluator.remove_input_hook'>remove_input_hook</ref></p> + </text></group></doc> + <method name='add_input_hook'> + <arguments><argument name='new'><type><or><function/><object resolved='predef::Tools.Hilfe.Evaluator.add_input_hook'/></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='add_input_line' homogen-type='method'><doc><text><p>Input a line of text into Hilfe. It checks if <ref resolved='predef::Tools.Hilfe.Evaluator.add_input_line.s'>s</ref> is +  ".", in which case it calls state-&gt;flush(). Otherwise +  just calls add_buffer.</p> + </text></doc> + <method name='add_input_line'> + <arguments><argument name='s'><type><string/></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='add_writer' homogen-type='method'><doc><text><p>Adds another output function.</p> + </text></doc> + <method name='add_writer'> + <arguments><argument name='new'><type><or><object resolved='predef::Tools.Hilfe.Evaluator.add_writer'/><function><argtype><string/></argtype><returntype><int><min>0</min><max/></int></returntype></function></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='assembler_debug_level' homogen-type='variable'><doc><text><p>The current assembler debug level. +  Only available if Pike is compiled with RTL debug.</p> + </text></doc> + <variable name='assembler_debug_level'><type><int/></type></variable> + </docgroup> + <docgroup homogen-name='commands' homogen-type='variable'><doc><text><p>This mapping contains the available Hilfe commands, including the +  built in ones (dump, exit, help, new, quit), so it is possible to +  replace or remove them. The name of a command should be 10 +  characters or less.</p> + </text></doc> + <variable name='commands'><type><mapping><indextype><string/></indextype><valuetype><object resolved='predef::Tools.Hilfe.Command'>Command</object></valuetype></mapping></type></variable> + </docgroup> + <docgroup homogen-name='compiler_trace_level' homogen-type='variable'><doc><text><p>The current compiler trace level. +  Only available if Pike is compiled with RTL debug.</p> + </text></doc> + <variable name='compiler_trace_level'><type><int/></type></variable> + </docgroup> + <docgroup homogen-name='constants' homogen-type='variable'><doc><text><p>The locally defined constants (name:value).</p> + </text></doc> + <variable name='constants'><type><mapping><indextype><string/></indextype><valuetype><mixed/></valuetype></mapping></type></variable> + </docgroup> + <docgroup homogen-name='debug_level' homogen-type='variable'><doc><text><p>The current debug level. +  Only available if Pike is compiled with RTL debug.</p> + </text></doc> + <variable name='debug_level'><type><int/></type></variable> + </docgroup> + <docgroup homogen-name='evaluate' homogen-type='method'><doc><text><p>Compiles the Pike code <ref resolved='predef::Tools.Hilfe.Evaluator.evaluate.a'>a</ref> and evaluates it by +  calling ___HilfeWrapper in the generated object. +  If <ref resolved='predef::Tools.Hilfe.Evaluator.evaluate.show_result'>show_result</ref> is set the result will be displayed +  and the result buffer updated with its value.</p> + </text></doc> + <method name='evaluate'> + <arguments><argument name='a'><type><string/></type></argument><argument name='show_result'><type><int><min>0</min><max>1</max></int></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='functions' homogen-type='variable'><doc><text><p>The locally defined functions (name:value).</p> + </text></doc> + <variable name='functions'><type><mapping><indextype><string/></indextype><valuetype><function/></valuetype></mapping></type></variable> + </docgroup> + <docgroup homogen-name='hilfe_compile' homogen-type='method'><doc><text><p>Creates a wrapper and compiles the pike code <ref resolved='predef::Tools.Hilfe.Evaluator.hilfe_compile.f'>f</ref> in it. +  If a new variable is compiled to be tested, its name +  should be given in <ref resolved='predef::Tools.Hilfe.Evaluator.hilfe_compile.new_var'>new_var</ref> so that magically defined +  entities can be undefined and a warning printed.</p> + </text></doc> + <method name='hilfe_compile'> + <arguments><argument name='f'><type><string/></type></argument><argument name='new_var'><type><or><void/><string/></or></type></argument></arguments> + <returntype><object resolved='predef::Tools.Hilfe.Evaluator.hilfe_compile'/></returntype> + </method> + </docgroup> + <docgroup homogen-name='history' homogen-type='variable'><doc><text><p>The current result history.</p> + </text></doc> + <variable name='history'><type><object resolved='predef::Tools.Hilfe.HilfeHistory'>HilfeHistory</object></type></variable> + </docgroup> + <docgroup homogen-name='imports' homogen-type='variable'><doc><text><p>The current imports.</p> + </text></doc> + <variable name='imports'><type><array><valuetype><string/></valuetype></array></type></variable> + </docgroup> + <docgroup homogen-name='inherits' homogen-type='variable'><doc><text><p>The current inherits.</p> + </text></doc> + <variable name='inherits'><type><array><valuetype><string/></valuetype></array></type></variable> + </docgroup> + <docgroup homogen-name='last_compile_time' homogen-type='variable'><doc><text><p>The last compile time;</p> + </text></doc> + <variable name='last_compile_time'><type><int><min>0</min><max/></int></type></variable> + </docgroup> + <docgroup homogen-name='last_compiled_expr' homogen-type='variable'><doc><text><p>The last created wrapper in which an expression was evaluated.</p> + </text></doc> + <variable name='last_compiled_expr'><type><string/></type></variable> + </docgroup> + <docgroup homogen-name='last_else' homogen-type='variable'><doc><text><p>Should an else expression be carried out?</p> + </text></doc> + <variable name='last_else'><type><int><min>0</min><max>1</max></int></type></variable> + </docgroup> + <docgroup homogen-name='last_eval_time' homogen-type='variable'><doc><text><p>The last evaluation time;</p> + </text></doc> + <variable name='last_eval_time'><type><int><min>0</min><max/></int></type></variable> + </docgroup> + <docgroup homogen-name='parse_expression' homogen-type='method'><doc><text><p>Parses a Pike expression. Returns 0 if everything went well, +  or a string with an error message otherwise.</p> + </text></doc> + <method name='parse_expression'> + <arguments><argument name='expr'><type><object resolved='predef::Tools.Hilfe.Expression'>Expression</object></type></argument></arguments> + <returntype><string/></returntype> + </method> + </docgroup> + <docgroup homogen-name='print_version' homogen-type='method'><doc><text><p>Displays the current version of Hilfe.</p> + </text></doc> + <method name='print_version'> + <arguments/> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='programs' homogen-type='variable'><doc><text><p>The locally defined programs (name:value).</p> + </text></doc> + <variable name='programs'><type><mapping><indextype><string/></indextype><valuetype><program/></valuetype></mapping></type></variable> + </docgroup> + <docgroup homogen-name='remove_input_hook' homogen-type='method'><doc><text><p>Removes a function from the input hook.</p> + </text><group><seealso/><text><p><ref resolved='predef::Tools.Hilfe.Evaluator.add_input_hook'>add_input_hook</ref></p> + </text></group></doc> + <method name='remove_input_hook'> + <arguments><argument name='old'><type><or><function/><object resolved='predef::Tools.Hilfe.Evaluator.remove_input_hook'/></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='remove_writer' homogen-type='method'><doc><text><p>Removes an output function.</p> + </text></doc> + <method name='remove_writer'> + <arguments><argument name='old'><type><or><object resolved='predef::Tools.Hilfe.Evaluator.remove_writer'/><function/></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='reset_evaluator' homogen-type='method'><doc><text><p>Clears the current state, history and removes all locally +  defined variables, constants, functions and programs. Removes +  all imports and inherits. It does not reset the command mapping +  nor reevaluate the .hilferc file.</p> + </text></doc> + <method name='reset_evaluator'> + <arguments/> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='reswrite' homogen-type='variable'><doc><text><p>The function used to write results. +  Gets as arguments in order: The safe_write function +  (function(string, mixed ...:int), the result as a string (string), +  the history entry number (int), the result (mixed), the compilation +  time (int) and the evaulation time (int). If the evaluated expression +  didn't return anything (e.g. a for loop) then 0 will be given as the +  result string.</p> + </text></doc> + <variable name='reswrite'><type><function/></type></variable> + </docgroup> + <docgroup homogen-name='safe_write' homogen-type='method'><doc><text><p>An output method that shouldn't crash.</p> + </text></doc> + <method name='safe_write'> + <arguments><argument name='in'><type><or><array><valuetype><string/></valuetype></array><string/></or></type></argument><argument name='args'><type><varargs><mixed/></varargs></type></argument></arguments> + <returntype><int/></returntype> + </method> + </docgroup> + <docgroup homogen-name='state' homogen-type='variable'><doc><text><p>Keeps the state, e.g. multiline input in process etc.</p> + </text></doc> + <variable name='state'><type><object resolved='predef::Tools.Hilfe.ParserState'>ParserState</object></type></variable> + </docgroup> + <docgroup homogen-name='std_reswrite' homogen-type='method'><doc><text><p>The standard <ref resolved='predef::Tools.Hilfe.Evaluator.reswrite'>reswrite</ref> function.</p> + </text></doc> + <method name='std_reswrite'> + <arguments><argument name='w'><type><function/></type></argument><argument name='sres'><type><string/></type></argument><argument name='num'><type><int/></type></argument><argument name='res'><type><mixed/></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='strict_types' homogen-type='variable'><doc><text><p>Strict types?</p> + </text></doc> + <variable name='strict_types'><type><int><min>0</min><max>1</max></int></type></variable> + </docgroup> + <docgroup homogen-name='trace_level' homogen-type='variable'><doc><text><p>The current trace level.</p> + </text></doc> + <variable name='trace_level'><type><int/></type></variable> + </docgroup> + <docgroup homogen-name='types' homogen-type='variable'><doc><text><p>The types of the locally defined variables (name:type).</p> + </text></doc> + <variable name='types'><type><mapping><indextype><string/></indextype><valuetype><string/></valuetype></mapping></type></variable> + </docgroup> + <docgroup homogen-name='variables' homogen-type='variable'><doc><text><p>The locally defined variables (name:value).</p> + </text></doc> + <variable name='variables'><type><mapping><indextype><string/></indextype><valuetype><mixed/></valuetype></mapping></type></variable> + </docgroup> + <docgroup homogen-name='warnings' homogen-type='variable'><doc><text><p>Show warnings?</p> + </text></doc> + <variable name='warnings'><type><int><min>0</min><max>1</max></int></type></variable> + </docgroup> + <docgroup homogen-name='write' homogen-type='variable'><doc><text><p>The function to use when writing to the user.</p> + </text></doc> + <variable name='write'><type><or><array/><object resolved='predef::Tools.Hilfe.Evaluator'/><function><argtype><string/></argtype><returntype><int><min>0</min><max/></int></returntype></function></or></type></variable> + </docgroup> + <class name='HilfeCompileHandler'> + <modifiers><protected/></modifiers> + <docgroup homogen-name='create' homogen-type='method'> + <method name='create'><modifiers><protected/></modifiers> + <arguments><argument name='stack_level'><type><int/></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='stack_level' homogen-type='variable'> + <variable name='stack_level'><type><int/></type></variable> + </docgroup> + </class> + </class> + <class name='Expression'> + <doc><text><p>Represents a Pike expression</p> + </text></doc> + <docgroup homogen-name='_sizeof' homogen-type='method'><doc><text><p>The number of non-whitespace tokens in the expression.</p> + </text></doc> + <method name='_sizeof'> + <arguments/> + <returntype><int/></returntype> + </method> + </docgroup> + <docgroup homogen-name='`[]' homogen-type='method'><doc><text><p>Returns a token or a token range without whitespaces.</p> + </text></doc> + <method name='`[]'> + <arguments><argument name='f'><type><int/></type></argument><argument name='t'><type><or><void/><int/></or></type></argument></arguments> + <returntype><string/></returntype> + </method> + </docgroup> + <docgroup homogen-name='`[]=' homogen-type='method'><doc><text><p>Replaces a token with a new token.</p> + </text></doc> + <method name='`[]='> + <arguments><argument name='f'><type><int/></type></argument><argument name='v'><type><string/></type></argument></arguments> + <returntype><string/></returntype> + </method> + </docgroup> + <docgroup homogen-name='cast' homogen-type='method'><doc><text><p>An Expression object can be cast to an array or a string. In +  both forms all tokens, including white spaces will be returned.</p> + </text></doc> + <method name='cast'><modifiers><protected/></modifiers> + <arguments><argument name='to'><type><string/></type></argument></arguments> + <returntype><mixed/></returntype> + </method> + </docgroup> + <docgroup homogen-name='check_modifiers' homogen-type='method'><doc><text><p>See if there are any forbidden modifiers used in the expression, +  e.g. "private int x;" is not valid inside Hilfe.</p> + </text><group><returns/><text><p>Returns an error message as a string if the expression +  contains a forbidden modifier, otherwise <expr>0</expr>.</p> + </text></group></doc> + <method name='check_modifiers'> + <arguments/> + <returntype><string/></returntype> + </method> + </docgroup> + <docgroup homogen-name='code' homogen-type='method'><doc><text><p>Returns the expression verbatim.</p> + </text></doc> + <method name='code'> + <arguments/> + <returntype><string/></returntype> + </method> + </docgroup> + <docgroup homogen-name='create' homogen-type='method'><doc><group><param name='t'/><text><p>An array of Pike tokens.</p> + </text></group></doc> + <method name='create'><modifiers><protected/></modifiers> + <arguments><argument name='t'><type><array><valuetype><string/></valuetype></array></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='depth' homogen-type='method'><doc><text><p>Return the parenthesis depth at the given position.</p> + </text></doc> + <method name='depth'> + <arguments><argument name='f'><type><int/></type></argument></arguments> + <returntype><int/></returntype> + </method> + </docgroup> + <docgroup homogen-name='endoftype' homogen-type='method'><doc><text><p>Returns at which position the type declaration that begins at +  position <ref resolved='predef::Tools.Hilfe.Expression.endoftype.position'>position</ref> ends. A return value of -1 means that the +  token or tokens from <ref resolved='predef::Tools.Hilfe.Expression.endoftype.position'>position</ref> can not be a type declaration.</p> + </text></doc> + <method name='endoftype'> + <arguments><argument name='position'><type><int><min>-1</min><max/></int></type></argument></arguments> + <returntype><int><min>-1</min><max/></int></returntype> + </method> + </docgroup> + <docgroup homogen-name='find_matching' homogen-type='method'><doc><text><p>Returns the position of the matching parenthesis of the given +  kind, starting from the given position. The position should be +  the position after the opening parenthesis, or later. Assuming +  balanced code. Returns -1 on failure.</p> + </text></doc> + <method name='find_matching'> + <arguments><argument name='token'><type><string/></type></argument><argument name='pos'><type><or><int><min>0</min><max/></int><void/></or></type></argument></arguments> + <returntype><int><min>-1</min><max/></int></returntype> + </method> + </docgroup> + <docgroup homogen-name='in_sscanf' homogen-type='method'><doc><text><p>Returns 1 if the current position is within a sscanf expression.</p> + </text></doc> + <method name='in_sscanf'> + <arguments><argument name='f'><type><int/></type></argument></arguments> + <returntype><int><min>0</min><max>1</max></int></returntype> + </method> + </docgroup> + <docgroup homogen-name='is_block' homogen-type='method'><doc><text><p>Is there a block starting at <ref resolved='predef::Tools.Hilfe.Expression.is_block.pos'>pos</ref>?</p> + </text></doc> + <method name='is_block'> + <arguments><argument name='pos'><type><int/></type></argument></arguments> + <returntype><int><min>0</min><max>1</max></int></returntype> + </method> + </docgroup> + </class> + <class name='GenericAsyncHilfe'> + <docgroup homogen-name='create' homogen-type='method'> + <method name='create'><modifiers><protected/></modifiers> + <arguments><argument name='infile'><type><object resolved='predef::Stdio.File'>Stdio.File</object></type></argument><argument name='outfile'><type><object resolved='predef::Stdio.File'>Stdio.File</object></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-type='variable'> + <variable name='infile'><type><object resolved='predef::Stdio.File'>Stdio.File</object></type></variable> + <variable name='outfile'><type><object resolved='predef::Stdio.File'>Stdio.File</object></type></variable> + </docgroup> + <docgroup homogen-name='Evaluator' homogen-type='inherit'> + <inherit name='Evaluator'><classname resolved='predef::Tools.Hilfe.Evaluator'>Evaluator</classname></inherit> + </docgroup> + </class> + <class name='GenericHilfe'> + <docgroup homogen-name='create' homogen-type='method'> + <method name='create'><modifiers><protected/></modifiers> + <arguments><argument name='in'><type><object resolved='predef::Stdio.FILE'>Stdio.FILE</object></type></argument><argument name='out'><type><object resolved='predef::Stdio.File'>Stdio.File</object></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='Evaluator' homogen-type='inherit'> + <inherit name='Evaluator'><classname resolved='predef::Tools.Hilfe.Evaluator'>Evaluator</classname></inherit> + </docgroup> + </class> + <class name='HilfeHistory'> + <modifiers><protected/></modifiers> + <doc><text><p>In every Hilfe object (<ref resolved='predef::Tools.Hilfe.Evaluator'>Evaluator</ref>) there is a HilfeHistory +  object that manages the result history. That history object is +  accessible both from __ and ___Hilfe-&gt;history in Hilfe expressions.</p> + </text></doc> + <docgroup homogen-name='History' homogen-type='inherit'> + <inherit name='History'><classname resolved='predef::ADT.History'>ADT.History</classname></inherit> + </docgroup> + </class> + <class name='ParserState'> + <modifiers><protected/></modifiers> + <doc><text><p>In every Hilfe object (<ref resolved='predef::Tools.Hilfe.Evaluator'>Evaluator</ref>) there is a ParserState object +  that manages the current state of the parser. Essentially tokens are +  entered in one end and complete expressions are outputted in the other. +  The parser object is accessible as ___Hilfe-&gt;state from Hilfe expressions.</p> + </text></doc> + <docgroup homogen-name='datap' homogen-type='method'><doc><text><p>Returns true if there is any waiting expression that can be fetched +  with <ref resolved='predef::Tools.Hilfe.ParserState.read'>read</ref>.</p> + </text></doc> + <method name='datap'> + <arguments/> + <returntype><int/></returntype> + </method> + </docgroup> + <docgroup homogen-name='feed' homogen-type='method'><doc><text><p>Feed more tokens into the state.</p> + </text></doc> + <method name='feed'> + <arguments><argument name='tokens'><type><array><valuetype><string/></valuetype></array></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='finishedp' homogen-type='method'><doc><text><p>Are we in the middle of an expression. Used e.g. for changing the +  Hilfe prompt when entering multiline expressions.</p> + </text></doc> + <method name='finishedp'> + <arguments/> + <returntype><int><min>0</min><max>1</max></int></returntype> + </method> + </docgroup> + <docgroup homogen-name='flush' homogen-type='method'><doc><text><p>Clear the current state.</p> + </text></doc> + <method name='flush'> + <arguments/> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='push_string' homogen-type='method'><doc><text><p>Sends the input <ref resolved='predef::Tools.Hilfe.ParserState.push_string.line'>line</ref> to <ref resolved='predef::Parser.Pike'>Parser.Pike</ref> for tokenization, +  but keeps a state between each call to handle multiline +  /**/ comments and multiline #"" strings.</p> + </text></doc> + <method name='push_string'> + <arguments><argument name='line'><type><string/></type></argument></arguments> + <returntype><array><valuetype><string/></valuetype></array></returntype> + </method> + </docgroup> + <docgroup homogen-name='read' homogen-type='method'><doc><text><p>Read out completed expressions. Returns an array where every element +  is an expression represented as an array of tokens.</p> + </text></doc> + <method name='read'> + <arguments/> + <returntype><array><valuetype><object resolved='predef::Tools.Hilfe.Expression'>Expression</object></valuetype></array></returntype> + </method> + </docgroup> + <docgroup homogen-name='show_error' homogen-type='method'><doc><text><p>Prints out any error that might have occurred while +  <ref resolved='predef::Tools.Hilfe.ParserState.push_string'>push_string</ref> was executed. The error will be +  printed with the print function <ref resolved='predef::Tools.Hilfe.ParserState.show_error.w'>w</ref>.</p> + </text></doc> + <method name='show_error'> + <arguments><argument name='w'><type><function><argtype><or><array><valuetype><string/></valuetype></array><string/></or></argtype><argtype><varargs><mixed/></varargs></argtype><returntype><int/></returntype></function></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='status' homogen-type='method'><doc><text><p>Returns the current parser state. Used by "dump state".</p> + </text></doc> + <method name='status'> + <arguments/> + <returntype><string/></returntype> + </method> + </docgroup> + </class> + <class name='StdinHilfe'> + <doc><text><p>This is a wrapper containing a user interface to the Hilfe <ref resolved='predef::Tools.Hilfe.Evaluator'>Evaluator</ref> +  so that it can actually be used. This wrapper uses the <ref resolved='predef::Stdio.Readline'>Stdio.Readline</ref> +  module to interface with the user. All input history is handled by +  that module, and as a consequence loading and saving .hilfe_history is +  handled in this class. Also .hilferc is handled by this class.</p> + </text></doc> + <docgroup homogen-name='create' homogen-type='method'><doc><text><p>Any hilfe statements given in the init array will be executed +  once .hilferc has been executed.</p> + </text></doc> + <method name='create'><modifiers><protected/></modifiers> + <arguments><argument name='init'><type><or><void/><array><valuetype><string/></valuetype></array></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='Evaluator' homogen-type='inherit'> + <inherit name='Evaluator'><classname resolved='predef::Tools.Hilfe.Evaluator'>Evaluator</classname></inherit> + </docgroup> + <docgroup homogen-name='readline' homogen-type='variable'><doc><text><p>The readline object,</p> + </text></doc> + <variable name='readline'><type><object resolved='predef::Stdio.Readline'>Stdio.Readline</object></type></variable> + </docgroup> + <docgroup homogen-name='save_history' homogen-type='method'><doc><text><p>Saves the user input history, if possible, when called.</p> + </text></doc> + <method name='save_history'> + <arguments/> + <returntype><void/></returntype> + </method> + </docgroup> + </class> + <class name='SubSysLogger'> + <modifiers><protected/></modifiers> + <class name='Logger'> + <modifiers><protected/></modifiers> + <docgroup homogen-name='create' homogen-type='method'> + <method name='create'><modifiers><protected/></modifiers> + <arguments><argument name='e'><type><object resolved='predef::Tools.Hilfe.Evaluator'>Evaluator</object></type></argument><argument name='logfile'><type><object resolved='predef::Stdio.File'>Stdio.File</object></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-type='variable'> + <variable name='e'><type><object resolved='predef::Tools.Hilfe.Evaluator'>Evaluator</object></type></variable> + <variable name='logfile'><type><object resolved='predef::Stdio.File'>Stdio.File</object></type></variable> + </docgroup> + </class> + </class> + </module>   <module name='Install'>   <doc><text><p>Common routines which are useful for various install scripts based on Pike.</p>   </text></doc>   <docgroup homogen-name='features' homogen-type='method'><doc><text><p>Return an array of enabled features.</p>   </text><group><note/><text><p>Used by the <ref resolved='predef::master'>master</ref> when given the option <tt>--features</tt>.</p>   </text></group><group><seealso/><text><p><ref>Tools.Standalone.features</ref></p>   </text></group></doc>   <method name='features'>   <arguments/>   <returntype><array><valuetype><string/></valuetype></array></returntype>
autodoc.git/modref.xml:134374:   <docgroup homogen-name='make_time' homogen-type='method'><doc><text><p>Creates a <ref resolved='predef::Standards.ASN1.Types.UTC'>Standards.ASN1.Types.UTC</ref> object from the posix    time <ref resolved='predef::Tools.X509.make_time.t'>t</ref>.</p>   </text></doc>   <method name='make_time'>   <arguments><argument name='t'><type><int/></type></argument></arguments>   <returntype><attribute><prefix/><attribute>"deprecated"</attribute><subtype><object resolved='predef::Standards.ASN1.Types.UTC'>UTC</object></subtype></attribute></returntype>   </method>   </docgroup>   <docgroup homogen-name='make_verifier' homogen-type='method'>   <method name='make_verifier'> - <arguments><argument name='_keyinfo'><type><object resolved='predef::Standards.ASN1.Types.Object'>Object</object></type></argument></arguments> + <arguments><argument name='_keyinfo'><type><object resolved='predef::Object'>Object</object></type></argument></arguments>   <returntype><attribute><prefix/><attribute>"deprecated"</attribute><subtype><object>Verifier</object></subtype></attribute></returntype>   </method>   </docgroup>   <docgroup homogen-name='parse_time' homogen-type='method'><doc><text><p>Returns a mapping similar to that returned by gmtime</p>   </text><group><returns/><text><mapping><group><member><type><int/></type><index>"year"</index></member><member><type><int/></type><index>"mon"</index></member><member><type><int/></type><index>"mday"</index></member><member><type><int/></type><index>"hour"</index></member><member><type><int/></type><index>"min"</index></member><member><type><int/></type><index>"sec"</index></member></group></mapping>   </text></group></doc>   <method name='parse_time'>   <arguments><argument name='asn1'><type><object resolved='predef::Standards.ASN1.Types.UTC'>UTC</object></type></argument></arguments>   <returntype><attribute><prefix/><attribute>"deprecated"</attribute><subtype><mapping><indextype><string/></indextype><valuetype><int/></valuetype></mapping></subtype></attribute></returntype>   </method>
autodoc.git/modref.xml:134475:   </docgroup>   <docgroup homogen-name='der' homogen-type='variable'>   <variable name='der'><type><string/></type></variable>   </docgroup>   <docgroup homogen-name='extensions' homogen-type='variable'><doc><group><note/><text><p>optional</p>   </text></group></doc>   <variable name='extensions'><type><object resolved='predef::Tools.X509.TBSCertificate'/></type></variable>   </docgroup>   <docgroup homogen-name='init' homogen-type='method'>   <method name='init'> - <arguments><argument name='asn1'><type><object resolved='predef::Standards.ASN1.Types.Object'>Object</object></type></argument></arguments> + <arguments><argument name='asn1'><type><object resolved='predef::Object'>Object</object></type></argument></arguments>   <returntype><object resolved='predef::Tools.X509.TBSCertificate'>this_program</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='issuer' homogen-type='variable'>   <variable name='issuer'><type><object resolved='predef::Standards.ASN1.Types.Sequence'>Sequence</object></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><object resolved='predef::Standards.ASN1.Types.BitString'>BitString</object></type></variable>   </docgroup>
autodoc.git/modref.xml:135693:   <docgroup homogen-name='get_id' homogen-type='method'><doc><text><p>Returns the <ref resolved='predef::Web.RDF.Resource'>RDF.Resource</ref> that identifies this RSS resource.</p>   </text></doc>   <method name='get_id'>   <arguments/>   <returntype><object resolved='predef::Web.RDF.Resource'>.RDF.Resource</object></returntype>   </method>   </docgroup>   </class>   </module>   </module> + <module name='Yabu'> + <doc><text><p>Yabu is an all purpose transaction database written in pike, used +  to store data records associated with a unique key.</p> + </text></doc> + <class name='DB'> + <doc><text><p>A Yabu database instance</p> + </text></doc> + <docgroup homogen-name='_indices' homogen-type='method'><doc><text><p>Return a list of all tables</p> + </text></doc> + <method name='_indices'><modifiers><protected/></modifiers> + <arguments/> + <returntype><array/></returntype> + </method> + </docgroup> + <docgroup homogen-name='_values' homogen-type='method'><doc><text><p>Return all tables as an array</p> + </text></doc> + <method name='_values'><modifiers><protected/></modifiers> + <arguments/> + <returntype><array/></returntype> + </method> + </docgroup> + <docgroup homogen-name='`[]' homogen-type='method'><doc><text><p>Equivalent to <ref resolved='predef::Yabu.DB.table'>table</ref></p> + </text></doc> + <method name='`[]'><modifiers><protected/></modifiers> + <arguments><argument name='handle'><type><string/></type></argument></arguments> + <returntype><mixed/></returntype> + </method> + </docgroup> + <docgroup homogen-name='ascii_statistics' homogen-type='method'><doc><text><p>Return information about all tables in a human readable format</p> + </text></doc> + <method name='ascii_statistics'> + <arguments/> + <returntype><string/></returntype> + </method> + </docgroup> + <docgroup homogen-name='close' homogen-type='method'><doc><text><p>Close the database.</p> + </text></doc> + <method name='close'> + <arguments/> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='create' homogen-type='method'><doc><text><p>Open a new or existing databse.</p> + <p> The <ref resolved='predef::Yabu.DB.create.dir'>dir</ref> is the directory the database should be stored in. +  It will be created if it does not exist.</p> + <p> Only one database can be in any given directory.</p> + <p> The <ref resolved='predef::Yabu.DB.create.mode'>mode</ref> specifies the operation mode, and +  is a string made up of the desired modes, 'r'=read, 'w'=write +  and 'c'=create.</p> + <p> To open an existing database in read only mode, use "r".</p> + <p> To open an existing database in read/write mode, use "rw".</p> + <p> To create a new database, or open an existing one in read write mode, use "rwc".</p> + </text></doc> + <method name='create'><modifiers><protected/></modifiers> + <arguments><argument name='dir'><type><string/></type></argument><argument name='mode'><type><string/></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='list_tables' homogen-type='method'><doc><text><p>Return a list of all tables in the database</p> + </text></doc> + <method name='list_tables'> + <arguments/> + <returntype><array><valuetype><string/></valuetype></array></returntype> + </method> + </docgroup> + <docgroup homogen-name='purge' homogen-type='method'><doc><text><p>Delete the database.</p> + </text></doc> + <method name='purge'> + <arguments/> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='reorganize' homogen-type='method'><doc><text><p>Call <ref resolved='predef::Yabu.Table.reorganize'>Table.reorganize</ref> in all tables</p> + </text></doc> + <method name='reorganize'> + <arguments><argument name='ratio'><type><or><float/><void/></or></type></argument></arguments> + <returntype><int/></returntype> + </method> + </docgroup> + <docgroup homogen-name='statistics' homogen-type='method'><doc><text><p>Return information about all tables</p> + </text></doc> + <method name='statistics'> + <arguments/> + <returntype><mapping><indextype><string/></indextype><valuetype><int/></valuetype></mapping></returntype> + </method> + </docgroup> + <docgroup homogen-name='sync' homogen-type='method'><doc><text><p>Sync all tables</p> + </text></doc> + <method name='sync'> + <arguments/> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='table' homogen-type='method'><doc><text><p>Return the Table object for the named table</p> + </text></doc> + <method name='table'> + <arguments><argument name='handle'><type><string/></type></argument></arguments> + <returntype><object resolved='predef::Yabu.Table'>Table</object></returntype> + </method> + </docgroup> + </class> + <class name='LookupDB'> + <doc><text><p>This database is optimized for lots of very small data records (a +  few bytes each, usually), but the API is otherwise identical to +  the normal <ref resolved='predef::Yabu.DB'>DB</ref> API.</p> + <p> It will perform badly if used with big records. +  You also need to know in advance aproximately how many keys there +  will be, the performance will degrade if way more than the +  expected number of keys are present.</p> + </text></doc> + <docgroup homogen-name='create' homogen-type='method'><doc><text><p>Construct a new lookup table.</p> + <p> The <ref resolved='predef::Yabu.LookupDB.create.options'>options</ref>, if present, can be used to specify the index +  hash size. The bigger that number is, the less memory will be +  used given a certain number of actual keys. In general, using +  the expected number of entries in the database divided by +  100-1000 is reasonable.</p> + <p> The supported options are</p> + <mapping><group><member><type><int><min>1</min><max/></int></type><index>index_size</index></member></group></mapping> + </text></doc> + <method name='create'><modifiers><protected/></modifiers> + <arguments><argument name='dir'><type><string/></type></argument><argument name='mode'><type><string/></type></argument><argument name='options'><type><or><mapping/><void/></or></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='DB' homogen-type='inherit'> + <inherit name='DB'><classname resolved='predef::Yabu.DB'>DB</classname></inherit> + </docgroup> + </class> + <class name='Table'> + <doc><text><p>The basic Yabu table</p> + </text></doc> + <docgroup homogen-name='_indices' homogen-type='method'><doc><text><p>Equivalent to list_keys()</p> + </text></doc> + <method name='_indices'><modifiers><protected/></modifiers> + <arguments/> + <returntype><array/></returntype> + </method> + </docgroup> + <docgroup homogen-name='_m_delete' homogen-type='method'><doc><text><p>Equivalent to <ref resolved='predef::Yabu.Table.delete'>delete</ref></p> + </text></doc> + <method name='_m_delete'><modifiers><protected/></modifiers> + <arguments><argument name='handle'><type><string/></type></argument></arguments> + <returntype><mixed/></returntype> + </method> + </docgroup> + <docgroup homogen-name='_values' homogen-type='method'><doc><text><p>Fetches all keys from disk</p> + </text></doc> + <method name='_values'><modifiers><protected/></modifiers> + <arguments/> + <returntype><array/></returntype> + </method> + </docgroup> + <docgroup homogen-name='`[]' homogen-type='method'><doc><text><p>Equivalent to <ref resolved='predef::Yabu.Table.get'>get</ref></p> + </text></doc> + <method name='`[]'><modifiers><protected/></modifiers> + <arguments><argument name='handle'><type><string/></type></argument></arguments> + <returntype><mixed/></returntype> + </method> + </docgroup> + <docgroup homogen-name='`[]=' homogen-type='method'><doc><text><p>Equivalent to <ref resolved='predef::Yabu.Table.set'>set</ref></p> + </text></doc> + <method name='`[]='><modifiers><protected/></modifiers> + <arguments><argument name='handle'><type><string/></type></argument><argument name='x'><type><mixed/></type></argument></arguments> + <returntype><mixed/></returntype> + </method> + </docgroup> + <docgroup homogen-name='ascii_statistics' homogen-type='method'><doc><text><p>Return information about all tables in a human redable format</p> + </text></doc> + <method name='ascii_statistics'> + <arguments/> + <returntype><string/></returntype> + </method> + </docgroup> + <docgroup homogen-name='close' homogen-type='method'><doc><text><p>Close the table</p> + </text></doc> + <method name='close'> + <arguments/> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='delete' homogen-type='method'><doc><text><p>Remove a key</p> + </text></doc> + <method name='delete'> + <arguments><argument name='handle'><type><string/></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='get' homogen-type='method'><doc><text><p>Get a key</p> + </text></doc> + <method name='get'> + <arguments><argument name='handle'><type><string/></type></argument></arguments> + <returntype><mixed/></returntype> + </method> + </docgroup> + <docgroup homogen-name='list_keys' homogen-type='method'><doc><text><p>List all keys</p> + </text></doc> + <method name='list_keys'> + <arguments/> + <returntype><array/></returntype> + </method> + </docgroup> + <docgroup homogen-name='purge' homogen-type='method'><doc><text><p>Close and delete the table from disk</p> + </text></doc> + <method name='purge'> + <arguments/> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='reorganize' homogen-type='method'><doc><text><p>Reorganize the on-disk storage, compacting it.</p> + <p> If <ref resolved='predef::Yabu.Table.reorganize.ratio'>ratio</ref> is given it is the lowest ratio of useful/total disk +  usage that is allowed.</p> + <p> As an example, if ratio is 0.7 at lest 70% of the on-disk +  storage must be live data, if not the reoganization is done.</p> + </text></doc> + <method name='reorganize'> + <arguments><argument name='ratio'><type><or><float/><void/></or></type></argument></arguments> + <returntype><int/></returntype> + </method> + </docgroup> + <docgroup homogen-name='set' homogen-type='method'><doc><text><p>Set a key</p> + </text></doc> + <method name='set'> + <arguments><argument name='handle'><type><string/></type></argument><argument name='x'><type><mixed/></type></argument></arguments> + <returntype><mixed/></returntype> + </method> + </docgroup> + <docgroup homogen-name='statistics' homogen-type='method'><doc><text><p>Return information about the table.</p> + <mapping><group><member><type><int/></type><index>"keys"</index></member><text><p>The number of keys</p> + </text></group><group><member><type><int/></type><index>"size"</index></member><text><p>The on-disk space, in bytes</p> + </text></group><group><member><type><int/></type><index>used</index></member></group></mapping> + </text></doc> + <method name='statistics'> + <arguments/> + <returntype><mapping><indextype><string/></indextype><valuetype><or><string/><int/></or></valuetype></mapping></returntype> + </method> + </docgroup> + <docgroup homogen-name='sync' homogen-type='method'><doc><text><p>Synchronize. Usually done automatically</p> + </text></doc> + <method name='sync'> + <arguments/> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='transaction' homogen-type='method'><doc><text><p>Start a new transaction.</p> + </text></doc> + <method name='transaction'> + <arguments/> + <returntype><object resolved='predef::Yabu.Transaction'>Transaction</object></returntype> + </method> + </docgroup> + </class> + <class name='Transaction'> + <doc><text><p>A transaction. Created by calling transaction() in the table object.</p> + <p> It provides the same functions the table does, in addition to +  <ref resolved='predef::Yabu.Transaction.commit'>commit</ref> and <ref resolved='predef::Yabu.Transaction.rollback'>rollback</ref>. Changes done using the transaction +  object will not be in the actual table <ref resolved='predef::Yabu.Transaction.commit'>commit</ref> is called in the +  transaction.</p> + </text></doc> + <docgroup homogen-name='_indices' homogen-type='method'><doc><text><p>Identical to list_keys();</p> + </text></doc> + <method name='_indices'><modifiers><protected/></modifiers> + <arguments/> + <returntype><array/></returntype> + </method> + </docgroup> + <docgroup homogen-name='_m_delete' homogen-type='method'><doc><text><p>Identical to <ref resolved='predef::Yabu.Transaction.delete'>delete</ref></p> + </text></doc> + <method name='_m_delete'><modifiers><protected/></modifiers> + <arguments><argument name='handle'><type><string/></type></argument></arguments> + <returntype><mixed/></returntype> + </method> + </docgroup> + <docgroup homogen-name='_values' homogen-type='method'><doc><text><p>Identical to get(list_keys()][*]);</p> + </text></doc> + <method name='_values'><modifiers><protected/></modifiers> + <arguments/> + <returntype><array/></returntype> + </method> + </docgroup> + <docgroup homogen-name='`[]' homogen-type='method'><doc><text><p>Identical to get</p> + </text></doc> + <method name='`[]'><modifiers><protected/></modifiers> + <arguments><argument name='handle'><type><string/></type></argument></arguments> + <returntype><mixed/></returntype> + </method> + </docgroup> + <docgroup homogen-name='`[]=' homogen-type='method'><doc><text><p>Identical to set</p> + </text></doc> + <method name='`[]='><modifiers><protected/></modifiers> + <arguments><argument name='handle'><type><string/></type></argument><argument name='x'><type><mixed/></type></argument></arguments> + <returntype><mixed/></returntype> + </method> + </docgroup> + <docgroup homogen-name='commit' homogen-type='method'><doc><text><p>Commit all changes done so far in the transaction to the table</p> + </text></doc> + <method name='commit'> + <arguments/> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='delete' homogen-type='method'><doc><text><p>Delete <ref resolved='predef::Yabu.Transaction.delete.handle'>handle</ref> from the database</p> + </text></doc> + <method name='delete'> + <arguments><argument name='handle'><type><string/></type></argument></arguments> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='get' homogen-type='method'><doc><text><p>Get the value of <ref resolved='predef::Yabu.Transaction.get.handle'>handle</ref></p> + </text></doc> + <method name='get'> + <arguments><argument name='handle'><type><string/></type></argument></arguments> + <returntype><mixed/></returntype> + </method> + </docgroup> + <docgroup homogen-name='list_keys' homogen-type='method'><doc><text><p>List all keys</p> + </text></doc> + <method name='list_keys'> + <arguments/> + <returntype><array/></returntype> + </method> + </docgroup> + <docgroup homogen-name='rollback' homogen-type='method'><doc><text><p>Undo all changes done so far in the transaction to the table</p> + </text></doc> + <method name='rollback'> + <arguments/> + <returntype><void/></returntype> + </method> + </docgroup> + <docgroup homogen-name='set' homogen-type='method'><doc><text><p>Set <ref resolved='predef::Yabu.Transaction.set.handle'>handle</ref> to x</p> + </text></doc> + <method name='set'> + <arguments><argument name='handle'><type><string/></type></argument><argument name='x'><type><mixed/></type></argument></arguments> + <returntype><mixed/></returntype> + </method> + </docgroup> + </class> + </module>   <module name='Yp'>   <doc><text><p>This module is an interface to the Yellow Pages functions. Yp is also    known as NIS (Network Information System) and is most commonly used to    distribute passwords and similar information within a network.</p>   </text></doc>   <docgroup homogen-name='default_domain' homogen-type='method'><doc><text><p>Returns the default yp-domain.</p>   </text></doc>   <method name='default_domain'>   <arguments/>   <returntype><string/></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;___Yp&quot;' homogen-type='inherit'> - <inherit name='&quot;___Yp&quot;'><classname>"___Yp"</classname></inherit> + <docgroup homogen-name='"___Yp"' homogen-type='inherit'> + <inherit name='"___Yp"'><classname>"___Yp"</classname></inherit>   </docgroup>   <class name='Domain'>   <docgroup homogen-name='all' homogen-type='method'><doc><text><p>Returns the whole map as a mapping.</p>   <p> <ref resolved='predef::Yp.Domain.all.map'>map</ref> is the YP-map to search in. This must be the full map name,    you have to use <tt>passwd.byname</tt> instead of just <tt>passwd</tt>.</p>   </text></doc>   <method name='all'>   <arguments><argument name='map'><type><string/></type></argument></arguments>   <returntype><mapping><indextype><string/></indextype><valuetype><string/></valuetype></mapping></returntype>   </method>
autodoc.git/modref.xml:135965:   <docgroup homogen-name='Session' homogen-type='inherit'>   <inherit name='Session'><classname>Configuration::Session</classname></inherit>   </docgroup>   <docgroup homogen-name='session_id' homogen-type='variable'><doc><text><p>Session id (if any).</p>   </text></doc>   <variable name='session_id'><type><string><min>0</min><max>255</max></string></type></variable>   </docgroup>   </class>   </class>   </module> + <module name='_Charset'> + <doc><text><p>Low-level tables and code for the <ref resolved='predef::Charset'>Charset</ref> module.</p> + <p> This is probably not the module you want; try the <ref resolved='predef::Charset'>Charset</ref> module.</p> + </text><group><seealso/><text><p><ref resolved='predef::Charset'>Charset</ref></p> + </text></group></doc> + <docgroup homogen-name='rfc1345' homogen-type='method'><doc><text><p>Low-level charset codec factory.</p> + </text><group><param name='charset'/><text><p>Canonical name of character set to look up.</p> + </text></group><group><param name='encoder'/><text><p>Flag indicating that an encoder and not a decoder is wanted.</p> + </text></group><group><param name='rep'/><text><p>String to use for characters not representable in the <ref resolved='predef::_Charset.rfc1345.charset'>charset</ref>. +  Only used for encoders.</p> + </text></group><group><param name='repcb'/><text><p>Function to call for characters not representable in the <ref resolved='predef::_Charset.rfc1345.charset'>charset</ref>. +  Only used for encoders.</p> + <p> This is the main entrypoint into the low-level <ref resolved='predef::_Charset'>_Charset</ref> module.</p> + </text></group><group><returns/><text><p>Returns a suitable encoder or decoder on success and <expr>0</expr> +  (zero) on failure.</p> + </text></group><group><seealso/><text><p><ref resolved='predef::Charset.encoder'>Charset.encoder()</ref>, <ref resolved='predef::Charset.decoder'>Charset.decoder()</ref></p> + </text></group></doc> + <method name='rfc1345'> + <arguments><argument name='charset'><type><string/></type></argument><argument name='encoder'><type><or><int><min>0</min><max>1</max></int><void/></or></type></argument><argument name='rep'><type><or><string/><void/></or></type></argument><argument name='repcb'><type><or><function><argtype><string/></argtype><returntype><string/></returntype></function><void/></or></type></argument></arguments> + <returntype><object resolved='predef::_Charset.rfc1345'/></returntype> + </method> + </docgroup> + </module>   <module name='_Ffmpeg'>   <docgroup homogen-type='constant'><doc><text><p>Various audio and video codecs.</p>   </text><group><note/><text><p>The list of supported codecs depends on Ffmpeg library.</p>   </text></group></doc>   <constant name='CODEC_ID_NONE'/>   <constant name='CODEC_ID_AC3'/>   <constant name='CODEC_ID_ADPCM_IMA_QT'/>   <constant name='CODEC_ID_ADPCM_IMA_WAV'/>   <constant name='CODEC_ID_ADPCM_MS'/>   <constant name='CODEC_ID_H263'/>
autodoc.git/modref.xml:136081:   </method>   </docgroup>   </class>   </module>      <module name='_Image_JPEG'>      <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;____Image_JPEG&quot;' homogen-type='inherit'> - <inherit name='&quot;____Image_JPEG&quot;'><classname>"____Image_JPEG"</classname></inherit> + <docgroup homogen-name='"____Image_JPEG"' homogen-type='inherit'> + <inherit name='"____Image_JPEG"'><classname>"____Image_JPEG"</classname></inherit>   </docgroup>   </module>                  <module name='_Regexp_PCRE'>   <docgroup homogen-name='`()' homogen-type='method'><doc><text><p>Convenience function to create a suitable PCRE Regexp object;    will create a StudiedWidestring from the arguments.</p>
autodoc.git/modref.xml:136110:    checking that the Regexp.PCRE.Widestring class exist.</p>   </text></doc>   <method name='`()'>   <arguments><argument name='pattern'><type><string/></type></argument><argument name='options'><type><or><void/><int/></or></type></argument><argument name='table'><type><or><void/><object resolved='predef::_Regexp_PCRE.`()'/></or></type></argument></arguments>   <returntype><object>GOOD</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='' homogen-type='import'>   <import name=''><classname resolved='predef::'>predef::</classname></import>   </docgroup> - <docgroup homogen-name='&quot;____Regexp_PCRE&quot;' homogen-type='inherit'> - <inherit name='&quot;____Regexp_PCRE&quot;'><classname>"____Regexp_PCRE"</classname></inherit> + <docgroup homogen-name='"____Regexp_PCRE"' homogen-type='inherit'> + <inherit name='"____Regexp_PCRE"'><classname>"____Regexp_PCRE"</classname></inherit>   </docgroup>      <class name='Studied'>   <doc><text><p>Same as Plain,    but will be studied to match faster; useful if you're doing    many matches on the same pattern</p>   </text></doc>   <docgroup homogen-name='Plain' homogen-type='inherit'>   <inherit name='Plain'><classname>Plain</classname></inherit>   </docgroup>