Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 831cb0018d0c9651456f6619b9a08d16 > files > 24

ocaml-docs-3.11.2-2.fc13.x86_64.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<link rel="stylesheet" href="style.css" type="text/css">
<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type">
<link rel="Start" href="index.html">
<link rel="previous" href="CamlinternalMod.html">
<link rel="next" href="Char.html">
<link rel="Up" href="index.html">
<link title="Index of types" rel=Appendix href="index_types.html">
<link title="Index of exceptions" rel=Appendix href="index_exceptions.html">
<link title="Index of values" rel=Appendix href="index_values.html">
<link title="Index of modules" rel=Appendix href="index_modules.html">
<link title="Index of module types" rel=Appendix href="index_module_types.html">
<link title="Arg" rel="Chapter" href="Arg.html">
<link title="Arith_status" rel="Chapter" href="Arith_status.html">
<link title="Array" rel="Chapter" href="Array.html">
<link title="ArrayLabels" rel="Chapter" href="ArrayLabels.html">
<link title="Big_int" rel="Chapter" href="Big_int.html">
<link title="Bigarray" rel="Chapter" href="Bigarray.html">
<link title="Buffer" rel="Chapter" href="Buffer.html">
<link title="Callback" rel="Chapter" href="Callback.html">
<link title="CamlinternalLazy" rel="Chapter" href="CamlinternalLazy.html">
<link title="CamlinternalMod" rel="Chapter" href="CamlinternalMod.html">
<link title="CamlinternalOO" rel="Chapter" href="CamlinternalOO.html">
<link title="Char" rel="Chapter" href="Char.html">
<link title="Complex" rel="Chapter" href="Complex.html">
<link title="Condition" rel="Chapter" href="Condition.html">
<link title="Dbm" rel="Chapter" href="Dbm.html">
<link title="Digest" rel="Chapter" href="Digest.html">
<link title="Dynlink" rel="Chapter" href="Dynlink.html">
<link title="Event" rel="Chapter" href="Event.html">
<link title="Filename" rel="Chapter" href="Filename.html">
<link title="Format" rel="Chapter" href="Format.html">
<link title="Gc" rel="Chapter" href="Gc.html">
<link title="Genlex" rel="Chapter" href="Genlex.html">
<link title="Graphics" rel="Chapter" href="Graphics.html">
<link title="GraphicsX11" rel="Chapter" href="GraphicsX11.html">
<link title="Hashtbl" rel="Chapter" href="Hashtbl.html">
<link title="Int32" rel="Chapter" href="Int32.html">
<link title="Int64" rel="Chapter" href="Int64.html">
<link title="Lazy" rel="Chapter" href="Lazy.html">
<link title="Lexing" rel="Chapter" href="Lexing.html">
<link title="List" rel="Chapter" href="List.html">
<link title="ListLabels" rel="Chapter" href="ListLabels.html">
<link title="Map" rel="Chapter" href="Map.html">
<link title="Marshal" rel="Chapter" href="Marshal.html">
<link title="MoreLabels" rel="Chapter" href="MoreLabels.html">
<link title="Mutex" rel="Chapter" href="Mutex.html">
<link title="Nativeint" rel="Chapter" href="Nativeint.html">
<link title="Num" rel="Chapter" href="Num.html">
<link title="Obj" rel="Chapter" href="Obj.html">
<link title="Oo" rel="Chapter" href="Oo.html">
<link title="Parsing" rel="Chapter" href="Parsing.html">
<link title="Pervasives" rel="Chapter" href="Pervasives.html">
<link title="Printexc" rel="Chapter" href="Printexc.html">
<link title="Printf" rel="Chapter" href="Printf.html">
<link title="Queue" rel="Chapter" href="Queue.html">
<link title="Random" rel="Chapter" href="Random.html">
<link title="Scanf" rel="Chapter" href="Scanf.html">
<link title="Set" rel="Chapter" href="Set.html">
<link title="Sort" rel="Chapter" href="Sort.html">
<link title="Stack" rel="Chapter" href="Stack.html">
<link title="StdLabels" rel="Chapter" href="StdLabels.html">
<link title="Str" rel="Chapter" href="Str.html">
<link title="Stream" rel="Chapter" href="Stream.html">
<link title="String" rel="Chapter" href="String.html">
<link title="StringLabels" rel="Chapter" href="StringLabels.html">
<link title="Sys" rel="Chapter" href="Sys.html">
<link title="Thread" rel="Chapter" href="Thread.html">
<link title="ThreadUnix" rel="Chapter" href="ThreadUnix.html">
<link title="Tk" rel="Chapter" href="Tk.html">
<link title="Unix" rel="Chapter" href="Unix.html">
<link title="UnixLabels" rel="Chapter" href="UnixLabels.html">
<link title="Weak" rel="Chapter" href="Weak.html"><link title="Classes" rel="Section" href="#6_Classes">
<link title="Objects" rel="Section" href="#6_Objects">
<link title="Table cache" rel="Section" href="#6_Tablecache">
<link title="Builtins to reduce code size" rel="Section" href="#6_Builtinstoreducecodesize">
<link title="Parameters" rel="Section" href="#6_Parameters">
<link title="Statistics" rel="Section" href="#6_Statistics">
<title>CamlinternalOO</title>
</head>
<body>
<div class="navbar"><a href="CamlinternalMod.html">Previous</a>
&nbsp;<a href="index.html">Up</a>
&nbsp;<a href="Char.html">Next</a>
</div>
<center><h1>Module <a href="type_CamlinternalOO.html">CamlinternalOO</a></h1></center>
<br>
<pre><span class="keyword">module</span> CamlinternalOO: <code class="code"><span class="keyword">sig</span></code> <a href="CamlinternalOO.html">..</a> <code class="code"><span class="keyword">end</span></code></pre>Run-time support for objects and classes.
    All functions in this module are for system use only, not for the
    casual user.<br>
