moonpool/dev/ocaml/Export_info/index.html
2023-08-28 17:11:38 +00:00

34 lines
No EOL
26 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Export_info (ocaml.Export_info)</title><link rel="stylesheet" href="../../_odoc-theme/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../index.html">ocaml</a> &#x00BB; Export_info</nav><header class="odoc-preamble"><h1>Module <code><span>Export_info</span></code></h1><p>Exported information (that is to say, information written into a .cmx file) about a compilation unit.</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec module anchored" id="module-A"><a href="#module-A" class="anchor"></a><code><span><span class="keyword">module</span> A</span><span> = <a href="../Simple_value_approx/index.html">Simple_value_approx</a></span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-value_string_contents"><a href="#type-value_string_contents" class="anchor"></a><code><span><span class="keyword">type</span> value_string_contents</span><span> = </span></code><ol><li id="type-value_string_contents.Contents" class="def variant constructor anchored"><a href="#type-value_string_contents.Contents" class="anchor"></a><code><span>| </span><span><span class="constructor">Contents</span> <span class="keyword">of</span> string</span></code></li><li id="type-value_string_contents.Unknown_or_mutable" class="def variant constructor anchored"><a href="#type-value_string_contents.Unknown_or_mutable" class="anchor"></a><code><span>| </span><span><span class="constructor">Unknown_or_mutable</span></span></code></li></ol></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-value_string"><a href="#type-value_string" class="anchor"></a><code><span><span class="keyword">type</span> value_string</span><span> = </span><span>{</span></code><ol><li id="type-value_string.contents" class="def record field anchored"><a href="#type-value_string.contents" class="anchor"></a><code><span>contents : <a href="#type-value_string_contents">value_string_contents</a>;</span></code></li><li id="type-value_string.size" class="def record field anchored"><a href="#type-value_string.size" class="anchor"></a><code><span>size : int;</span></code></li></ol><code><span>}</span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-value_float_array_contents"><a href="#type-value_float_array_contents" class="anchor"></a><code><span><span class="keyword">type</span> value_float_array_contents</span><span> = </span></code><ol><li id="type-value_float_array_contents.Contents" class="def variant constructor anchored"><a href="#type-value_float_array_contents.Contents" class="anchor"></a><code><span>| </span><span><span class="constructor">Contents</span> <span class="keyword">of</span> <span><span>float option</span> array</span></span></code></li><li id="type-value_float_array_contents.Unknown_or_mutable" class="def variant constructor anchored"><a href="#type-value_float_array_contents.Unknown_or_mutable" class="anchor"></a><code><span>| </span><span><span class="constructor">Unknown_or_mutable</span></span></code></li></ol></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-value_float_array"><a href="#type-value_float_array" class="anchor"></a><code><span><span class="keyword">type</span> value_float_array</span><span> = </span><span>{</span></code><ol><li id="type-value_float_array.contents" class="def record field anchored"><a href="#type-value_float_array.contents" class="anchor"></a><code><span>contents : <a href="#type-value_float_array_contents">value_float_array_contents</a>;</span></code></li><li id="type-value_float_array.size" class="def record field anchored"><a href="#type-value_float_array.size" class="anchor"></a><code><span>size : int;</span></code></li></ol><code><span>}</span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-descr"><a href="#type-descr" class="anchor"></a><code><span><span class="keyword">type</span> descr</span><span> = </span></code><ol><li id="type-descr.Value_block" class="def variant constructor anchored"><a href="#type-descr.Value_block" class="anchor"></a><code><span>| </span><span><span class="constructor">Value_block</span> <span class="keyword">of</span> <a href="../Tag/index.html#type-t">Tag.t</a> * <span><a href="#type-approx">approx</a> array</span></span></code></li><li id="type-descr.Value_mutable_block" class="def variant constructor anchored"><a href="#type-descr.Value_mutable_block" class="anchor"></a><code><span>| </span><span><span class="constructor">Value_mutable_block</span> <span class="keyword">of</span> <a href="../Tag/index.html#type-t">Tag.t</a> * int</span></code></li><li id="type-descr.Value_int" class="def variant constructor anchored"><a href="#type-descr.Value_int" class="anchor"></a><code><span>| </span><span><span class="constructor">Value_int</span> <span class="keyword">of</span> int</span></code></li><li id="type-descr.Value_char" class="def variant constructor anchored"><a href="#type-descr.Value_char" class="anchor"></a><code><span>| </span><span><span class="constructor">Value_char</span> <span class="keyword">of</span> char</span></code></li><li id="type-descr.Value_float" class="def variant constructor anchored"><a href="#type-descr.Value_float" class="anchor"></a><code><span>| </span><span><span class="constructor">Value_float</span> <span class="keyword">of</span> float</span></code></li><li id="type-descr.Value_float_array" class="def variant constructor anchored"><a href="#type-descr.Value_float_array" class="anchor"></a><code><span>| </span><span><span class="constructor">Value_float_array</span> <span class="keyword">of</span> <a href="#type-value_float_array">value_float_array</a></span></code></li><li id="type-descr.Value_boxed_int" class="def variant constructor anchored"><a href="#type-descr.Value_boxed_int" class="anchor"></a><code><span>| </span><span><span class="constructor">Value_boxed_int</span> : <span><span class="type-var">'a</span> <a href="../Simple_value_approx/index.html#type-boxed_int">A.boxed_int</a></span> * <span class="type-var">'a</span> <span class="arrow">&#45;&gt;</span> <a href="#type-descr">descr</a></span></code></li><li id="type-descr.Value_string" class="def variant constructor anchored"><a href="#type-descr.Value_string" class="anchor"></a><code><span>| </span><span><span class="constructor">Value_string</span> <span class="keyword">of</span> <a href="#type-value_string">value_string</a></span></code></li><li id="type-descr.Value_closure" class="def variant constructor anchored"><a href="#type-descr.Value_closure" class="anchor"></a><code><span>| </span><span><span class="constructor">Value_closure</span> <span class="keyword">of</span> <a href="#type-value_closure">value_closure</a></span></code></li><li id="type-descr.Value_set_of_closures" class="def variant constructor anchored"><a href="#type-descr.Value_set_of_closures" class="anchor"></a><code><span>| </span><span><span class="constructor">Value_set_of_closures</span> <span class="keyword">of</span> <a href="#type-value_set_of_closures">value_set_of_closures</a></span></code></li><li id="type-descr.Value_unknown_descr" class="def variant constructor anchored"><a href="#type-descr.Value_unknown_descr" class="anchor"></a><code><span>| </span><span><span class="constructor">Value_unknown_descr</span></span></code></li></ol></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-value_closure"><a href="#type-value_closure" class="anchor"></a><code><span><span class="keyword">and</span> value_closure</span><span> = </span><span>{</span></code><ol><li id="type-value_closure.closure_id" class="def record field anchored"><a href="#type-value_closure.closure_id" class="anchor"></a><code><span>closure_id : <a href="../Closure_id/index.html#type-t">Closure_id.t</a>;</span></code></li><li id="type-value_closure.set_of_closures" class="def record field anchored"><a href="#type-value_closure.set_of_closures" class="anchor"></a><code><span>set_of_closures : <a href="#type-value_set_of_closures">value_set_of_closures</a>;</span></code></li></ol><code><span>}</span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-value_set_of_closures"><a href="#type-value_set_of_closures" class="anchor"></a><code><span><span class="keyword">and</span> value_set_of_closures</span><span> = </span><span>{</span></code><ol><li id="type-value_set_of_closures.set_of_closures_id" class="def record field anchored"><a href="#type-value_set_of_closures.set_of_closures_id" class="anchor"></a><code><span>set_of_closures_id : <a href="../Set_of_closures_id/index.html#type-t">Set_of_closures_id.t</a>;</span></code></li><li id="type-value_set_of_closures.bound_vars" class="def record field anchored"><a href="#type-value_set_of_closures.bound_vars" class="anchor"></a><code><span>bound_vars : <span><a href="#type-approx">approx</a> <a href="../Var_within_closure/Map/index.html#type-t">Var_within_closure.Map.t</a></span>;</span></code></li><li id="type-value_set_of_closures.free_vars" class="def record field anchored"><a href="#type-value_set_of_closures.free_vars" class="anchor"></a><code><span>free_vars : <span><a href="../Flambda/index.html#type-specialised_to">Flambda.specialised_to</a> <a href="../Variable/Map/index.html#type-t">Variable.Map.t</a></span>;</span></code></li><li id="type-value_set_of_closures.results" class="def record field anchored"><a href="#type-value_set_of_closures.results" class="anchor"></a><code><span>results : <span><a href="#type-approx">approx</a> <a href="../Closure_id/Map/index.html#type-t">Closure_id.Map.t</a></span>;</span></code></li><li id="type-value_set_of_closures.aliased_symbol" class="def record field anchored"><a href="#type-value_set_of_closures.aliased_symbol" class="anchor"></a><code><span>aliased_symbol : <span><a href="../Symbol/index.html#type-t">Symbol.t</a> option</span>;</span></code></li></ol><code><span>}</span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-approx"><a href="#type-approx" class="anchor"></a><code><span><span class="keyword">and</span> approx</span><span> = </span></code><ol><li id="type-approx.Value_unknown" class="def variant constructor anchored"><a href="#type-approx.Value_unknown" class="anchor"></a><code><span>| </span><span><span class="constructor">Value_unknown</span></span></code></li><li id="type-approx.Value_id" class="def variant constructor anchored"><a href="#type-approx.Value_id" class="anchor"></a><code><span>| </span><span><span class="constructor">Value_id</span> <span class="keyword">of</span> <a href="../Export_id/index.html#type-t">Export_id.t</a></span></code></li><li id="type-approx.Value_symbol" class="def variant constructor anchored"><a href="#type-approx.Value_symbol" class="anchor"></a><code><span>| </span><span><span class="constructor">Value_symbol</span> <span class="keyword">of</span> <a href="../Symbol/index.html#type-t">Symbol.t</a></span></code></li></ol></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = <span class="keyword">private</span> </span><span>{</span></code><ol><li id="type-t.sets_of_closures" class="def record field anchored"><a href="#type-t.sets_of_closures" class="anchor"></a><code><span>sets_of_closures : <span><a href="../Simple_value_approx/index.html#type-function_declarations">A.function_declarations</a> <a href="../Set_of_closures_id/Map/index.html#type-t">Set_of_closures_id.Map.t</a></span>;</span></code><div class="def-doc"><span class="comment-delim">(*</span><p>Code of exported functions indexed by set of closures IDs.</p><span class="comment-delim">*)</span></div></li><li id="type-t.values" class="def record field anchored"><a href="#type-t.values" class="anchor"></a><code><span>values : <span><span><a href="#type-descr">descr</a> <a href="../Export_id/Map/index.html#type-t">Export_id.Map.t</a></span> <a href="../Compilation_unit/Map/index.html#type-t">Compilation_unit.Map.t</a></span>;</span></code><div class="def-doc"><span class="comment-delim">(*</span><p>Structure of exported values.</p><span class="comment-delim">*)</span></div></li><li id="type-t.symbol_id" class="def record field anchored"><a href="#type-t.symbol_id" class="anchor"></a><code><span>symbol_id : <span><a href="../Export_id/index.html#type-t">Export_id.t</a> <a href="../Symbol/Map/index.html#type-t">Symbol.Map.t</a></span>;</span></code><div class="def-doc"><span class="comment-delim">(*</span><p>Associates symbols and values.</p><span class="comment-delim">*)</span></div></li><li id="type-t.offset_fun" class="def record field anchored"><a href="#type-t.offset_fun" class="anchor"></a><code><span>offset_fun : <span>int <a href="../Closure_id/Map/index.html#type-t">Closure_id.Map.t</a></span>;</span></code><div class="def-doc"><span class="comment-delim">(*</span><p>Positions of function pointers in their closures.</p><span class="comment-delim">*)</span></div></li><li id="type-t.offset_fv" class="def record field anchored"><a href="#type-t.offset_fv" class="anchor"></a><code><span>offset_fv : <span>int <a href="../Var_within_closure/Map/index.html#type-t">Var_within_closure.Map.t</a></span>;</span></code><div class="def-doc"><span class="comment-delim">(*</span><p>Positions of value pointers in their closures.</p><span class="comment-delim">*)</span></div></li><li id="type-t.constant_closures" class="def record field anchored"><a href="#type-t.constant_closures" class="anchor"></a><code><span>constant_closures : <a href="../Closure_id/Set/index.html#type-t">Closure_id.Set.t</a>;</span></code></li><li id="type-t.invariant_params" class="def record field anchored"><a href="#type-t.invariant_params" class="anchor"></a><code><span>invariant_params : <span><span><a href="../Variable/Set/index.html#type-t">Variable.Set.t</a> <a href="../Variable/Map/index.html#type-t">Variable.Map.t</a></span> <a href="../Set_of_closures_id/Map/index.html#type-t">Set_of_closures_id.Map.t</a></span>;</span></code></li><li id="type-t.recursive" class="def record field anchored"><a href="#type-t.recursive" class="anchor"></a><code><span>recursive : <span><a href="../Variable/Set/index.html#type-t">Variable.Set.t</a> <a href="../Set_of_closures_id/Map/index.html#type-t">Set_of_closures_id.Map.t</a></span>;</span></code></li></ol><code><span>}</span></code></div><div class="spec-doc"><p>A structure that describes what a single compilation unit exports.</p></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-transient"><a href="#type-transient" class="anchor"></a><code><span><span class="keyword">type</span> transient</span><span> = <span class="keyword">private</span> </span><span>{</span></code><ol><li id="type-transient.sets_of_closures" class="def record field anchored"><a href="#type-transient.sets_of_closures" class="anchor"></a><code><span>sets_of_closures : <span><a href="../Simple_value_approx/index.html#type-function_declarations">A.function_declarations</a> <a href="../Set_of_closures_id/Map/index.html#type-t">Set_of_closures_id.Map.t</a></span>;</span></code></li><li id="type-transient.values" class="def record field anchored"><a href="#type-transient.values" class="anchor"></a><code><span>values : <span><span><a href="#type-descr">descr</a> <a href="../Export_id/Map/index.html#type-t">Export_id.Map.t</a></span> <a href="../Compilation_unit/Map/index.html#type-t">Compilation_unit.Map.t</a></span>;</span></code></li><li id="type-transient.symbol_id" class="def record field anchored"><a href="#type-transient.symbol_id" class="anchor"></a><code><span>symbol_id : <span><a href="../Export_id/index.html#type-t">Export_id.t</a> <a href="../Symbol/Map/index.html#type-t">Symbol.Map.t</a></span>;</span></code></li><li id="type-transient.invariant_params" class="def record field anchored"><a href="#type-transient.invariant_params" class="anchor"></a><code><span>invariant_params : <span><span><a href="../Variable/Set/index.html#type-t">Variable.Set.t</a> <a href="../Variable/Map/index.html#type-t">Variable.Map.t</a></span> <a href="../Set_of_closures_id/Map/index.html#type-t">Set_of_closures_id.Map.t</a></span>;</span></code></li><li id="type-transient.recursive" class="def record field anchored"><a href="#type-transient.recursive" class="anchor"></a><code><span>recursive : <span><a href="../Variable/Set/index.html#type-t">Variable.Set.t</a> <a href="../Set_of_closures_id/Map/index.html#type-t">Set_of_closures_id.Map.t</a></span>;</span></code></li><li id="type-transient.relevant_local_closure_ids" class="def record field anchored"><a href="#type-transient.relevant_local_closure_ids" class="anchor"></a><code><span>relevant_local_closure_ids : <a href="../Closure_id/Set/index.html#type-t">Closure_id.Set.t</a>;</span></code></li><li id="type-transient.relevant_imported_closure_ids" class="def record field anchored"><a href="#type-transient.relevant_imported_closure_ids" class="anchor"></a><code><span>relevant_imported_closure_ids : <a href="../Closure_id/Set/index.html#type-t">Closure_id.Set.t</a>;</span></code></li><li id="type-transient.relevant_local_vars_within_closure" class="def record field anchored"><a href="#type-transient.relevant_local_vars_within_closure" class="anchor"></a><code><span>relevant_local_vars_within_closure : <a href="../Var_within_closure/Set/index.html#type-t">Var_within_closure.Set.t</a>;</span></code></li><li id="type-transient.relevant_imported_vars_within_closure" class="def record field anchored"><a href="#type-transient.relevant_imported_vars_within_closure" class="anchor"></a><code><span>relevant_imported_vars_within_closure : <a href="../Var_within_closure/Set/index.html#type-t">Var_within_closure.Set.t</a>;</span></code></li></ol><code><span>}</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-empty"><a href="#val-empty" class="anchor"></a><code><span><span class="keyword">val</span> empty : <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Export information for a compilation unit that exports nothing.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-opaque_transient"><a href="#val-opaque_transient" class="anchor"></a><code><span><span class="keyword">val</span> opaque_transient :
<span>compilation_unit:<a href="../Compilation_unit/index.html#type-t">Compilation_unit.t</a> <span class="arrow">&#45;&gt;</span></span>
<span>root_symbol:<a href="../Symbol/index.html#type-t">Symbol.t</a> <span class="arrow">&#45;&gt;</span></span>
<a href="#type-transient">transient</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-create"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create :
<span>sets_of_closures:<span><a href="../Simple_value_approx/index.html#type-function_declarations">A.function_declarations</a> <a href="../Set_of_closures_id/Map/index.html#type-t">Set_of_closures_id.Map.t</a></span> <span class="arrow">&#45;&gt;</span></span>
<span>values:<span><span><a href="#type-descr">descr</a> <a href="../Export_id/Map/index.html#type-t">Export_id.Map.t</a></span> <a href="../Compilation_unit/Map/index.html#type-t">Compilation_unit.Map.t</a></span> <span class="arrow">&#45;&gt;</span></span>
<span>symbol_id:<span><a href="../Export_id/index.html#type-t">Export_id.t</a> <a href="../Symbol/Map/index.html#type-t">Symbol.Map.t</a></span> <span class="arrow">&#45;&gt;</span></span>
<span>offset_fun:<span>int <a href="../Closure_id/Map/index.html#type-t">Closure_id.Map.t</a></span> <span class="arrow">&#45;&gt;</span></span>
<span>offset_fv:<span>int <a href="../Var_within_closure/Map/index.html#type-t">Var_within_closure.Map.t</a></span> <span class="arrow">&#45;&gt;</span></span>
<span>constant_closures:<a href="../Closure_id/Set/index.html#type-t">Closure_id.Set.t</a> <span class="arrow">&#45;&gt;</span></span>
<span>invariant_params:<span><span><a href="../Variable/Set/index.html#type-t">Variable.Set.t</a> <a href="../Variable/Map/index.html#type-t">Variable.Map.t</a></span> <a href="../Set_of_closures_id/Map/index.html#type-t">Set_of_closures_id.Map.t</a></span> <span class="arrow">&#45;&gt;</span></span>
<span>recursive:<span><a href="../Variable/Set/index.html#type-t">Variable.Set.t</a> <a href="../Set_of_closures_id/Map/index.html#type-t">Set_of_closures_id.Map.t</a></span> <span class="arrow">&#45;&gt;</span></span>
<a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Create a new export information structure.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-create_transient"><a href="#val-create_transient" class="anchor"></a><code><span><span class="keyword">val</span> create_transient :
<span>sets_of_closures:<span><a href="../Simple_value_approx/index.html#type-function_declarations">A.function_declarations</a> <a href="../Set_of_closures_id/Map/index.html#type-t">Set_of_closures_id.Map.t</a></span> <span class="arrow">&#45;&gt;</span></span>
<span>values:<span><span><a href="#type-descr">descr</a> <a href="../Export_id/Map/index.html#type-t">Export_id.Map.t</a></span> <a href="../Compilation_unit/Map/index.html#type-t">Compilation_unit.Map.t</a></span> <span class="arrow">&#45;&gt;</span></span>
<span>symbol_id:<span><a href="../Export_id/index.html#type-t">Export_id.t</a> <a href="../Symbol/Map/index.html#type-t">Symbol.Map.t</a></span> <span class="arrow">&#45;&gt;</span></span>
<span>invariant_params:<span><span><a href="../Variable/Set/index.html#type-t">Variable.Set.t</a> <a href="../Variable/Map/index.html#type-t">Variable.Map.t</a></span> <a href="../Set_of_closures_id/Map/index.html#type-t">Set_of_closures_id.Map.t</a></span> <span class="arrow">&#45;&gt;</span></span>
<span>recursive:<span><a href="../Variable/Set/index.html#type-t">Variable.Set.t</a> <a href="../Set_of_closures_id/Map/index.html#type-t">Set_of_closures_id.Map.t</a></span> <span class="arrow">&#45;&gt;</span></span>
<span>relevant_local_closure_ids:<a href="../Closure_id/Set/index.html#type-t">Closure_id.Set.t</a> <span class="arrow">&#45;&gt;</span></span>
<span>relevant_imported_closure_ids:<a href="../Closure_id/Set/index.html#type-t">Closure_id.Set.t</a> <span class="arrow">&#45;&gt;</span></span>
<span>relevant_local_vars_within_closure:<a href="../Var_within_closure/Set/index.html#type-t">Var_within_closure.Set.t</a> <span class="arrow">&#45;&gt;</span></span>
<span>relevant_imported_vars_within_closure:<a href="../Var_within_closure/Set/index.html#type-t">Var_within_closure.Set.t</a> <span class="arrow">&#45;&gt;</span></span>
<a href="#type-transient">transient</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-t_of_transient"><a href="#val-t_of_transient" class="anchor"></a><code><span><span class="keyword">val</span> t_of_transient :
<span><a href="#type-transient">transient</a> <span class="arrow">&#45;&gt;</span></span>
<span>program:<a href="../Flambda/index.html#type-program">Flambda.program</a> <span class="arrow">&#45;&gt;</span></span>
<span>local_offset_fun:<span>int <a href="../Closure_id/Map/index.html#type-t">Closure_id.Map.t</a></span> <span class="arrow">&#45;&gt;</span></span>
<span>local_offset_fv:<span>int <a href="../Var_within_closure/Map/index.html#type-t">Var_within_closure.Map.t</a></span> <span class="arrow">&#45;&gt;</span></span>
<span>imported_offset_fun:<span>int <a href="../Closure_id/Map/index.html#type-t">Closure_id.Map.t</a></span> <span class="arrow">&#45;&gt;</span></span>
<span>imported_offset_fv:<span>int <a href="../Var_within_closure/Map/index.html#type-t">Var_within_closure.Map.t</a></span> <span class="arrow">&#45;&gt;</span></span>
<span>constant_closures:<a href="../Closure_id/Set/index.html#type-t">Closure_id.Set.t</a> <span class="arrow">&#45;&gt;</span></span>
<a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Record information about the layout of closures and which sets of closures are constant. These are all worked out during the <code>Flambda_to_clambda</code> pass.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-merge"><a href="#val-merge" class="anchor"></a><code><span><span class="keyword">val</span> merge : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Union of export information. Verifies that there are no identifier clashes.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-find_description"><a href="#val-find_description" class="anchor"></a><code><span><span class="keyword">val</span> find_description : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../Export_id/index.html#type-t">Export_id.t</a> <span class="arrow">&#45;&gt;</span></span> <a href="#type-descr">descr</a></span></code></div><div class="spec-doc"><p>Look up the description of an exported value given its export ID.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-nest_eid_map"><a href="#val-nest_eid_map" class="anchor"></a><code><span><span class="keyword">val</span> nest_eid_map :
<span><span><span class="type-var">'a</span> <a href="../Export_id/Map/index.html#type-t">Export_id.Map.t</a></span> <span class="arrow">&#45;&gt;</span></span>
<span><span><span class="type-var">'a</span> <a href="../Export_id/Map/index.html#type-t">Export_id.Map.t</a></span> <a href="../Compilation_unit/Map/index.html#type-t">Compilation_unit.Map.t</a></span></span></code></div><div class="spec-doc"><p>Partition a mapping from export IDs by compilation unit.</p></div></div></div></body></html>