autodoc.git / autodoc.xml

version» Context lines:

autodoc.git/autodoc.xml:1887:   <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/autodoc.xml:6754:   </text></group><group><returns/><text><p>Returns <ref resolved='predef::__handle_sprintf_format.cont_type'>cont_type</ref> with <expr>"sprintf_args"</expr> replaced by the    arguments required by the <ref resolved='predef::__handle_sprintf_format.fmt'>fmt</ref> formatting string, and    <expr>"sprintf_result"</expr> replaced by the resulting string type.</p>   </text></group><group><seealso/><text><p><ref>PikeCompiler()-&gt;apply_attribute_constant()</ref>, <ref resolved='predef::sprintf'>sprintf()</ref></p>   </text></group></doc>   <method name='__handle_sprintf_format'>   <arguments><argument name='attr'><type><string/></type></argument><argument name='fmt'><type><string/></type></argument><argument name='arg_type'><type><type><mixed/></type></type></argument><argument name='cont_type'><type><type><mixed/></type></type></argument></arguments>   <returntype><type><mixed/></type></returntype>   </method>   </docgroup> - <docgroup homogen-name='__null_program' homogen-type='constant'><doc><text><p>Program used internally by the compiler to create objects -  that are later modified into instances of the compiled program -  by the compiler.</p> - </text><group><seealso/><text><p><ref resolved='predef::.__placeholder_object'>__placeholder_object</ref></p> - </text></group></doc> - <constant name='__null_program'/> - </docgroup> +    <docgroup homogen-name='__parse_pike_type' homogen-type='method'>   <method name='__parse_pike_type'>   <arguments><argument name='t'><type><string><min>0</min><max>255</max></string></type></argument></arguments>   <returntype><string><min>0</min><max>255</max></string></returntype>   </method>   </docgroup> - <docgroup homogen-name='__placeholder_object' homogen-type='constant'><doc><text><p>Object used internally by the compiler.</p> - </text><group><seealso/><text><p><ref resolved='predef::.__null_program'>__null_program</ref></p> - </text></group></doc> - <constant name='__placeholder_object'/> - </docgroup> +    <docgroup homogen-name='_disable_threads' homogen-type='method'><doc><text><p>This function first posts a notice to all threads that it is time    to halt. It then waits until all threads actually <b>have</b> halted,    and then then returns a lock object. All other threads will be    blocked from running until that object has been freed/destroyed.</p>   <p> It's mainly useful to do things that require a temporary uid/gid    change, since on many OSes the effective user and group apply to    all threads.</p>   </text><group><note/><text><p>You should make sure that the returned object is freed even if    some kind of error is thrown. That means in practice that it    should only have references (direct or indirect) from function
autodoc.git/autodoc.xml:8267:   </text></group></doc>   <method name='allocate'>   <arguments><argument name='size'><type><int/></type></argument></arguments>   <returntype><array/></returntype>   </method>   <method name='allocate'>   <arguments><argument name='size'><type><int/></type></argument><argument name='init'><type><mixed/></type></argument></arguments>   <returntype><array/></returntype>   </method>   </docgroup> + <docgroup homogen-name='annotations' homogen-type='method'><doc><text><p>Return an array with the annotations for all symbols in <ref resolved='predef::annotations.x'>x</ref>.</p> + </text><group><param name='x'/><text><mixed><group><type><object resolved='predef::annotations'/></type><text><p>For objects which define <ref>lfun::_annotations()</ref> that return value +  is used.</p> + <p> For other objects an array with annotations for all non-protected +  symbols is returned.</p> + </text></group><group><type><program/></type><text><p>Returns an array with annotations for all non-protected symbols.</p> + </text></group></mixed> + </text></group><group><param name='recurse'/><text><p>Include annotations recursively added via inherits.</p> + </text></group><group><note/><text><p>This function was added in Pike 8.1.</p> + </text></group><group><seealso/><text><p><ref resolved='predef::indices'>indices()</ref>, <ref resolved='predef::values'>values()</ref>, <ref resolved='predef::types'>types()</ref></p> + </text></group></doc> + <method name='annotations'> + <arguments><argument name='x'><type><or><object resolved='predef::annotations'/><program/><function/></or></type></argument><argument name='recurse'><type><or><int><min>0</min><max>1</max></int><void/></or></type></argument></arguments> + <returntype><array><valuetype><array><valuetype><object>Pike.Annotation</object></valuetype></array></valuetype></array></returntype> + </method> + </docgroup>   <docgroup homogen-name='array_sscanf' homogen-type='method'><doc><text><p>This function works just like <ref resolved='predef::sscanf'>sscanf()</ref>, but returns the matched    results in an array instead of assigning them to lvalues. This is often    useful for user-defined sscanf strings.</p>   </text><group><seealso/><text><p><ref resolved='predef::sscanf'>sscanf()</ref>, <ref resolved='predef::`/'>`/()</ref></p>   </text></group></doc>   <method name='array_sscanf'>   <arguments><argument name='data'><type><string/></type></argument><argument name='format'><type><string/></type></argument></arguments>   <returntype><array/></returntype>   </method>   </docgroup>
autodoc.git/autodoc.xml:8475:    error handler. If it is not specified the current master object will    be used.</p>   <p> The optional arguments <ref resolved='predef::compile.major'>major</ref> and <ref resolved='predef::compile.minor'>minor</ref> are used to tell the    compiler to attempt to be compatible with Pike <ref resolved='predef::compile.major'>major</ref>.<ref resolved='predef::compile.minor'>minor</ref>.</p>   </text><group><note/><text><p>Note that <ref resolved='predef::compile.source'>source</ref> must contain the complete source for a program.    It is not possible to compile a single expression or statement.</p>   <p> Also note that <ref resolved='predef::compile'>compile()</ref> does not preprocess the program.    To preprocess the program you can use <ref resolved='predef::compile_string'>compile_string()</ref> or    call the preprocessor manually by calling <ref resolved='predef::cpp'>cpp()</ref>.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::compile_string'>compile_string()</ref>, <ref resolved='predef::compile_file'>compile_file()</ref>, <ref resolved='predef::cpp'>cpp()</ref>, <ref resolved='predef::master'>master()</ref>, -  <ref resolved='predef::CompilationHandler'>CompilationHandler</ref>, <ref resolved='predef::DefaultCompilerEnvironment'>DefaultCompilerEnvironment</ref></p> +  <ref resolved='predef::CompilationHandler'>CompilationHandler</ref>, <ref>DefaultCompilerEnvironment</ref></p>   </text></group></doc>   <method name='compile'>   <arguments><argument name='source'><type><string/></type></argument><argument name='handler'><type><or><object resolved='predef::CompilationHandler'>CompilationHandler</object><void/></or></type></argument><argument name='major'><type><or><int/><void/></or></type></argument><argument name='minor'><type><or><int/><void/></or></type></argument><argument name='target'><type><or><program/><void/></or></type></argument><argument name='placeholder'><type><or><object resolved='predef::compile'/><void/></or></type></argument></arguments>   <returntype><program/></returntype>   </method>   </docgroup>   <docgroup homogen-name='compile_file' homogen-type='method'><doc><text><p>Compile the Pike code contained in the file <ref resolved='predef::compile_file.filename'>filename</ref> into a program.</p>   <p> This function will compile the file <ref resolved='predef::compile_file.filename'>filename</ref> to a Pike program that can    later be instantiated. It is the same as doing    <expr><ref resolved='predef::compile_string'>compile_string</ref>(<ref resolved='predef::Stdio.read_file'>Stdio.read_file</ref>(<ref resolved='predef::compile_file.filename'>filename</ref>), <ref resolved='predef::compile_file.filename'>filename</ref>)</expr>.</p>
autodoc.git/autodoc.xml:9103:   </method>   </docgroup>   <docgroup homogen-name='get_active_compiler' homogen-type='method'><doc><text><p>Returns the most recent of the currently active pike compilers,    or <ref resolved='predef::.UNDEFINED'>UNDEFINED</ref> if none is active.</p>   </text><group><note/><text><p>This function should only be used during a call of <ref resolved='predef::compile'>compile()</ref>.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::get_active_error_handler'>get_active_error_handler()</ref>, <ref resolved='predef::compile'>compile()</ref>,    <ref>master()-&gt;get_compilation_handler()</ref>, <ref resolved='predef::CompilationHandler'>CompilationHandler</ref></p>   </text></group></doc>   <method name='get_active_compiler'>   <arguments/> - <returntype><object resolved='predef::CompilerEnvironment.PikeCompiler'>CompilerEnvironment.PikeCompiler</object></returntype> + <returntype><object>CompilerEnvironment.PikeCompiler</object></returntype>   </method>   </docgroup>   <docgroup homogen-name='get_active_error_handler' homogen-type='method'><doc><text><p>Returns the currently active compilation error handler    (second argument to <ref resolved='predef::compile'>compile()</ref>), or <tt>0</tt> (zero) if none    is active.</p>   </text><group><note/><text><p>This function should only be used during a call of <ref resolved='predef::compile'>compile()</ref>.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::get_active_compilation_handler'>get_active_compilation_handler()</ref>, <ref resolved='predef::compile'>compile()</ref>, <ref resolved='predef::CompilationHandler'>CompilationHandler</ref></p>   </text></group></doc>   <method name='get_active_error_handler'>   <arguments/>
autodoc.git/autodoc.xml:21511:   </text></group><group><seealso/><text><p><ref resolved='predef::CompilationHandler.get_predefines'>get_predefines()</ref></p>   </text></group></doc>   <method name='resolv'>   <arguments><argument name='symbol'><type><string/></type></argument><argument name='filename'><type><string/></type></argument><argument name='handler'><type><object resolved='predef::CompilationHandler'>CompilationHandler</object></type></argument></arguments>   <returntype><mixed/></returntype>   </method>   </docgroup>   </class>   <class name='CompilerEnvironment'>   <modifiers><protected/></modifiers> - <doc><text><p>The compiler environment.</p> - <p> By inheriting this class and overloading the functions, -  it is possible to make a custom Pike compiler.</p> - </text><group><note/><text><p>Prior to Pike 7.8 this sort of customization has to be done -  either via custom master objects, or via <ref resolved='predef::CompilationHandler'>CompilationHandler</ref>s.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::CompilationHandler'>CompilationHandler</ref>, <ref resolved='predef::MasterObject'>MasterObject</ref>, <ref resolved='predef::master'>master()</ref>, <ref resolved='predef::replace_master'>replace_master()</ref></p> - </text></group></doc> - <docgroup homogen-name='compile' homogen-type='method'><doc><text><p>Compile a string to a program.</p> - <p> This function takes a piece of Pike code as a string and -  compiles it into a clonable program.</p> - <p> The optional argument <ref resolved='predef::CompilerEnvironment.compile.handler'>handler</ref> is used to specify an alternative -  error handler. If it is not specified the current master object will -  be used.</p> - <p> The optional arguments <ref resolved='predef::CompilerEnvironment.compile.major'>major</ref> and <ref resolved='predef::CompilerEnvironment.compile.minor'>minor</ref> are used to tell the -  compiler to attempt to be compatible with Pike <ref resolved='predef::CompilerEnvironment.compile.major'>major</ref>.<ref resolved='predef::CompilerEnvironment.compile.minor'>minor</ref>.</p> - </text><group><note/><text><p>This function essentially performs</p> - <code><text><p>program compile(mixed ... args) -  { -  return PikeCompiler(@args)-&gt;compile(); -  }</p> - </text></code> - </text></group><group><note/><text><p>Note that <ref resolved='predef::CompilerEnvironment.compile.source'>source</ref> must contain the complete source for a program. -  It is not possible to compile a single expression or statement.</p> - <p> Also note that <ref resolved='predef::CompilerEnvironment.compile'>compile()</ref> does not preprocess the program. -  To preprocess the program you can use <ref resolved='predef::compile_string'>compile_string()</ref> or -  call the preprocessor manually by calling <ref resolved='predef::cpp'>cpp()</ref>.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::compile_string'>compile_string()</ref>, <ref resolved='predef::compile_file'>compile_file()</ref>, <ref resolved='predef::cpp'>cpp()</ref>, <ref resolved='predef::master'>master()</ref>, -  <ref resolved='predef::CompilationHandler'>CompilationHandler</ref></p> - </text></group></doc> - <method name='compile'> - <arguments><argument name='source'><type><string/></type></argument><argument name='handler'><type><or><object resolved='predef::CompilationHandler'>CompilationHandler</object><void/></or></type></argument><argument name='major'><type><or><int/><void/></or></type></argument><argument name='minor'><type><or><int/><void/></or></type></argument><argument name='target'><type><or><program/><void/></or></type></argument><argument name='placeholder'><type><or><object resolved='predef::CompilerEnvironment.compile'/><void/></or></type></argument></arguments> - <returntype><program/></returntype> - </method> - </docgroup> - <docgroup homogen-name='get_compilation_handler' homogen-type='method'><doc><text><p>Get compatibility handler for Pike <ref resolved='predef::CompilerEnvironment.get_compilation_handler.major'>major</ref>.<ref resolved='predef::CompilerEnvironment.get_compilation_handler.minor'>minor</ref>.</p> - <p> The default implementation calls the corresponding -  function in the master object.</p> - </text><group><note/><text><p>This function is typically called by -  <ref resolved='predef::CompilerEnvironment.PikeCompiler.get_compilation_handler'>PikeCompiler()-&gt;get_compilation_handler()</ref>.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::MasterObject.get_compilation_handler'>MasterObject()-&gt;get_compilation_handler()</ref>.</p> - </text></group></doc> - <method name='get_compilation_handler'> - <arguments><argument name='major'><type><int/></type></argument><argument name='minor'><type><int/></type></argument></arguments> - <returntype><object resolved='predef::CompilerEnvironment.get_compilation_handler'/></returntype> - </method> - </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></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_import' homogen-type='method'><doc><text><p>Look up an import <ref resolved='predef::CompilerEnvironment.handle_import.module'>module</ref>.</p> - <p> The default implementation calls the corresponding function -  in the master object.</p> - </text><group><seealso/><text><p><ref resolved='predef::CompilationHandler.handle_import'>MasterObject()-&gt;handle_import()</ref>.</p> - </text></group></doc> - <method name='handle_import'> - <arguments><argument name='module'><type><string/></type></argument><argument name='current_file'><type><string/></type></argument><argument name='handler'><type><or><object resolved='predef::CompilerEnvironment.handle_import'/><void/></or></type></argument></arguments> - <returntype><program/></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> - </text></group></doc> - <method name='handle_inherit'> - <arguments><argument name='inh'><type><string/></type></argument><argument name='current_file'><type><string/></type></argument><argument name='handler'><type><or><object resolved='predef::CompilerEnvironment.handle_inherit'/><void/></or></type></argument></arguments> - <returntype><program/></returntype> - </method> - </docgroup> +    <docgroup homogen-name='OrigCompilerEnvironment' homogen-type='inherit'>   <inherit name='OrigCompilerEnvironment'><classname resolved='predef::CompilerEnvironment'>predef::CompilerEnvironment</classname></inherit>   </docgroup> - <docgroup homogen-name='Reporter' homogen-type='inherit'><doc><text><p>Implements the <ref resolved='predef::Reporter'>Reporter</ref> API.</p> - </text><group><seealso/><text><p><ref resolved='predef::Reporter.report'>Reporter()-&gt;report()</ref>, <ref resolved='predef::Reporter.SeverityLevel'>Reporter()-&gt;SeverityLevel</ref></p> - </text></group></doc> - <inherit name='Reporter'><classname resolved='predef::Reporter'>Reporter</classname></inherit> - </docgroup> - <docgroup homogen-name='resolv' homogen-type='method'><doc><text><p>Look up <ref resolved='predef::CompilerEnvironment.resolv.identifier'>identifier</ref> in the current context.</p> - <p> The default implementation calls the corresponding -  function in the handlers (if any), falling back to -  the master object.</p> - </text><group><returns/><text><p>Returns the value of the <ref resolved='predef::CompilerEnvironment.resolv.identifier'>identifier</ref> if found, and -  <ref resolved='predef::.UNDEFINED'>UNDEFINED</ref> if not.</p> - </text></group></doc> - <method name='resolv'> - <arguments><argument name='identifier'><type><string/></type></argument><argument name='filename'><type><string/></type></argument><argument name='handler'><type><or><object resolved='predef::CompilerEnvironment.resolv'/><void/></or></type></argument><argument name='compat_handler'><type><or><object resolved='predef::CompilerEnvironment.resolv'/><void/></or></type></argument></arguments> - <returntype><mixed/></returntype> - </method> - </docgroup> +    <class name='CPP'>   <doc><text><p>The state for an instance of the preprocessor.</p>   </text><group><seealso/><text><p><ref resolved='predef::cpp'>predef::cpp()</ref></p>   </text></group></doc>   <docgroup homogen-name='change_cpp_compatibility' homogen-type='method'><doc><text><p>Change the pike compatibility level for this preprocessor    to the specified version of Pike.</p>   </text><group><param name='major'/><text><p>Major version of Pike to attempt to be compatible with.    Specifying a major version of <expr>-1</expr> is a short hand    for specifying <ref resolved='cpp::.__REAL_MAJOR__'>__REAL_MAJOR__</ref> and <ref resolved='cpp::.__REAL_MINOR__'>__REAL_MINOR__</ref>.</p>   </text></group><group><param name='minor'/><text><p>Minor version of Pike to attempt to be compatible with.</p>
autodoc.git/autodoc.xml:21681:    <expr>#foo_ifdef COND</expr> and <expr>foo___LINE__</expr> would be    processed, <expr>#ifdef COND</expr> and <expr>__LINE__</expr> would not.</p>   </text></group><group><member><type><mapping><indextype><string/></indextype><valuetype><mixed/></valuetype></mapping></type><index>"predefines"</index></member><text><p>Mapping of predefined macros in addition to those    returned by <ref resolved='predef::CompilerEnvironment.CPP.get_predefines'>CPP()-&gt;get_predefines()</ref>.</p>   </text></group></mapping>   </text></group><group><param name='current_file'/><text><p>If the <ref resolved='predef::CompilerEnvironment.CPP.create.current_file'>current_file</ref> argument has not been specified,    it will default to <expr>"-"</expr>.</p>   </text></group><group><param name='charset'/><text><p>Turn on automatic character set detection if <expr>1</expr>, otherwise    specifies the character set used by the input.    Defaults to <expr>"ISO-10646"</expr>.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::CompilerEnvironment.compile'>compile()</ref></p> + </text></group><group><seealso/><text><p><ref resolved='predef::compile'>compile()</ref></p>   </text></group></doc>   <method name='create'>   <arguments><argument name='current_file'><type><or><string/><void/></or></type></argument><argument name='charset'><type><or><int/><string/><void/></or></type></argument><argument name='handler'><type><or><object resolved='predef::CompilerEnvironment.CPP.create'/><void/></or></type></argument><argument name='compat_major'><type><or><void/><int/></or></type></argument><argument name='compat_minor'><type><or><void/><int/></or></type></argument><argument name='picky_cpp'><type><or><void/><int/></or></type></argument></arguments>   <returntype><void/></returntype>   </method>   <method name='create'>   <arguments><argument name='options'><type><mapping><indextype><string/></indextype><valuetype><mixed/></valuetype></mapping></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>
autodoc.git/autodoc.xml:21798:   </method>   </docgroup>   <docgroup homogen-name='report' homogen-type='method'><doc><text><p>Report a diagnostic from the preprocessor.</p>   </text><group><param name='severity'/><text><p>The severity of the diagnostic.</p>   </text></group><group><param name='filename'/><param name='linenumber'/><text><p>Location which triggered the diagnostic.</p>   </text></group><group><param name='subsystem'/><text><p>Typically <expr>"cpp"</expr>.</p>   </text></group><group><param name='message'/><text><p>String with the diagnostic message, with optional    <ref resolved='predef::sprintf'>sprintf()</ref>-style formatting (if any <ref resolved='predef::CompilerEnvironment.CPP.report.extra_args'>extra_args</ref>).</p>   </text></group><group><param name='extra_args'/><text><p>Extra arguments to <ref resolved='predef::sprintf'>sprintf()</ref>.</p>   <p> The default implementation does the following:</p> - <ul><group><item/><text><p>If there's a handler which implements <ref resolved='predef::Reporter.report'>Reporter()-&gt;report()</ref>, + <ul><group><item/><text><p>If there's a handler which implements <ref>Reporter()-&gt;report()</ref>,    call it with the same arguments.</p>   </text></group><group><item/><text><p>Otherwise if there's a handler which implements    <ref>compile_warning()</ref> or <ref>compile_error()</ref> that matches    <ref resolved='predef::CompilerEnvironment.CPP.report.severity'>severity</ref>, call it with suitable arguments.</p>   </text></group><group><item/><text><p>Otherwise if there's a compat handler, use it in the same    manner as the handler.</p> - </text></group><group><item/><text><p>Otherwise fall back to calling <ref resolved='predef::Reporter.report'>::report()</ref> with the + </text></group><group><item/><text><p>Otherwise fall back to calling <ref>::report()</ref> with the    same arguments.</p>   </text></group></ul>   </text></group><group><note/><text><p>In Pike 8.0 and earlier <ref>MasterObject()-&gt;report()</ref> was not called.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::Reporter.report'>Reporter()-&gt;report()</ref></p> + </text></group><group><seealso/><text><p><ref>Reporter()-&gt;report()</ref></p>   </text></group></doc>   <method name='report'> - <arguments><argument name='severity'><type><object resolved='predef::Reporter.SeverityLevel'>SeverityLevel</object></type></argument><argument name='filename'><type><string/></type></argument><argument name='linenumber'><type><int><min>1</min><max/></int></type></argument><argument name='subsystem'><type><string/></type></argument><argument name='message'><type><object resolved='predef::.sprintf_format'>sprintf_format</object></type></argument><argument name='extra_args'><type><varargs><object resolved='predef::.sprintf_args'>sprintf_args</object></varargs></type></argument></arguments> + <arguments><argument name='severity'><type><object>SeverityLevel</object></type></argument><argument name='filename'><type><string/></type></argument><argument name='linenumber'><type><int><min>1</min><max/></int></type></argument><argument name='subsystem'><type><string/></type></argument><argument name='message'><type><object resolved='predef::.sprintf_format'>sprintf_format</object></type></argument><argument name='extra_args'><type><varargs><object resolved='predef::.sprintf_args'>sprintf_args</object></varargs></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='report' homogen-type='method'><doc><text><p>Report a diagnostic from the preprocessor.</p>   </text><group><param name='severity'/><text><p>The severity of the diagnostic.</p>   </text></group><group><param name='filename'/><param name='linenumber'/><text><p>Location which triggered the diagnostic.</p>   </text></group><group><param name='subsystem'/><text><p>Always <expr>"cpp"</expr>.</p>   </text></group><group><param name='message'/><text><p>String with the diagnostic message, with optional    <ref resolved='predef::sprintf'>sprintf()</ref>-style formatting (if any <ref resolved='predef::CompilerEnvironment.CPP.report.extra_args'>extra_args</ref>).</p>   </text></group><group><param name='extra_args'/><text><p>Extra arguments to <ref resolved='predef::sprintf'>sprintf()</ref>.</p>   <p> The default implementation just calls    <ref>CompilerEnviroment::report()</ref> in the parent with the    same arguments.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::Reporter.report'>Reporter()-&gt;report()</ref>, <ref resolved='predef::CompilerEnvironment.CPP.cpp_error'>cpp_error()</ref></p> + </text></group><group><seealso/><text><p><ref>Reporter()-&gt;report()</ref>, <ref resolved='predef::CompilerEnvironment.CPP.cpp_error'>cpp_error()</ref></p>   </text></group></doc>   <method name='report'> - <arguments><argument name='severity'><type><object resolved='predef::Reporter.SeverityLevel'>SeverityLevel</object></type></argument><argument name='filename'><type><string/></type></argument><argument name='linenumber'><type><int><min>1</min><max/></int></type></argument><argument name='subsystem'><type><string/></type></argument><argument name='message'><type><string/></type></argument><argument name='extra_args'><type><varargs><mixed/></varargs></type></argument></arguments> + <arguments><argument name='severity'><type><object>SeverityLevel</object></type></argument><argument name='filename'><type><string/></type></argument><argument name='linenumber'><type><int><min>1</min><max/></int></type></argument><argument name='subsystem'><type><string/></type></argument><argument name='message'><type><string/></type></argument><argument name='extra_args'><type><varargs><mixed/></varargs></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   <docgroup homogen-name='resolv' homogen-type='method'><doc><text><p>Attempt to resolve a symbol.</p> - <p> The default implementation calls <ref resolved='predef::CompilerEnvironment.resolv'>CompilerEnvironment()-&gt;resolv()</ref> + <p> The default implementation calls <ref>CompilerEnvironment()-&gt;resolv()</ref>    in the parent object, with the remaining arguments taken from the    current <ref resolved='predef::CompilerEnvironment.CPP'>CPP</ref> context.</p>   </text><group><returns/><text><p>Returns the value of <ref resolved='predef::CompilerEnvironment.CPP.resolv.sym'>sym</ref> if found, and <ref resolved='predef::.UNDEFINED'>UNDEFINED</ref> if not.</p>   </text></group></doc>   <method name='resolv'>   <arguments><argument name='sym'><type><string/></type></argument></arguments>   <returntype><mixed/></returntype>   </method>   </docgroup>   </class> - <class name='PikeCompiler'> - <doc><text><p>The Pike compiler.</p> - <p> An object of this class compiles a single string -  of Pike code.</p> - </text></doc> - <docgroup homogen-name='apply_attribute_constant' homogen-type='method'><doc><text><p>Handle constant arguments to attributed function argument types.</p> - </text><group><param name='attr'/><text><p>Attribute that <ref resolved='predef::CompilerEnvironment.PikeCompiler.apply_attribute_constant.arg_type'>arg_type</ref> had.</p> - </text></group><group><param name='value'/><text><p>Constant value sent as parameter.</p> - </text></group><group><param name='arg_type'/><text><p>Declared type of the function argument.</p> - </text></group><group><param name='cont_type'/><text><p>Continuation function type after the current argument.</p> - <p> This function is called when a function is called -  with the constant value <ref resolved='predef::CompilerEnvironment.PikeCompiler.apply_attribute_constant.value'>value</ref> and it has been -  successfully matched against <ref resolved='predef::CompilerEnvironment.PikeCompiler.apply_attribute_constant.arg_type'>arg_type</ref>, -  and <ref resolved='predef::CompilerEnvironment.PikeCompiler.apply_attribute_constant.arg_type'>arg_type</ref> had the type attribute <ref resolved='predef::CompilerEnvironment.PikeCompiler.apply_attribute_constant.attr'>attr</ref>.</p> - <p> This function is typically used to perform specialized -  argument checking and to allow for a strengthening -  of the function type based on <ref resolved='predef::CompilerEnvironment.PikeCompiler.apply_attribute_constant.value'>value</ref>.</p> - <p> The default implementation implements the <expr>"sprintf_format"</expr>, -  <expr>"sscanf_format"</expr> and <expr>"sscanf_76_format"</expr> attributes.</p> - </text></group><group><returns/><text><p>Returns a continuation type if it succeeded in strengthening the type.</p> - <p> Returns <tt>UNDEFINED</tt> otherwise (this is not an error indication).</p> - </text></group><group><seealso/><text><p><ref resolved='predef::CompilerEnvironment.PikeCompiler.pop_type_attribute'>pop_type_attribute()</ref>, <ref resolved='predef::CompilerEnvironment.PikeCompiler.push_type_attribute'>push_type_attribute()</ref></p> - </text></group></doc> - <method name='apply_attribute_constant'> - <arguments><argument name='attr'><type><string/></type></argument><argument name='value'><type><mixed/></type></argument><argument name='arg_type'><type><type><mixed/></type></type></argument><argument name='cont_type'><type><void/></type></argument></arguments> - <returntype><type><mixed/></type></returntype> - </method> - </docgroup> - <docgroup homogen-name='apply_type_attribute' homogen-type='method'><doc><text><p>Type attribute handler.</p> - </text><group><param name='attribute'/><text><p>Attribute that <ref resolved='predef::CompilerEnvironment.PikeCompiler.apply_type_attribute.a'>a</ref> had.</p> - </text></group><group><param name='a'/><text><p>Type of the value being called.</p> - </text></group><group><param name='b'/><text><p>Type of the first argument in the call, or -  <ref resolved='predef::.UNDEFINED'>UNDEFINED</ref> if no more arguments.</p> - <p> Called during type checking when <ref resolved='predef::CompilerEnvironment.PikeCompiler.apply_type_attribute.a'>a</ref> has been successfully -  had a partial evaluation with the argument <ref resolved='predef::CompilerEnvironment.PikeCompiler.apply_type_attribute.b'>b</ref> and -  <ref resolved='predef::CompilerEnvironment.PikeCompiler.apply_type_attribute.a'>a</ref> had the type attribute <ref resolved='predef::CompilerEnvironment.PikeCompiler.apply_type_attribute.attribute'>attribute</ref> before the -  evaluation.</p> - <p> The default implementation implements the "deprecated" -  attribute.</p> - </text></group><group><returns/><text><p>Returns <expr>1</expr> if the type check should be allowed -  (ie <expr>__attribute__(attribute, a)(b)</expr>) is valid, -  and <expr>0</expr> (zero) otherwise.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::CompilerEnvironment.PikeCompiler.pop_type_attribute'>pop_type_attribute()</ref>, <ref resolved='predef::CompilerEnvironment.PikeCompiler.push_type_attribute'>push_type_attribute()</ref></p> - </text></group></doc> - <method name='apply_type_attribute'> - <arguments><argument name='attribute'><type><string/></type></argument><argument name='a'><type><type><mixed/></type></type></argument><argument name='b'><type><or><type><mixed/></type><void/></or></type></argument></arguments> - <returntype><int><min>0</min><max>1</max></int></returntype> - </method> - </docgroup> - <docgroup homogen-name='change_compiler_compatibility' homogen-type='method'><doc><text><p>Change compiler to attempt to be compatible with Pike <ref resolved='predef::CompilerEnvironment.PikeCompiler.change_compiler_compatibility.major'>major</ref>.<ref resolved='predef::CompilerEnvironment.PikeCompiler.change_compiler_compatibility.minor'>minor</ref>.</p> - </text></doc> - <method name='change_compiler_compatibility'> - <arguments><argument name='major'><type><int/></type></argument><argument name='minor'><type><int/></type></argument></arguments> - <returntype><void/></returntype> - </method> - </docgroup> - <docgroup homogen-name='compile' homogen-type='method'><doc><text><p>Compile the current source into a program.</p> - <p> This function compiles the current Pike source code -  into a clonable program.</p> - </text><group><seealso/><text><p><ref resolved='predef::compile_string'>compile_string()</ref>, <ref resolved='predef::compile_file'>compile_file()</ref>, <ref resolved='predef::cpp'>cpp()</ref>, <ref resolved='predef::master'>master()</ref>, -  <ref resolved='predef::CompilationHandler'>CompilationHandler</ref>, <ref resolved='predef::CompilerEnvironment.PikeCompiler.create'>create()</ref></p> - </text></group></doc> - <method name='compile'> - <arguments/> - <returntype><program/></returntype> - </method> - </docgroup> - <docgroup homogen-name='create' homogen-type='method'><doc><text><p>Create a PikeCompiler object for a source string.</p> - <p> This function takes a piece of Pike code as a string and -  initializes a compiler object accordingly.</p> - </text><group><param name='source'/><text><p>Source code to compile.</p> - </text></group><group><param name='handler'/><text><p>The optional argument <ref resolved='predef::CompilerEnvironment.PikeCompiler.create.handler'>handler</ref> is used to specify an alternative -  error handler. If it is not specified the current master object -  at compile time will be used.</p> - </text></group><group><param name='major'/><param name='minor'/><text><p>The optional arguments <ref resolved='predef::CompilerEnvironment.PikeCompiler.create.major'>major</ref> and <ref resolved='predef::CompilerEnvironment.PikeCompiler.create.minor'>minor</ref> are used to tell the -  compiler to attempt to be compatible with Pike <ref resolved='predef::CompilerEnvironment.PikeCompiler.create.major'>major</ref>.<ref resolved='predef::CompilerEnvironment.PikeCompiler.create.minor'>minor</ref>.</p> - </text></group><group><param name='target'/><text><p><ref resolved='predef::__empty_program'>__empty_program()</ref> program to fill in. The virgin program -  returned by <ref resolved='predef::__empty_program'>__empty_program()</ref> will be modified and returned -  by <ref resolved='predef::CompilerEnvironment.PikeCompiler.compile'>compile()</ref> on success.</p> - </text></group><group><param name='placeholder'/><text><p><ref resolved='predef::.__null_program'>__null_program()</ref> placeholder object to fill in. The object -  will be modified into an instance of the resulting program -  on successfull compile. Note that <ref resolved='lfun::create'>lfun::create()</ref> in the -  program will be called without any arguments.</p> - </text></group><group><note/><text><p>Note that <ref resolved='predef::CompilerEnvironment.PikeCompiler.create.source'>source</ref> must contain the complete source for a program. -  It is not possible to compile a single expression or statement.</p> - <p> Also note that no preprocessing is performed. -  To preprocess the program you can use <ref resolved='predef::compile_string'>compile_string()</ref> or -  call the preprocessor manually by calling <ref resolved='predef::cpp'>cpp()</ref>.</p> - </text></group><group><note/><text><p>Note that all references to <ref resolved='predef::CompilerEnvironment.PikeCompiler.create.target'>target</ref> and <ref resolved='predef::CompilerEnvironment.PikeCompiler.create.placeholder'>placeholder</ref> should -  removed if <ref resolved='predef::CompilerEnvironment.PikeCompiler.compile'>compile()</ref> failes. On failure the <ref resolved='predef::CompilerEnvironment.PikeCompiler.create.placeholder'>placeholder</ref> -  object will be destructed.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::compile_string'>compile_string()</ref>, <ref resolved='predef::compile_file'>compile_file()</ref>, <ref resolved='predef::cpp'>cpp()</ref>, <ref resolved='predef::master'>master()</ref>, -  <ref resolved='predef::CompilationHandler'>CompilationHandler</ref></p> - </text></group></doc> - <method name='create'> - <arguments><argument name='source'><type><or><string/><void/></or></type></argument><argument name='handler'><type><or><object resolved='predef::CompilationHandler'>CompilationHandler</object><void/></or></type></argument><argument name='major'><type><or><int/><void/></or></type></argument><argument name='minor'><type><or><int/><void/></or></type></argument><argument name='target'><type><or><program/><void/></or></type></argument><argument name='placeholder'><type><or><object resolved='predef::CompilerEnvironment.PikeCompiler.create'/><void/></or></type></argument></arguments> - <returntype><void/></returntype> - </method> - </docgroup> - <docgroup homogen-name='get_compilation_handler' homogen-type='method'><doc><text><p>Get compatibility handler for Pike <ref resolved='predef::CompilerEnvironment.PikeCompiler.get_compilation_handler.major'>major</ref>.<ref resolved='predef::CompilerEnvironment.PikeCompiler.get_compilation_handler.minor'>minor</ref>.</p> - </text><group><note/><text><p>This function is called by <ref resolved='predef::CompilerEnvironment.PikeCompiler.change_compiler_compatibility'>change_compiler_compatibility()</ref>.</p> - </text></group></doc> - <method name='get_compilation_handler'> - <arguments><argument name='major'><type><int/></type></argument><argument name='minor'><type><int/></type></argument></arguments> - <returntype><object resolved='predef::CompilerEnvironment.PikeCompiler.get_compilation_handler'/></returntype> - </method> - </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 current handler, the current compatibility handler -  or in the parent <ref resolved='predef::CompilerEnvironment'>CompilerEnvironment</ref> in that order.</p> - </text><group><returns/><text><mixed><group><type><or><mapping><indextype><string/></indextype><valuetype><mixed/></valuetype></mapping><object resolved='predef::CompilerEnvironment.PikeCompiler.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 called by <ref resolved='predef::CompilerEnvironment.PikeCompiler.change_compiler_compatibility'>change_compiler_compatibility()</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.PikeCompiler.get_default_module'/></or></returntype> - </method> - </docgroup> - <docgroup homogen-name='handle_import' homogen-type='method'><doc><text><p>Look up an import <ref resolved='predef::CompilerEnvironment.PikeCompiler.handle_import.module'>module</ref>.</p> - </text></doc> - <method name='handle_import'> - <arguments><argument name='module'><type><string/></type></argument></arguments> - <returntype><program/></returntype> - </method> - </docgroup> - <docgroup homogen-name='handle_inherit' homogen-type='method'><doc><text><p>Look up an inherit <ref resolved='predef::CompilerEnvironment.PikeCompiler.handle_inherit.inh'>inh</ref> in the current program.</p> - </text></doc> - <method name='handle_inherit'> - <arguments><argument name='inh'><type><string/></type></argument></arguments> - <returntype><program/></returntype> - </method> - </docgroup> - <docgroup homogen-name='pop_type_attribute' homogen-type='method'><doc><text><p>Type attribute handler.</p> - <p> Called during type checking when <expr>a &lt;= b</expr> and -  <ref resolved='predef::CompilerEnvironment.PikeCompiler.pop_type_attribute.a'>a</ref> had the type attribute <ref resolved='predef::CompilerEnvironment.PikeCompiler.pop_type_attribute.attribute'>attribute</ref> before the -  comparison.</p> - <p> The default implementation implements the "deprecated" -  attribute.</p> - </text><group><returns/><text><p>Returns <expr>1</expr> if the type check should be allowed -  (ie <expr>__attribute__(attribute, a) &lt;= b</expr>), and -  <expr>0</expr> (zero) otherwise.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::CompilerEnvironment.PikeCompiler.push_type_attribute'>push_type_attribute()</ref></p> - </text></group></doc> - <method name='pop_type_attribute'> - <arguments><argument name='attribute'><type><string/></type></argument><argument name='a'><type><type><mixed/></type></type></argument><argument name='b'><type><type><mixed/></type></type></argument></arguments> - <returntype><int><min>0</min><max>1</max></int></returntype> - </method> - </docgroup> - <docgroup homogen-name='push_type_attribute' homogen-type='method'><doc><text><p>Type attribute handler.</p> - <p> Called during type checking when <expr>a &lt;= b</expr> and -  <ref resolved='predef::CompilerEnvironment.PikeCompiler.push_type_attribute.b'>b</ref> had the type attribute <ref resolved='predef::CompilerEnvironment.PikeCompiler.push_type_attribute.attribute'>attribute</ref> before the -  comparison.</p> - <p> The default implementation implements the "deprecated" -  attribute.</p> - </text><group><returns/><text><p>Returns <expr>1</expr> if the type check should be allowed -  (ie <expr>a &lt;= __attribute__(attribute, b)</expr>), and -  <expr>0</expr> (zero) otherwise.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::CompilerEnvironment.PikeCompiler.pop_type_attribute'>pop_type_attribute()</ref></p> - </text></group></doc> - <method name='push_type_attribute'> - <arguments><argument name='attribute'><type><string/></type></argument><argument name='a'><type><type><mixed/></type></type></argument><argument name='b'><type><type><mixed/></type></type></argument></arguments> - <returntype><int><min>0</min><max>1</max></int></returntype> - </method> - </docgroup> - <docgroup homogen-name='report' homogen-type='method'><doc><text><p>Report a diagnostic from the compiler.</p> - <p> The default implementation attempts to call the first -  corresponding function in the active handlers in priority order:</p> - <ol><group><item/><text><p>Call handler-&gt;report().</p> - </text></group><group><item/><text><p>Call handler-&gt;compile_warning() or handler-&gt;compile_error() -  depending on <ref resolved='predef::CompilerEnvironment.PikeCompiler.report.severity'>severity</ref>.</p> - </text></group><group><item/><text><p>Call compat-&gt;report().</p> - </text></group><group><item/><text><p>Call compat-&gt;compile_warning() or compat-&gt;compile_error() -  depending on <ref resolved='predef::CompilerEnvironment.PikeCompiler.report.severity'>severity</ref>.</p> - </text></group><group><item/><text><p>Fallback: Call <ref resolved='predef::Reporter.report'>CompilerEnvironment()-&gt;report()</ref> -  in the parent object.</p> - </text></group></ol><p>The arguments will be as follows:</p> - <dl><group><item name='report()'/><text><p>The report() function will be called with the same arguments -  as this function.</p> - </text></group><group><item name='compile_warning()/compile_error()'/><text><p>Depending on the <ref resolved='predef::CompilerEnvironment.PikeCompiler.report.severity'>severity</ref> either compile_warning() -  or compile_error() will be called.</p> - <p> They will be called with the <ref resolved='predef::CompilerEnvironment.PikeCompiler.report.filename'>filename</ref>, <ref resolved='predef::CompilerEnvironment.PikeCompiler.report.linenumber'>linenumber</ref> -  and formatted <ref resolved='predef::CompilerEnvironment.PikeCompiler.report.message'>message</ref> as arguments.</p> - <p> Note that these will not be called for the <ref resolved='predef::Reporter.SeverityLevel.NOTICE'>NOTICE</ref> severity, -  and that compile_error() will be used for both <ref resolved='predef::Reporter.SeverityLevel.ERROR'>ERROR</ref> and -  <ref resolved='predef::Reporter.SeverityLevel.FATAL'>FATAL</ref>.</p> - </text></group></dl> - </text><group><note/><text><p>In Pike 7.8 and earlier the report() function was not called -  in the handlers.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::Reporter.report'>CompilerEnvironment()-&gt;report()</ref></p> - </text></group></doc> - <method name='report'> - <arguments><argument name='severity'><type><object resolved='predef::Reporter.SeverityLevel'>SeverityLevel</object></type></argument><argument name='filename'><type><string/></type></argument><argument name='linenumber'><type><int/></type></argument><argument name='subsystem'><type><string/></type></argument><argument name='message'><type><string/></type></argument><argument name='extra_args'><type><varargs><mixed/></varargs></type></argument></arguments> - <returntype><void/></returntype> - </method> - </docgroup> - <docgroup homogen-name='resolv' homogen-type='method'><doc><text><p>Resolve the symbol <ref resolved='predef::CompilerEnvironment.PikeCompiler.resolv.identifier'>identifier</ref>.</p> - <p> The default implementation calls <ref resolved='predef::CompilerEnvironment.resolv'>CompilerEnvironment()-&gt;resolv()</ref> -  in the parent object, with the remaining arguments taken from the -  current <ref resolved='predef::CompilerEnvironment.PikeCompiler'>PikeCompiler</ref> context.</p> - </text><group><returns/><text><p>Returns the value of <ref>sym</ref> if found, and <ref resolved='predef::.UNDEFINED'>UNDEFINED</ref> if not.</p> - </text></group></doc> - <method name='resolv'> - <arguments><argument name='identifier'><type><string/></type></argument></arguments> - <returntype><mixed/></returntype> - </method> - </docgroup> - <class name='CompilerState'> - <doc><text><p>Keeps the state of a single program/class during compilation.</p> - </text><group><note/><text><p>Not in use yet!</p> - </text></group></doc> - </class> - </class> +    <class name='define'>   <docgroup homogen-name='`()' homogen-type='method'><doc><group><param name='arguments'/><text><p>Array of arguments to the macro. Zero if no parenthesis.</p>   </text></group><group><param name='context'/><text><p>CPP context we are evaluating in.</p>   </text></group><group><returns/><text><p>Returns the expansion of the macro on success, and <expr>0</expr> (zero)    on failure (typically due to invalid <ref resolved='predef::CompilerEnvironment.define.`().arguments'>arguments</ref>).</p>   </text></group></doc>   <method name='`()'>   <arguments><argument name='arguments'><type><or><array><valuetype><string/></valuetype></array><void/></or></type></argument><argument name='context'><type><or><object resolved='predef::CompilerEnvironment.CPP'>CPP</object><void/></or></type></argument><argument name='flags'><type><or><int/><void/></or></type></argument></arguments>   <returntype><string/></returntype>   </method>   </docgroup>   </class> - <class name='lock'> - <doc><text><p>This class acts as a lock against other threads accessing the compiler.</p> - <p> The lock is released when the object is destructed.</p> - </text></doc> +    </class> - </class> +    <module name='Concurrent'>   <doc><text><p>Module for handling multiple concurrent events.</p>   <p> The <ref resolved='predef::Concurrent.Future'>Future</ref> and <ref resolved='predef::Concurrent.Promise'>Promise</ref> API was inspired by    <url>https://github.com/couchdeveloper/FutureLib</url>.</p>   </text></doc>   <docgroup homogen-name='all' homogen-type='method'><doc><text><p>JavaScript Promise API equivalent of <ref resolved='predef::Concurrent.results'>results()</ref>.</p>   </text><group><seealso/><text><p><ref resolved='predef::Concurrent.results'>results()</ref>, <ref resolved='predef::Concurrent.Promise.depend'>Promise.depend()</ref>    <url>https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Promise</url></p>   </text></group></doc>   <method name='all'><modifiers><local/><variant/></modifiers>
autodoc.git/autodoc.xml:26064:    programs which have been encoded by <ref resolved='predef::Encoder.nameof'>Encoder.nameof</ref> in the    corresponding <ref resolved='predef::Encoder'>Encoder</ref> object.</p>   </text></doc>   <docgroup homogen-name='__register_new_program' homogen-type='method'><doc><text><p>Called to register the program that is being decoded. Might get    called repeatedly with several other programs that are being    decoded recursively. The only safe assumption is that when the    top level thing being decoded is a program, then the first call    will be with the unfinished embryo that will later become that    program.</p>   </text><group><returns/><text><p>Returns either zero or a placeholder object. A placeholder -  object must be a clone of <ref resolved='predef::.__null_program'>__null_program</ref>. When the program is +  object must be a clone of <ref>__null_program</ref>. When the program is    finished, the placeholder object will be converted to a clone of    it. This is used for pike module objects.</p>   </text></group></doc>   <method name='__register_new_program'>   <arguments><argument name='p'><type><program/></type></argument></arguments>   <returntype><object resolved='predef::Decoder.__register_new_program'/></returntype>   </method>   </docgroup>   <docgroup homogen-name='functionof' homogen-type='method'><doc><text><p>Decode function encoded in <ref resolved='predef::Decoder.functionof.data'>data</ref>.</p>   <p> This function is called by <ref resolved='predef::decode_value'>decode_value()</ref> when it encounters
autodoc.git/autodoc.xml:26110:   </text><group><param name='data'/><text><p>Encoding of some program as returned by <ref resolved='predef::Encoder.nameof'>Encoder.nameof()</ref>.</p>   </text></group><group><returns/><text><p>Returns the decoded program.</p>   </text></group><group><seealso/><text><p><ref resolved='predef::Decoder.functionof'>functionof()</ref>, <ref resolved='predef::Decoder.objectof'>objectof()</ref></p>   </text></group></doc>   <method name='programof'>   <arguments><argument name='data'><type><string/></type></argument></arguments>   <returntype><program/></returntype>   </method>   </docgroup>   </class> - <module name='DefaultCompilerEnvironment'> - <doc><text><p>The <ref resolved='predef::CompilerEnvironment'>CompilerEnvironment</ref> object that is used -  for loading C-modules and by <ref resolved='predef::compile'>predef::compile()</ref>.</p> - </text><group><note/><text><p><ref resolved='predef::compile'>predef::compile()</ref> is essentially an alias for the -  <ref resolved='predef::CompilerEnvironment.compile'>CompilerEnvironment()-&gt;compile()</ref> in this object.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::CompilerEnvironment'>CompilerEnvironment</ref>, <ref resolved='predef::compile'>predef::compile()</ref></p> - </text></group></doc> - <docgroup homogen-name='CompilerEnvironment' homogen-type='inherit'> - <inherit name='CompilerEnvironment'><classname resolved='predef::CompilerEnvironment'>CompilerEnvironment</classname></inherit> - </docgroup> - </module> +    <class name='Encoder'>   <doc><text><p>Codec used by <ref resolved='predef::encode_value'>encode_value()</ref> to encode objects, functions and    programs. Its purpose is to look up some kind of identifier for    them, so they can be mapped back to the corresponding instance    by <ref resolved='predef::decode_value'>decode_value()</ref>, rather than creating a new copy.</p>   </text></doc>   <docgroup homogen-name='nameof' homogen-type='method'><doc><text><p>Called by <ref resolved='predef::encode_value'>encode_value()</ref> to encode objects, functions and programs.</p>   </text><group><returns/><text><p>Returns something encodable on success, typically a string.    The returned value will be passed to the corresponding    <ref>objectof()</ref>, <ref>functionof()</ref> or <ref>programof()</ref> by
autodoc.git/autodoc.xml:99169:   <returntype><type><mixed/></type></returntype>   </method>   </docgroup>   <docgroup homogen-name='soft_cast' homogen-type='method'><doc><text><p>Return the resulting type from a soft cast of <ref resolved='predef::Pike.soft_cast.from'>from</ref> to <ref resolved='predef::Pike.soft_cast.to'>to</ref>.</p>   </text></doc>   <method name='soft_cast'>   <arguments><argument name='to'><type><type><mixed/></type></type></argument><argument name='from'><type><type><mixed/></type></type></argument></arguments>   <returntype><type><mixed/></type></returntype>   </method>   </docgroup> - <class name='Annotation'> - <doc><text><p>This class describes the API that the compiler -  expects for the annotation syntax.</p> - </text><group><note/><text><p>Classes implementing this API typically need -  to be marked <tt>constant</tt>.</p> - </text></group><group><seealso/><text><p><ref resolved='predef::Pike.Annotations'>Annotations</ref></p> - </text></group></doc> - <docgroup homogen-name='end_pass' homogen-type='method'><doc><text><p>Callback called by the compiler when it is finishing a compilation pass.</p> - </text><group><param name='pass'/><text><p>Compilation pass.</p> - </text></group><group><param name='prog'/><text><p>Program being compiled.</p> - </text></group><group><param name='compiler'/><text><p><ref resolved='predef::CompilerEnvironment.PikeCompiler'>CompilerEnvironment.PikeCompiler</ref> state for the compiler.</p> - </text></group></doc> - <method name='end_pass'><modifiers><optional/></modifiers> - <arguments><argument name='pass'><type><int/></type></argument><argument name='prog'><type><program/></type></argument><argument name='compiler'><type><object resolved='predef::CompilerEnvironment.PikeCompiler'>CompilerEnvironment.PikeCompiler</object></type></argument></arguments> - <returntype><void/></returntype> - </method> - </docgroup> - </class> +    <module name='Annotations'>   <doc><text><p>This module contains the set of annotations that the compiler    and runtime care about.</p>   </text></doc> - <class name='Implements'> - <doc><text><p>This annotation causes the compiler to validate that -  the annotated class implements the specified API.</p> - </text></doc> - <docgroup homogen-name='Annotation' homogen-type='inherit'> - <inherit name='Annotation'><classname resolved='predef::Pike.Annotation'>Pike.Annotation</classname></inherit> - </docgroup> - </class> +    </module>   <class name='BacktraceFrame'>   <docgroup homogen-name='_is_type' homogen-type='method'><doc><text><p>This object claims to be an array for backward compatibility.</p>   </text></doc>   <method name='_is_type'>   <arguments><argument name='t'><type><string/></type></argument></arguments>   <returntype><int><min>0</min><max>1</max></int></returntype>   </method>   </docgroup>   <docgroup homogen-name='_sizeof' homogen-type='method'>
autodoc.git/autodoc.xml:111961:   <method name='create'>   <arguments><argument><type><mapping><indextype><string/></indextype><valuetype><string/></valuetype></mapping></type></argument></arguments>   <returntype><void/></returntype>   </method>   <method name='create'>   <arguments><argument name='from'><type><array><valuetype><string/></valuetype></array></type></argument><argument name='to'><type><or><array><valuetype><string/></valuetype></array><string/></or></type></argument></arguments>   <returntype><void/></returntype>   </method>   </docgroup>   </class> - <class name='Reporter'> - <doc><text><p>API for reporting parse errors and similar.</p> - </text></doc> - <docgroup homogen-name='report' homogen-type='method'><doc><text><p>Report a diagnostic from the compiler.</p> - </text><group><param name='severity'/><text><p>The severity of the diagnostic.</p> - </text></group><group><param name='filename'/><param name='linenumber'/><text><p>Location which triggered the diagnostic.</p> - </text></group><group><param name='subsystem'/><text><p>Compiler subsystem that generated the diagnostic.</p> - </text></group><group><param name='message'/><text><p><ref resolved='predef::sprintf'>sprintf()</ref>-style formatting string with the diagnostic message.</p> - </text></group><group><param name='extra_args'/><text><p>Extra arguments to <ref resolved='predef::sprintf'>sprintf()</ref>.</p> - <p> The default implementation does the following:</p> - <ul><group><item/><text><p>If there's a <ref>MasterObject()-&gt;report()</ref>, call it -  with the same arguments as ourselves.</p> - </text></group><group><item/><text><p>Otherwise depending on <ref resolved='predef::Reporter.report.severity'>severity</ref>:</p> - <int><group><value>NOTICE</value><text><p>Ignored.</p> - </text></group><group><value>WARNING</value><text><p>Calls <ref resolved='predef::MasterObject.compile_warning'>MasterObject()-&gt;compile_warning()</ref>.</p> - </text></group><group><value>ERROR</value><value>FATAL</value><text><p>Calls <ref resolved='predef::MasterObject.compile_error'>MasterObject()-&gt;compile_error()</ref>.</p> - </text></group></int></text></group></ul><p>If there's no master object yet, the diagnostic is output to -  <ref resolved='predef::Stdio.stderr'>Stdio.stderr</ref>.</p> - </text></group><group><note/><text><p>In Pike 7.8 and earlier <ref>MasterObject()-&gt;report()</ref> was not called.</p> - </text></group><group><seealso/><text><p><ref>PikeCompiler()-&gt;report()</ref></p> - </text></group></doc> - <method name='report'> - <arguments><argument name='severity'><type><object resolved='predef::Reporter.SeverityLevel'>SeverityLevel</object></type></argument><argument name='filename'><type><string/></type></argument><argument name='linenumber'><type><int><min>1</min><max/></int></type></argument><argument name='subsystem'><type><string/></type></argument><argument name='message'><type><string/></type></argument><argument name='extra_args'><type><varargs><mixed/></varargs></type></argument></arguments> - <returntype><void/></returntype> - </method> - </docgroup> - <enum name='SeverityLevel'> - <doc><text><p>Message severity level. -  { NOTICE, WARNING, ERROR, FATAL }</p> - </text><group><seealso/><text><p><ref resolved='predef::Reporter.report'>report()</ref></p> - </text></group></doc> - <docgroup homogen-type='constant'><constant name='NOTICE'/><constant name='WARNING'/><constant name='ERROR'/><constant name='FATAL'/></docgroup> - </enum> - </class> +    <module name='SANE'>   <doc><text><p>This module enables access to the SANE (Scanner Access Now Easy)    library from pike</p>   </text></doc>   <docgroup homogen-type='constant'>   <constant name='FrameGray'/>   <constant name='FrameRGB'/>   <constant name='FrameRed'/>   <constant name='FrameGreen'/>   <constant name='FrameBlue'/>