<hr width="100%">
<br>
<a name="6_Classes"></a>
<h6>Classes</h6><br>
<pre><span class="keyword">type</span> <a name="TYPEtag"></a><code class="type"></code>tag </pre>

<pre><span class="keyword">type</span> <a name="TYPElabel"></a><code class="type"></code>label </pre>

<pre><span class="keyword">type</span> <a name="TYPEtable"></a><code class="type"></code>table </pre>

<pre><span class="keyword">type</span> <a name="TYPEmeth"></a><code class="type"></code>meth </pre>

<pre><span class="keyword">type</span> <a name="TYPEt"></a><code class="type"></code>t </pre>

<pre><span class="keyword">type</span> <a name="TYPEobj"></a><code class="type"></code>obj </pre>

<pre><span class="keyword">type</span> <a name="TYPEclosure"></a><code class="type"></code>closure </pre>

<pre><span class="keyword">val</span> <a name="VALpublic_method_label"></a>public_method_label : <code class="type">string -> <a href="CamlinternalOO.html#TYPEtag">tag</a></code></pre><pre><span class="keyword">val</span> <a name="VALnew_method"></a>new_method : <code class="type"><a href="CamlinternalOO.html#TYPEtable">table</a> -> <a href="CamlinternalOO.html#TYPElabel">label</a></code></pre><pre><span class="keyword">val</span> <a name="VALnew_variable"></a>new_variable : <code class="type"><a href="CamlinternalOO.html#TYPEtable">table</a> -> string -> int</code></pre><pre><span class="keyword">val</span> <a name="VALnew_methods_variables"></a>new_methods_variables : <code class="type"><a href="CamlinternalOO.html#TYPEtable">table</a> -><br>       string array -> string array -> <a href="CamlinternalOO.html#TYPElabel">label</a> array</code></pre><pre><span class="keyword">val</span> <a name="VALget_variable"></a>get_variable : <code class="type"><a href="CamlinternalOO.html#TYPEtable">table</a> -> string -> int</code></pre><pre><span class="keyword">val</span> <a name="VALget_variables"></a>get_variables : <code class="type"><a href="CamlinternalOO.html#TYPEtable">table</a> -> string array -> int array</code></pre><pre><span class="keyword">val</span> <a name="VALget_method_label"></a>get_method_label : <code class="type"><a href="CamlinternalOO.html#TYPEtable">table</a> -> string -> <a href="CamlinternalOO.html#TYPElabel">label</a></code></pre><pre><span class="keyword">val</span> <a name="VALget_method_labels"></a>get_method_labels : <code class="type"><a href="CamlinternalOO.html#TYPEtable">table</a> -> string array -> <a href="CamlinternalOO.html#TYPElabel">label</a> array</code></pre><pre><span class="keyword">val</span> <a name="VALget_method"></a>get_method : <code class="type"><a href="CamlinternalOO.html#TYPEtable">table</a> -> <a href="CamlinternalOO.html#TYPElabel">label</a> -> <a href="CamlinternalOO.html#TYPEmeth">meth</a></code></pre><pre><span class="keyword">val</span> <a name="VALset_method"></a>set_method : <code class="type"><a href="CamlinternalOO.html#TYPEtable">table</a> -> <a href="CamlinternalOO.html#TYPElabel">label</a> -> <a href="CamlinternalOO.html#TYPEmeth">meth</a> -> unit</code></pre><pre><span class="keyword">val</span> <a name="VALset_methods"></a>set_methods : <code class="type"><a href="CamlinternalOO.html#TYPEtable">table</a> -> <a href="CamlinternalOO.html#TYPElabel">label</a> array -> unit</code></pre><pre><span class="keyword">val</span> <a name="VALnarrow"></a>narrow : <code class="type"><a href="CamlinternalOO.html#TYPEtable">table</a> -> string array -> string array -> string array -> unit</code></pre><pre><span class="keyword">val</span> <a name="VALwiden"></a>widen : <code class="type"><a href="CamlinternalOO.html#TYPEtable">table</a> -> unit</code></pre><pre><span class="keyword">val</span> <a name="VALadd_initializer"></a>add_initializer : <code class="type"><a href="CamlinternalOO.html#TYPEtable">table</a> -> (<a href="CamlinternalOO.html#TYPEobj">obj</a> -> unit) -> unit</code></pre><pre><span class="keyword">val</span> <a name="VALdummy_table"></a>dummy_table : <code class="type"><a href="CamlinternalOO.html#TYPEtable">table</a></code></pre><pre><span class="keyword">val</span> <a name="VALcreate_table"></a>create_table : <code class="type">string array -> <a href="CamlinternalOO.html#TYPEtable">table</a></code></pre><pre><span class="keyword">val</span> <a name="VALinit_class"></a>init_class : <code class="type"><a href="CamlinternalOO.html#TYPEtable">table</a> -> unit</code></pre><pre><span class="keyword">val</span> <a name="VALinherits"></a>inherits : <code class="type"><a href="CamlinternalOO.html#TYPEtable">table</a> -><br>       string array -><br>       string array -><br>       string array -><br>       <a href="CamlinternalOO.html#TYPEt">t</a> * (<a href="CamlinternalOO.html#TYPEtable">table</a> -> <a href="CamlinternalOO.html#TYPEobj">obj</a> -> <a href="Obj.html#TYPEt">Obj.t</a>) *<br>       <a href="CamlinternalOO.html#TYPEt">t</a> * <a href="CamlinternalOO.html#TYPEobj">obj</a> -> bool -> <a href="Obj.html#TYPEt">Obj.t</a> array</code></pre><pre><span class="keyword">val</span> <a name="VALmake_class"></a>make_class : <code class="type">string array -><br>       (<a href="CamlinternalOO.html#TYPEtable">table</a> -> <a href="Obj.html#TYPEt">Obj.t</a> -> <a href="CamlinternalOO.html#TYPEt">t</a>) -><br>       <a href="CamlinternalOO.html#TYPEt">t</a> * (<a href="CamlinternalOO.html#TYPEtable">table</a> -> <a href="Obj.html#TYPEt">Obj.t</a> -> <a href="CamlinternalOO.html#TYPEt">t</a>) *<br>       (<a href="Obj.html#TYPEt">Obj.t</a> -> <a href="CamlinternalOO.html#TYPEt">t</a>) * <a href="Obj.html#TYPEt">Obj.t</a></code></pre><pre><span class="keyword">type</span> <a name="TYPEinit_table"></a><code class="type"></code>init_table </pre>

<pre><span class="keyword">val</span> <a name="VALmake_class_store"></a>make_class_store : <code class="type">string array -><br>       (<a href="CamlinternalOO.html#TYPEtable">table</a> -> <a href="CamlinternalOO.html#TYPEt">t</a>) -><br>       <a href="CamlinternalOO.html#TYPEinit_table">init_table</a> -> unit</code></pre><pre><span class="keyword">val</span> <a name="VALdummy_class"></a>dummy_class : <code class="type">string * int * int -><br>       <a href="CamlinternalOO.html#TYPEt">t</a> * (<a href="CamlinternalOO.html#TYPEtable">table</a> -> <a href="Obj.html#TYPEt">Obj.t</a> -> <a href="CamlinternalOO.html#TYPEt">t</a>) *<br>       (<a href="Obj.html#TYPEt">Obj.t</a> -> <a href="CamlinternalOO.html#TYPEt">t</a>) * <a href="Obj.html#TYPEt">Obj.t</a></code></pre><br>
<a name="6_Objects"></a>
<h6>Objects</h6><br>
<pre><span class="keyword">val</span> <a name="VALcopy"></a>copy : <code class="type">(< .. > as 'a) -> 'a</code></pre><pre><span class="keyword">val</span> <a name="VALcreate_object"></a>create_object : <code class="type"><a href="CamlinternalOO.html#TYPEtable">table</a> -> <a href="CamlinternalOO.html#TYPEobj">obj</a></code></pre><pre><span class="keyword">val</span> <a name="VALcreate_object_opt"></a>create_object_opt : <code class="type"><a href="CamlinternalOO.html#TYPEobj">obj</a> -> <a href="CamlinternalOO.html#TYPEtable">table</a> -> <a href="CamlinternalOO.html#TYPEobj">obj</a></code></pre><pre><span class="keyword">val</span> <a name="VALrun_initializers"></a>run_initializers : <code class="type"><a href="CamlinternalOO.html#TYPEobj">obj</a> -> <a href="CamlinternalOO.html#TYPEtable">table</a> -> unit</code></pre><pre><span class="keyword">val</span> <a name="VALrun_initializers_opt"></a>run_initializers_opt : <code class="type"><a href="CamlinternalOO.html#TYPEobj">obj</a> -><br>       <a href="CamlinternalOO.html#TYPEobj">obj</a> -> <a href="CamlinternalOO.html#TYPEtable">table</a> -> <a href="CamlinternalOO.html#TYPEobj">obj</a></code></pre><pre><span class="keyword">val</span> <a name="VALcreate_object_and_run_initializers"></a>create_object_and_run_initializers : <code class="type"><a href="CamlinternalOO.html#TYPEobj">obj</a> -> <a href="CamlinternalOO.html#TYPEtable">table</a> -> <a href="CamlinternalOO.html#TYPEobj">obj</a></code></pre><pre><span class="keyword">val</span> <a name="VALsend"></a>send : <code class="type"><a href="CamlinternalOO.html#TYPEobj">obj</a> -> <a href="CamlinternalOO.html#TYPEtag">tag</a> -> <a href="CamlinternalOO.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALsendcache"></a>sendcache : <code class="type"><a href="CamlinternalOO.html#TYPEobj">obj</a> -><br>       <a href="CamlinternalOO.html#TYPEtag">tag</a> -> <a href="CamlinternalOO.html#TYPEt">t</a> -> int -> <a href="CamlinternalOO.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALsendself"></a>sendself : <code class="type"><a href="CamlinternalOO.html#TYPEobj">obj</a> -> <a href="CamlinternalOO.html#TYPElabel">label</a> -> <a href="CamlinternalOO.html#TYPEt">t</a></code></pre><pre><span class="keyword">val</span> <a name="VALget_public_method"></a>get_public_method : <code class="type"><a href="CamlinternalOO.html#TYPEobj">obj</a> -> <a href="CamlinternalOO.html#TYPEtag">tag</a> -> <a href="CamlinternalOO.html#TYPEclosure">closure</a></code></pre><br>
<a name="6_Tablecache"></a>
<h6>Table cache</h6><br>
<pre><span class="keyword">type</span> <a name="TYPEtables"></a><code class="type"></code>tables </pre>

<pre><span class="keyword">val</span> <a name="VALlookup_tables"></a>lookup_tables : <code class="type"><a href="CamlinternalOO.html#TYPEtables">tables</a> -><br>       <a href="CamlinternalOO.html#TYPEclosure">closure</a> array -> <a href="CamlinternalOO.html#TYPEtables">tables</a></code></pre><br>
<a name="6_Builtinstoreducecodesize"></a>
<h6>Builtins to reduce code size</h6><br>
<br><code><span class="keyword">type</span> <a name="TYPEimpl"></a><code class="type"></code>impl = </code><table class="typetable">
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">GetConst</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">GetVar</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">GetEnv</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">GetMeth</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">SetVar</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">AppConst</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">AppVar</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">AppEnv</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">AppMeth</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">AppConstConst</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">AppConstVar</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">AppConstEnv</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">AppConstMeth</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">AppVarConst</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">AppEnvConst</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">AppMethConst</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">MethAppConst</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">MethAppVar</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">MethAppEnv</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">MethAppMeth</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">SendConst</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">SendVar</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">SendEnv</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">SendMeth</span></code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code><span class="keyword">|</span></code></td>
<td align="left" valign="top" >
<code><span class="constructor">Closure</span> <span class="keyword">of</span> <code class="type"><a href="CamlinternalOO.html#TYPEclosure">closure</a></code></code></td>

</tr></table>


<br>
<a name="6_Parameters"></a>
<h6>Parameters</h6><br>
<br><code><span class="keyword">type</span> <a name="TYPEparams"></a><code class="type"></code>params = {</code><table class="typetable">
<tr>
<td align="left" valign="top" >
<code>&nbsp;&nbsp;</code></td>
<td align="left" valign="top" >
<code><span class="keyword">mutable&nbsp;</span>compact_table&nbsp;: <code class="type">bool</code>;</code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code>&nbsp;&nbsp;</code></td>
<td align="left" valign="top" >
<code><span class="keyword">mutable&nbsp;</span>copy_parent&nbsp;: <code class="type">bool</code>;</code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code>&nbsp;&nbsp;</code></td>
<td align="left" valign="top" >
<code><span class="keyword">mutable&nbsp;</span>clean_when_copying&nbsp;: <code class="type">bool</code>;</code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code>&nbsp;&nbsp;</code></td>
<td align="left" valign="top" >
<code><span class="keyword">mutable&nbsp;</span>retry_count&nbsp;: <code class="type">int</code>;</code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code>&nbsp;&nbsp;</code></td>
<td align="left" valign="top" >
<code><span class="keyword">mutable&nbsp;</span>bucket_small_size&nbsp;: <code class="type">int</code>;</code></td>

</tr></table>
}


<pre><span class="keyword">val</span> <a name="VALparams"></a>params : <code class="type"><a href="CamlinternalOO.html#TYPEparams">params</a></code></pre><br>
<a name="6_Statistics"></a>
<h6>Statistics</h6><br>
<br><code><span class="keyword">type</span> <a name="TYPEstats"></a><code class="type"></code>stats = {</code><table class="typetable">
<tr>
<td align="left" valign="top" >
<code>&nbsp;&nbsp;</code></td>
<td align="left" valign="top" >
<code>classes&nbsp;: <code class="type">int</code>;</code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code>&nbsp;&nbsp;</code></td>
<td align="left" valign="top" >
<code>methods&nbsp;: <code class="type">int</code>;</code></td>

</tr>
<tr>
<td align="left" valign="top" >
<code>&nbsp;&nbsp;</code></td>
<td align="left" valign="top" >
<code>inst_vars&nbsp;: <code class="type">int</code>;</code></td>

</tr></table>
}


<pre><span class="keyword">val</span> <a name="VALstats"></a>stats : <code class="type">unit -> <a href="CamlinternalOO.html#TYPEstats">stats</a></code></pre></body></html>