mirror of
https://github.com/c-cube/moonpool.git
synced 2025-12-18 16:46:41 -05:00
184 lines
84 KiB
HTML
184 lines
84 KiB
HTML
<!DOCTYPE html>
|
||
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Ctype (ocaml.Ctype)</title><meta charset="utf-8"/><link rel="stylesheet" href="../../_odoc-theme/odoc.css"/><meta name="generator" content="odoc 2.4.2"/><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> » Ctype</nav><header class="odoc-preamble"><h1>Module <code><span>Ctype</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec exception anchored" id="exception-Unify"><a href="#exception-Unify" class="anchor"></a><code><span><span class="keyword">exception</span> </span><span><span class="exception">Unify</span> <span class="keyword">of</span> <a href="../Errortrace/index.html#type-unification_error">Errortrace.unification_error</a></span></code></div></div><div class="odoc-spec"><div class="spec exception anchored" id="exception-Equality"><a href="#exception-Equality" class="anchor"></a><code><span><span class="keyword">exception</span> </span><span><span class="exception">Equality</span> <span class="keyword">of</span> <a href="../Errortrace/index.html#type-equality_error">Errortrace.equality_error</a></span></code></div></div><div class="odoc-spec"><div class="spec exception anchored" id="exception-Moregen"><a href="#exception-Moregen" class="anchor"></a><code><span><span class="keyword">exception</span> </span><span><span class="exception">Moregen</span> <span class="keyword">of</span> <a href="../Errortrace/index.html#type-moregen_error">Errortrace.moregen_error</a></span></code></div></div><div class="odoc-spec"><div class="spec exception anchored" id="exception-Subtype"><a href="#exception-Subtype" class="anchor"></a><code><span><span class="keyword">exception</span> </span><span><span class="exception">Subtype</span> <span class="keyword">of</span> <a href="../Errortrace/Subtype/index.html#type-error">Errortrace.Subtype.error</a></span></code></div></div><div class="odoc-spec"><div class="spec exception anchored" id="exception-Escape"><a href="#exception-Escape" class="anchor"></a><code><span><span class="keyword">exception</span> </span><span><span class="exception">Escape</span> <span class="keyword">of</span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <a href="../Errortrace/index.html#type-escape">Errortrace.escape</a></span></span></code></div></div><div class="odoc-spec"><div class="spec exception anchored" id="exception-Tags"><a href="#exception-Tags" class="anchor"></a><code><span><span class="keyword">exception</span> </span><span><span class="exception">Tags</span> <span class="keyword">of</span> <a href="../Asttypes/index.html#type-label">Asttypes.label</a> * <a href="../Asttypes/index.html#type-label">Asttypes.label</a></span></code></div></div><div class="odoc-spec"><div class="spec exception anchored" id="exception-Cannot_expand"><a href="#exception-Cannot_expand" class="anchor"></a><code><span><span class="keyword">exception</span> </span><span><span class="exception">Cannot_expand</span></span></code></div></div><div class="odoc-spec"><div class="spec exception anchored" id="exception-Cannot_apply"><a href="#exception-Cannot_apply" class="anchor"></a><code><span><span class="keyword">exception</span> </span><span><span class="exception">Cannot_apply</span></span></code></div></div><div class="odoc-spec"><div class="spec exception anchored" id="exception-Matches_failure"><a href="#exception-Matches_failure" class="anchor"></a><code><span><span class="keyword">exception</span> </span><span><span class="exception">Matches_failure</span> <span class="keyword">of</span> <a href="../Env/index.html#type-t">Env.t</a> * <a href="../Errortrace/index.html#type-unification_error">Errortrace.unification_error</a></span></code></div></div><div class="odoc-spec"><div class="spec exception anchored" id="exception-Incompatible"><a href="#exception-Incompatible" class="anchor"></a><code><span><span class="keyword">exception</span> </span><span><span class="exception">Incompatible</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-init_def"><a href="#val-init_def" class="anchor"></a><code><span><span class="keyword">val</span> init_def : <span>int <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-begin_def"><a href="#val-begin_def" class="anchor"></a><code><span><span class="keyword">val</span> begin_def : <span>unit <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-end_def"><a href="#val-end_def" class="anchor"></a><code><span><span class="keyword">val</span> end_def : <span>unit <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-begin_class_def"><a href="#val-begin_class_def" class="anchor"></a><code><span><span class="keyword">val</span> begin_class_def : <span>unit <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-raise_nongen_level"><a href="#val-raise_nongen_level" class="anchor"></a><code><span><span class="keyword">val</span> raise_nongen_level : <span>unit <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-reset_global_level"><a href="#val-reset_global_level" class="anchor"></a><code><span><span class="keyword">val</span> reset_global_level : <span>unit <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-increase_global_level"><a href="#val-increase_global_level" class="anchor"></a><code><span><span class="keyword">val</span> increase_global_level : <span>unit <span class="arrow">-></span></span> int</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-restore_global_level"><a href="#val-restore_global_level" class="anchor"></a><code><span><span class="keyword">val</span> restore_global_level : <span>int <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-levels"><a href="#type-levels" class="anchor"></a><code><span><span class="keyword">type</span> levels</span><span> = </span><span>{</span></code><ol><li id="type-levels.current_level" class="def record field anchored"><a href="#type-levels.current_level" class="anchor"></a><code><span>current_level : int;</span></code></li><li id="type-levels.nongen_level" class="def record field anchored"><a href="#type-levels.nongen_level" class="anchor"></a><code><span>nongen_level : int;</span></code></li><li id="type-levels.global_level" class="def record field anchored"><a href="#type-levels.global_level" class="anchor"></a><code><span>global_level : int;</span></code></li><li id="type-levels.saved_level" class="def record field anchored"><a href="#type-levels.saved_level" class="anchor"></a><code><span>saved_level : <span><span>(int * int)</span> list</span>;</span></code></li></ol><code><span>}</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-save_levels"><a href="#val-save_levels" class="anchor"></a><code><span><span class="keyword">val</span> save_levels : <span>unit <span class="arrow">-></span></span> <a href="#type-levels">levels</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-set_levels"><a href="#val-set_levels" class="anchor"></a><code><span><span class="keyword">val</span> set_levels : <span><a href="#type-levels">levels</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-create_scope"><a href="#val-create_scope" class="anchor"></a><code><span><span class="keyword">val</span> create_scope : <span>unit <span class="arrow">-></span></span> int</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-newty"><a href="#val-newty" class="anchor"></a><code><span><span class="keyword">val</span> newty : <span><a href="../Types/index.html#type-type_desc">Types.type_desc</a> <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-new_scoped_ty"><a href="#val-new_scoped_ty" class="anchor"></a><code><span><span class="keyword">val</span> new_scoped_ty : <span>int <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_desc">Types.type_desc</a> <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-newvar"><a href="#val-newvar" class="anchor"></a><code><span><span class="keyword">val</span> newvar : <span><span class="optlabel">?name</span>:string <span class="arrow">-></span></span> <span>unit <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-newvar2"><a href="#val-newvar2" class="anchor"></a><code><span><span class="keyword">val</span> newvar2 : <span><span class="optlabel">?name</span>:string <span class="arrow">-></span></span> <span>int <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-new_global_var"><a href="#val-new_global_var" class="anchor"></a><code><span><span class="keyword">val</span> new_global_var : <span><span class="optlabel">?name</span>:string <span class="arrow">-></span></span> <span>unit <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-newobj"><a href="#val-newobj" class="anchor"></a><code><span><span class="keyword">val</span> newobj : <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-newconstr"><a href="#val-newconstr" class="anchor"></a><code><span><span class="keyword">val</span> newconstr : <span><a href="../Path/index.html#type-t">Path.t</a> <span class="arrow">-></span></span> <span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-none"><a href="#val-none" class="anchor"></a><code><span><span class="keyword">val</span> none : <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-object_fields"><a href="#val-object_fields" class="anchor"></a><code><span><span class="keyword">val</span> object_fields : <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-flatten_fields"><a href="#val-flatten_fields" class="anchor"></a><code><span><span class="keyword">val</span> flatten_fields :
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<span><span>(string * <a href="../Types/index.html#type-field_kind">Types.field_kind</a> * <a href="../Types/index.html#type-type_expr">Types.type_expr</a>)</span> list</span> * <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div><div class="spec-doc"><p>Transform a field type into a list of pairs label-type. The fields are sorted.</p><p>Beware of the interaction with GADTs:</p><p>Due to the introduction of object indexes for GADTs, the row variable of an object may now be an expansible type abbreviation. A first consequence is that <code>flatten_fields</code> will not completely flatten the object, since the type abbreviation will not be expanded (<code>flatten_fields</code> does not receive the current environment). Another consequence is that various functions may be called with the expansion of this type abbreviation, which is a Tfield, e.g. during printing.</p><p>Concrete problems have been fixed, but new bugs may appear in the future. (Test cases were added to typing-gadts/test.ml)</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-associate_fields"><a href="#val-associate_fields" class="anchor"></a><code><span><span class="keyword">val</span> associate_fields :
|
||
<span><span><span>(string * <a href="../Types/index.html#type-field_kind">Types.field_kind</a> * <a href="../Types/index.html#type-type_expr">Types.type_expr</a>)</span> list</span> <span class="arrow">-></span></span>
|
||
<span><span><span>(string * <a href="../Types/index.html#type-field_kind">Types.field_kind</a> * <a href="../Types/index.html#type-type_expr">Types.type_expr</a>)</span> list</span> <span class="arrow">-></span></span>
|
||
<span><span>(string
|
||
* <a href="../Types/index.html#type-field_kind">Types.field_kind</a>
|
||
* <a href="../Types/index.html#type-type_expr">Types.type_expr</a>
|
||
* <a href="../Types/index.html#type-field_kind">Types.field_kind</a>
|
||
* <a href="../Types/index.html#type-type_expr">Types.type_expr</a>)</span>
|
||
list</span>
|
||
* <span><span>(string * <a href="../Types/index.html#type-field_kind">Types.field_kind</a> * <a href="../Types/index.html#type-type_expr">Types.type_expr</a>)</span> list</span>
|
||
* <span><span>(string * <a href="../Types/index.html#type-field_kind">Types.field_kind</a> * <a href="../Types/index.html#type-type_expr">Types.type_expr</a>)</span> list</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-opened_object"><a href="#val-opened_object" class="anchor"></a><code><span><span class="keyword">val</span> opened_object : <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-set_object_name"><a href="#val-set_object_name" class="anchor"></a><code><span><span class="keyword">val</span> set_object_name :
|
||
<span><a href="../Ident/index.html#type-t">Ident.t</a> <span class="arrow">-></span></span>
|
||
<span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-remove_object_name"><a href="#val-remove_object_name" class="anchor"></a><code><span><span class="keyword">val</span> remove_object_name : <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-find_cltype_for_path"><a href="#val-find_cltype_for_path" class="anchor"></a><code><span><span class="keyword">val</span> find_cltype_for_path :
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Path/index.html#type-t">Path.t</a> <span class="arrow">-></span></span>
|
||
<a href="../Types/index.html#type-type_declaration">Types.type_declaration</a> * <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-sort_row_fields"><a href="#val-sort_row_fields" class="anchor"></a><code><span><span class="keyword">val</span> sort_row_fields :
|
||
<span><span><span>(<a href="../Asttypes/index.html#type-label">Asttypes.label</a> * <a href="../Types/index.html#type-row_field">Types.row_field</a>)</span> list</span> <span class="arrow">-></span></span>
|
||
<span><span>(<a href="../Asttypes/index.html#type-label">Asttypes.label</a> * <a href="../Types/index.html#type-row_field">Types.row_field</a>)</span> list</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-merge_row_fields"><a href="#val-merge_row_fields" class="anchor"></a><code><span><span class="keyword">val</span> merge_row_fields :
|
||
<span><span><span>(<a href="../Asttypes/index.html#type-label">Asttypes.label</a> * <a href="../Types/index.html#type-row_field">Types.row_field</a>)</span> list</span> <span class="arrow">-></span></span>
|
||
<span><span><span>(<a href="../Asttypes/index.html#type-label">Asttypes.label</a> * <a href="../Types/index.html#type-row_field">Types.row_field</a>)</span> list</span> <span class="arrow">-></span></span>
|
||
<span><span>(<a href="../Asttypes/index.html#type-label">Asttypes.label</a> * <a href="../Types/index.html#type-row_field">Types.row_field</a>)</span> list</span>
|
||
* <span><span>(<a href="../Asttypes/index.html#type-label">Asttypes.label</a> * <a href="../Types/index.html#type-row_field">Types.row_field</a>)</span> list</span>
|
||
* <span><span>(<a href="../Asttypes/index.html#type-label">Asttypes.label</a> * <a href="../Types/index.html#type-row_field">Types.row_field</a> * <a href="../Types/index.html#type-row_field">Types.row_field</a>)</span> list</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-filter_row_fields"><a href="#val-filter_row_fields" class="anchor"></a><code><span><span class="keyword">val</span> filter_row_fields :
|
||
<span>bool <span class="arrow">-></span></span>
|
||
<span><span><span>(<a href="../Asttypes/index.html#type-label">Asttypes.label</a> * <a href="../Types/index.html#type-row_field">Types.row_field</a>)</span> list</span> <span class="arrow">-></span></span>
|
||
<span><span>(<a href="../Asttypes/index.html#type-label">Asttypes.label</a> * <a href="../Types/index.html#type-row_field">Types.row_field</a>)</span> list</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-generalize"><a href="#val-generalize" class="anchor"></a><code><span><span class="keyword">val</span> generalize : <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-lower_contravariant"><a href="#val-lower_contravariant" class="anchor"></a><code><span><span class="keyword">val</span> lower_contravariant : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-lower_variables_only"><a href="#val-lower_variables_only" class="anchor"></a><code><span><span class="keyword">val</span> lower_variables_only : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span>int <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-generalize_structure"><a href="#val-generalize_structure" class="anchor"></a><code><span><span class="keyword">val</span> generalize_structure : <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-generalize_class_type"><a href="#val-generalize_class_type" class="anchor"></a><code><span><span class="keyword">val</span> generalize_class_type : <span><a href="../Types/index.html#type-class_type">Types.class_type</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-generalize_class_type_structure"><a href="#val-generalize_class_type_structure" class="anchor"></a><code><span><span class="keyword">val</span> generalize_class_type_structure : <span><a href="../Types/index.html#type-class_type">Types.class_type</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-generalize_class_signature_spine"><a href="#val-generalize_class_signature_spine" class="anchor"></a><code><span><span class="keyword">val</span> generalize_class_signature_spine : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-class_signature">Types.class_signature</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-correct_levels"><a href="#val-correct_levels" class="anchor"></a><code><span><span class="keyword">val</span> correct_levels : <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-limited_generalize"><a href="#val-limited_generalize" class="anchor"></a><code><span><span class="keyword">val</span> limited_generalize : <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-limited_generalize_class_type"><a href="#val-limited_generalize_class_type" class="anchor"></a><code><span><span class="keyword">val</span> limited_generalize_class_type : <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-class_type">Types.class_type</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-fully_generic"><a href="#val-fully_generic" class="anchor"></a><code><span><span class="keyword">val</span> fully_generic : <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-check_scope_escape"><a href="#val-check_scope_escape" class="anchor"></a><code><span><span class="keyword">val</span> check_scope_escape : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span>int <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-instance"><a href="#val-instance" class="anchor"></a><code><span><span class="keyword">val</span> instance : <span><span class="optlabel">?partial</span>:bool <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-generic_instance"><a href="#val-generic_instance" class="anchor"></a><code><span><span class="keyword">val</span> generic_instance : <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-instance_list"><a href="#val-instance_list" class="anchor"></a><code><span><span class="keyword">val</span> instance_list : <span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-new_local_type"><a href="#val-new_local_type" class="anchor"></a><code><span><span class="keyword">val</span> new_local_type :
|
||
<span><span class="optlabel">?loc</span>:<a href="../Location/index.html#type-t">Location.t</a> <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?manifest_and_scope</span>:<span>(<a href="../Types/index.html#type-type_expr">Types.type_expr</a> * int)</span> <span class="arrow">-></span></span>
|
||
<span>unit <span class="arrow">-></span></span>
|
||
<a href="../Types/index.html#type-type_declaration">Types.type_declaration</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-existential_name"><a href="#val-existential_name" class="anchor"></a><code><span><span class="keyword">val</span> existential_name :
|
||
<span><a href="../Types/index.html#type-constructor_description">Types.constructor_description</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
string</span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-existential_treatment"><a href="#type-existential_treatment" class="anchor"></a><code><span><span class="keyword">type</span> existential_treatment</span><span> = </span></code><ol><li id="type-existential_treatment.Keep_existentials_flexible" class="def variant constructor anchored"><a href="#type-existential_treatment.Keep_existentials_flexible" class="anchor"></a><code><span>| </span><span><span class="constructor">Keep_existentials_flexible</span></span></code></li><li id="type-existential_treatment.Make_existentials_abstract" class="def variant constructor anchored"><a href="#type-existential_treatment.Make_existentials_abstract" class="anchor"></a><code><span>| </span><span><span class="constructor">Make_existentials_abstract</span> <span class="keyword">of</span> </span><span>{</span></code><ol><li id="type-existential_treatment.env" class="def record field anchored"><a href="#type-existential_treatment.env" class="anchor"></a><code><span>env : <span><a href="../Env/index.html#type-t">Env.t</a> <a href="../Stdlib/index.html#type-ref">ref</a></span>;</span></code></li><li id="type-existential_treatment.scope" class="def record field anchored"><a href="#type-existential_treatment.scope" class="anchor"></a><code><span>scope : int;</span></code></li></ol><code><span>}</span></code></li></ol></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-instance_constructor"><a href="#val-instance_constructor" class="anchor"></a><code><span><span class="keyword">val</span> instance_constructor :
|
||
<span><a href="#type-existential_treatment">existential_treatment</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-constructor_description">Types.constructor_description</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> * <a href="../Types/index.html#type-type_expr">Types.type_expr</a> * <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-instance_parameterized_type"><a href="#val-instance_parameterized_type" class="anchor"></a><code><span><span class="keyword">val</span> instance_parameterized_type :
|
||
<span><span class="optlabel">?keep_names</span>:bool <span class="arrow">-></span></span>
|
||
<span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> * <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-instance_parameterized_type_2"><a href="#val-instance_parameterized_type_2" class="anchor"></a><code><span><span class="keyword">val</span> instance_parameterized_type_2 :
|
||
<span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span>
|
||
<span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> * <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> * <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-instance_declaration"><a href="#val-instance_declaration" class="anchor"></a><code><span><span class="keyword">val</span> instance_declaration : <span><a href="../Types/index.html#type-type_declaration">Types.type_declaration</a> <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_declaration">Types.type_declaration</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-generic_instance_declaration"><a href="#val-generic_instance_declaration" class="anchor"></a><code><span><span class="keyword">val</span> generic_instance_declaration :
|
||
<span><a href="../Types/index.html#type-type_declaration">Types.type_declaration</a> <span class="arrow">-></span></span>
|
||
<a href="../Types/index.html#type-type_declaration">Types.type_declaration</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-instance_class"><a href="#val-instance_class" class="anchor"></a><code><span><span class="keyword">val</span> instance_class :
|
||
<span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-class_type">Types.class_type</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> * <a href="../Types/index.html#type-class_type">Types.class_type</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-instance_poly"><a href="#val-instance_poly" class="anchor"></a><code><span><span class="keyword">val</span> instance_poly :
|
||
<span><span class="optlabel">?keep_names</span>:bool <span class="arrow">-></span></span>
|
||
<span>bool <span class="arrow">-></span></span>
|
||
<span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> * <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-polyfy"><a href="#val-polyfy" class="anchor"></a><code><span><span class="keyword">val</span> polyfy :
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span>
|
||
<a href="../Types/index.html#type-type_expr">Types.type_expr</a> * bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-instance_label"><a href="#val-instance_label" class="anchor"></a><code><span><span class="keyword">val</span> instance_label :
|
||
<span>bool <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-label_description">Types.label_description</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> * <a href="../Types/index.html#type-type_expr">Types.type_expr</a> * <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-apply"><a href="#val-apply" class="anchor"></a><code><span><span class="keyword">val</span> apply :
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span>
|
||
<a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-try_expand_once_opt"><a href="#val-try_expand_once_opt" class="anchor"></a><code><span><span class="keyword">val</span> try_expand_once_opt : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-try_expand_safe_opt"><a href="#val-try_expand_safe_opt" class="anchor"></a><code><span><span class="keyword">val</span> try_expand_safe_opt : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-expand_head_once"><a href="#val-expand_head_once" class="anchor"></a><code><span><span class="keyword">val</span> expand_head_once : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-expand_head"><a href="#val-expand_head" class="anchor"></a><code><span><span class="keyword">val</span> expand_head : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-expand_head_opt"><a href="#val-expand_head_opt" class="anchor"></a><code><span><span class="keyword">val</span> expand_head_opt : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div><div class="spec-doc"><p>The compiler's own version of <code>expand_head</code> necessary for type-based optimisations.</p></div></div><p>Expansion of types for error traces; lives here instead of in <code>Errortrace</code> because the expansion machinery lives here.</p><div class="odoc-spec"><div class="spec value anchored" id="val-expanded_diff"><a href="#val-expanded_diff" class="anchor"></a><code><span><span class="keyword">val</span> expanded_diff :
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span><span class="label">got</span>:<a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<span><span class="label">expected</span>:<a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<span><span>(<a href="../Errortrace/index.html#type-expanded_type">Errortrace.expanded_type</a>, <span class="type-var">'variant</span>)</span> <a href="../Errortrace/index.html#type-elt">Errortrace.elt</a></span></span></code></div><div class="spec-doc"><p>Create an <code>Errortrace.Diff</code> by expanding the two types</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-unexpanded_diff"><a href="#val-unexpanded_diff" class="anchor"></a><code><span><span class="keyword">val</span> unexpanded_diff :
|
||
<span><span class="label">got</span>:<a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<span><span class="label">expected</span>:<a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<span><span>(<a href="../Errortrace/index.html#type-expanded_type">Errortrace.expanded_type</a>, <span class="type-var">'variant</span>)</span> <a href="../Errortrace/index.html#type-elt">Errortrace.elt</a></span></span></code></div><div class="spec-doc"><p>Create an <code>Errortrace.Diff</code> by *duplicating* the two types, so that each one's expansion is identical to itself. Despite the name, does create <code>Errortrace.expanded_type</code>s.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-full_expand"><a href="#val-full_expand" class="anchor"></a><code><span><span class="keyword">val</span> full_expand :
|
||
<span><span class="label">may_forget_scope</span>:bool <span class="arrow">-></span></span>
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-typedecl_extraction_result"><a href="#type-typedecl_extraction_result" class="anchor"></a><code><span><span class="keyword">type</span> typedecl_extraction_result</span><span> = </span></code><ol><li id="type-typedecl_extraction_result.Typedecl" class="def variant constructor anchored"><a href="#type-typedecl_extraction_result.Typedecl" class="anchor"></a><code><span>| </span><span><span class="constructor">Typedecl</span> <span class="keyword">of</span> <a href="../Path/index.html#type-t">Path.t</a> * <a href="../Path/index.html#type-t">Path.t</a> * <a href="../Types/index.html#type-type_declaration">Types.type_declaration</a></span></code></li><li id="type-typedecl_extraction_result.Has_no_typedecl" class="def variant constructor anchored"><a href="#type-typedecl_extraction_result.Has_no_typedecl" class="anchor"></a><code><span>| </span><span><span class="constructor">Has_no_typedecl</span></span></code></li><li id="type-typedecl_extraction_result.May_have_typedecl" class="def variant constructor anchored"><a href="#type-typedecl_extraction_result.May_have_typedecl" class="anchor"></a><code><span>| </span><span><span class="constructor">May_have_typedecl</span></span></code></li></ol></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-extract_concrete_typedecl"><a href="#val-extract_concrete_typedecl" class="anchor"></a><code><span><span class="keyword">val</span> extract_concrete_typedecl :
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<a href="#type-typedecl_extraction_result">typedecl_extraction_result</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-unify"><a href="#val-unify" class="anchor"></a><code><span><span class="keyword">val</span> unify : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-unify_gadt"><a href="#val-unify_gadt" class="anchor"></a><code><span><span class="keyword">val</span> unify_gadt :
|
||
<span><span class="label">equations_level</span>:int <span class="arrow">-></span></span>
|
||
<span><span class="label">allow_recursive</span>:bool <span class="arrow">-></span></span>
|
||
<span><span><a href="../Env/index.html#type-t">Env.t</a> <a href="../Stdlib/index.html#type-ref">ref</a></span> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<a href="../Btype/TypePairs/index.html#type-t">Btype.TypePairs.t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-unify_var"><a href="#val-unify_var" class="anchor"></a><code><span><span class="keyword">val</span> unify_var : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-filter_arrow"><a href="#val-filter_arrow" class="anchor"></a><code><span><span class="keyword">val</span> filter_arrow :
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Asttypes/index.html#type-arg_label">Asttypes.arg_label</a> <span class="arrow">-></span></span>
|
||
<a href="../Types/index.html#type-type_expr">Types.type_expr</a> * <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-filter_method"><a href="#val-filter_method" class="anchor"></a><code><span><span class="keyword">val</span> filter_method : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span>string <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-occur_in"><a href="#val-occur_in" class="anchor"></a><code><span><span class="keyword">val</span> occur_in : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-deep_occur"><a href="#val-deep_occur" class="anchor"></a><code><span><span class="keyword">val</span> deep_occur : <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-moregeneral"><a href="#val-moregeneral" class="anchor"></a><code><span><span class="keyword">val</span> moregeneral : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span>bool <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-is_moregeneral"><a href="#val-is_moregeneral" class="anchor"></a><code><span><span class="keyword">val</span> is_moregeneral :
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span>bool <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-rigidify"><a href="#val-rigidify" class="anchor"></a><code><span><span class="keyword">val</span> rigidify : <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-all_distinct_vars"><a href="#val-all_distinct_vars" class="anchor"></a><code><span><span class="keyword">val</span> all_distinct_vars : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-matches"><a href="#val-matches" class="anchor"></a><code><span><span class="keyword">val</span> matches :
|
||
<span><span class="label">expand_error_trace</span>:bool <span class="arrow">-></span></span>
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-does_match"><a href="#val-does_match" class="anchor"></a><code><span><span class="keyword">val</span> does_match : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-reify_univars"><a href="#val-reify_univars" class="anchor"></a><code><span><span class="keyword">val</span> reify_univars : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-filter_arrow_failure"><a href="#type-filter_arrow_failure" class="anchor"></a><code><span><span class="keyword">type</span> filter_arrow_failure</span><span> = </span></code><ol><li id="type-filter_arrow_failure.Unification_error" class="def variant constructor anchored"><a href="#type-filter_arrow_failure.Unification_error" class="anchor"></a><code><span>| </span><span><span class="constructor">Unification_error</span> <span class="keyword">of</span> <a href="../Errortrace/index.html#type-unification_error">Errortrace.unification_error</a></span></code></li><li id="type-filter_arrow_failure.Label_mismatch" class="def variant constructor anchored"><a href="#type-filter_arrow_failure.Label_mismatch" class="anchor"></a><code><span>| </span><span><span class="constructor">Label_mismatch</span> <span class="keyword">of</span> </span><span>{</span></code><ol><li id="type-filter_arrow_failure.got" class="def record field anchored"><a href="#type-filter_arrow_failure.got" class="anchor"></a><code><span>got : <a href="../Asttypes/index.html#type-arg_label">Asttypes.arg_label</a>;</span></code></li><li id="type-filter_arrow_failure.expected" class="def record field anchored"><a href="#type-filter_arrow_failure.expected" class="anchor"></a><code><span>expected : <a href="../Asttypes/index.html#type-arg_label">Asttypes.arg_label</a>;</span></code></li><li id="type-filter_arrow_failure.expected_type" class="def record field anchored"><a href="#type-filter_arrow_failure.expected_type" class="anchor"></a><code><span>expected_type : <a href="../Types/index.html#type-type_expr">Types.type_expr</a>;</span></code></li></ol><code><span>}</span></code></li><li id="type-filter_arrow_failure.Not_a_function" class="def variant constructor anchored"><a href="#type-filter_arrow_failure.Not_a_function" class="anchor"></a><code><span>| </span><span><span class="constructor">Not_a_function</span></span></code></li></ol></div></div><div class="odoc-spec"><div class="spec exception anchored" id="exception-Filter_arrow_failed"><a href="#exception-Filter_arrow_failed" class="anchor"></a><code><span><span class="keyword">exception</span> </span><span><span class="exception">Filter_arrow_failed</span> <span class="keyword">of</span> <a href="#type-filter_arrow_failure">filter_arrow_failure</a></span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-filter_method_failure"><a href="#type-filter_method_failure" class="anchor"></a><code><span><span class="keyword">type</span> filter_method_failure</span><span> = </span></code><ol><li id="type-filter_method_failure.Unification_error" class="def variant constructor anchored"><a href="#type-filter_method_failure.Unification_error" class="anchor"></a><code><span>| </span><span><span class="constructor">Unification_error</span> <span class="keyword">of</span> <a href="../Errortrace/index.html#type-unification_error">Errortrace.unification_error</a></span></code></li><li id="type-filter_method_failure.Not_a_method" class="def variant constructor anchored"><a href="#type-filter_method_failure.Not_a_method" class="anchor"></a><code><span>| </span><span><span class="constructor">Not_a_method</span></span></code></li><li id="type-filter_method_failure.Not_an_object" class="def variant constructor anchored"><a href="#type-filter_method_failure.Not_an_object" class="anchor"></a><code><span>| </span><span><span class="constructor">Not_an_object</span> <span class="keyword">of</span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></li></ol></div></div><div class="odoc-spec"><div class="spec exception anchored" id="exception-Filter_method_failed"><a href="#exception-Filter_method_failed" class="anchor"></a><code><span><span class="keyword">exception</span> </span><span><span class="exception">Filter_method_failed</span> <span class="keyword">of</span> <a href="#type-filter_method_failure">filter_method_failure</a></span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-class_match_failure"><a href="#type-class_match_failure" class="anchor"></a><code><span><span class="keyword">type</span> class_match_failure</span><span> = </span></code><ol><li id="type-class_match_failure.CM_Virtual_class" class="def variant constructor anchored"><a href="#type-class_match_failure.CM_Virtual_class" class="anchor"></a><code><span>| </span><span><span class="constructor">CM_Virtual_class</span></span></code></li><li id="type-class_match_failure.CM_Parameter_arity_mismatch" class="def variant constructor anchored"><a href="#type-class_match_failure.CM_Parameter_arity_mismatch" class="anchor"></a><code><span>| </span><span><span class="constructor">CM_Parameter_arity_mismatch</span> <span class="keyword">of</span> int * int</span></code></li><li id="type-class_match_failure.CM_Type_parameter_mismatch" class="def variant constructor anchored"><a href="#type-class_match_failure.CM_Type_parameter_mismatch" class="anchor"></a><code><span>| </span><span><span class="constructor">CM_Type_parameter_mismatch</span> <span class="keyword">of</span> <a href="../Env/index.html#type-t">Env.t</a> * <a href="../Errortrace/index.html#type-equality_error">Errortrace.equality_error</a></span></code></li><li id="type-class_match_failure.CM_Class_type_mismatch" class="def variant constructor anchored"><a href="#type-class_match_failure.CM_Class_type_mismatch" class="anchor"></a><code><span>| </span><span><span class="constructor">CM_Class_type_mismatch</span> <span class="keyword">of</span> <a href="../Env/index.html#type-t">Env.t</a> * <a href="../Types/index.html#type-class_type">Types.class_type</a> * <a href="../Types/index.html#type-class_type">Types.class_type</a></span></code></li><li id="type-class_match_failure.CM_Parameter_mismatch" class="def variant constructor anchored"><a href="#type-class_match_failure.CM_Parameter_mismatch" class="anchor"></a><code><span>| </span><span><span class="constructor">CM_Parameter_mismatch</span> <span class="keyword">of</span> <a href="../Env/index.html#type-t">Env.t</a> * <a href="../Errortrace/index.html#type-moregen_error">Errortrace.moregen_error</a></span></code></li><li id="type-class_match_failure.CM_Val_type_mismatch" class="def variant constructor anchored"><a href="#type-class_match_failure.CM_Val_type_mismatch" class="anchor"></a><code><span>| </span><span><span class="constructor">CM_Val_type_mismatch</span> <span class="keyword">of</span> string * <a href="../Env/index.html#type-t">Env.t</a> * <a href="../Errortrace/index.html#type-comparison_error">Errortrace.comparison_error</a></span></code></li><li id="type-class_match_failure.CM_Meth_type_mismatch" class="def variant constructor anchored"><a href="#type-class_match_failure.CM_Meth_type_mismatch" class="anchor"></a><code><span>| </span><span><span class="constructor">CM_Meth_type_mismatch</span> <span class="keyword">of</span> string * <a href="../Env/index.html#type-t">Env.t</a> * <a href="../Errortrace/index.html#type-comparison_error">Errortrace.comparison_error</a></span></code></li><li id="type-class_match_failure.CM_Non_mutable_value" class="def variant constructor anchored"><a href="#type-class_match_failure.CM_Non_mutable_value" class="anchor"></a><code><span>| </span><span><span class="constructor">CM_Non_mutable_value</span> <span class="keyword">of</span> string</span></code></li><li id="type-class_match_failure.CM_Non_concrete_value" class="def variant constructor anchored"><a href="#type-class_match_failure.CM_Non_concrete_value" class="anchor"></a><code><span>| </span><span><span class="constructor">CM_Non_concrete_value</span> <span class="keyword">of</span> string</span></code></li><li id="type-class_match_failure.CM_Missing_value" class="def variant constructor anchored"><a href="#type-class_match_failure.CM_Missing_value" class="anchor"></a><code><span>| </span><span><span class="constructor">CM_Missing_value</span> <span class="keyword">of</span> string</span></code></li><li id="type-class_match_failure.CM_Missing_method" class="def variant constructor anchored"><a href="#type-class_match_failure.CM_Missing_method" class="anchor"></a><code><span>| </span><span><span class="constructor">CM_Missing_method</span> <span class="keyword">of</span> string</span></code></li><li id="type-class_match_failure.CM_Hide_public" class="def variant constructor anchored"><a href="#type-class_match_failure.CM_Hide_public" class="anchor"></a><code><span>| </span><span><span class="constructor">CM_Hide_public</span> <span class="keyword">of</span> string</span></code></li><li id="type-class_match_failure.CM_Hide_virtual" class="def variant constructor anchored"><a href="#type-class_match_failure.CM_Hide_virtual" class="anchor"></a><code><span>| </span><span><span class="constructor">CM_Hide_virtual</span> <span class="keyword">of</span> string * string</span></code></li><li id="type-class_match_failure.CM_Public_method" class="def variant constructor anchored"><a href="#type-class_match_failure.CM_Public_method" class="anchor"></a><code><span>| </span><span><span class="constructor">CM_Public_method</span> <span class="keyword">of</span> string</span></code></li><li id="type-class_match_failure.CM_Private_method" class="def variant constructor anchored"><a href="#type-class_match_failure.CM_Private_method" class="anchor"></a><code><span>| </span><span><span class="constructor">CM_Private_method</span> <span class="keyword">of</span> string</span></code></li><li id="type-class_match_failure.CM_Virtual_method" class="def variant constructor anchored"><a href="#type-class_match_failure.CM_Virtual_method" class="anchor"></a><code><span>| </span><span><span class="constructor">CM_Virtual_method</span> <span class="keyword">of</span> string</span></code></li></ol></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-match_class_types"><a href="#val-match_class_types" class="anchor"></a><code><span><span class="keyword">val</span> match_class_types :
|
||
<span><span class="optlabel">?trace</span>:bool <span class="arrow">-></span></span>
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-class_type">Types.class_type</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-class_type">Types.class_type</a> <span class="arrow">-></span></span>
|
||
<span><a href="#type-class_match_failure">class_match_failure</a> list</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-equal"><a href="#val-equal" class="anchor"></a><code><span><span class="keyword">val</span> equal :
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span>bool <span class="arrow">-></span></span>
|
||
<span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span>
|
||
<span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span>
|
||
unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-is_equal"><a href="#val-is_equal" class="anchor"></a><code><span><span class="keyword">val</span> is_equal :
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span>bool <span class="arrow">-></span></span>
|
||
<span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span>
|
||
<span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span>
|
||
bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-equal_private"><a href="#val-equal_private" class="anchor"></a><code><span><span class="keyword">val</span> equal_private :
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-match_class_declarations"><a href="#val-match_class_declarations" class="anchor"></a><code><span><span class="keyword">val</span> match_class_declarations :
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-class_type">Types.class_type</a> <span class="arrow">-></span></span>
|
||
<span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-class_type">Types.class_type</a> <span class="arrow">-></span></span>
|
||
<span><a href="#type-class_match_failure">class_match_failure</a> list</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-enlarge_type"><a href="#val-enlarge_type" class="anchor"></a><code><span><span class="keyword">val</span> enlarge_type : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a> * bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-subtype"><a href="#val-subtype" class="anchor"></a><code><span><span class="keyword">val</span> subtype : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <span>unit <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-new_class_signature"><a href="#val-new_class_signature" class="anchor"></a><code><span><span class="keyword">val</span> new_class_signature : <span>unit <span class="arrow">-></span></span> <a href="../Types/index.html#type-class_signature">Types.class_signature</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_dummy_method"><a href="#val-add_dummy_method" class="anchor"></a><code><span><span class="keyword">val</span> add_dummy_method : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><span class="label">scope</span>:int <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-class_signature">Types.class_signature</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-add_method_failure"><a href="#type-add_method_failure" class="anchor"></a><code><span><span class="keyword">type</span> add_method_failure</span><span> = </span></code><ol><li id="type-add_method_failure.Unexpected_method" class="def variant constructor anchored"><a href="#type-add_method_failure.Unexpected_method" class="anchor"></a><code><span>| </span><span><span class="constructor">Unexpected_method</span></span></code></li><li id="type-add_method_failure.Type_mismatch" class="def variant constructor anchored"><a href="#type-add_method_failure.Type_mismatch" class="anchor"></a><code><span>| </span><span><span class="constructor">Type_mismatch</span> <span class="keyword">of</span> <a href="../Errortrace/index.html#type-unification_error">Errortrace.unification_error</a></span></code></li></ol></div></div><div class="odoc-spec"><div class="spec exception anchored" id="exception-Add_method_failed"><a href="#exception-Add_method_failed" class="anchor"></a><code><span><span class="keyword">exception</span> </span><span><span class="exception">Add_method_failed</span> <span class="keyword">of</span> <a href="#type-add_method_failure">add_method_failure</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_method"><a href="#val-add_method" class="anchor"></a><code><span><span class="keyword">val</span> add_method :
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Asttypes/index.html#type-label">Asttypes.label</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Asttypes/index.html#type-private_flag">Asttypes.private_flag</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Asttypes/index.html#type-virtual_flag">Asttypes.virtual_flag</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-class_signature">Types.class_signature</a> <span class="arrow">-></span></span>
|
||
unit</span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-add_instance_variable_failure"><a href="#type-add_instance_variable_failure" class="anchor"></a><code><span><span class="keyword">type</span> add_instance_variable_failure</span><span> = </span></code><ol><li id="type-add_instance_variable_failure.Mutability_mismatch" class="def variant constructor anchored"><a href="#type-add_instance_variable_failure.Mutability_mismatch" class="anchor"></a><code><span>| </span><span><span class="constructor">Mutability_mismatch</span> <span class="keyword">of</span> <a href="../Asttypes/index.html#type-mutable_flag">Asttypes.mutable_flag</a></span></code></li><li id="type-add_instance_variable_failure.Type_mismatch" class="def variant constructor anchored"><a href="#type-add_instance_variable_failure.Type_mismatch" class="anchor"></a><code><span>| </span><span><span class="constructor">Type_mismatch</span> <span class="keyword">of</span> <a href="../Errortrace/index.html#type-unification_error">Errortrace.unification_error</a></span></code></li></ol></div></div><div class="odoc-spec"><div class="spec exception anchored" id="exception-Add_instance_variable_failed"><a href="#exception-Add_instance_variable_failed" class="anchor"></a><code><span><span class="keyword">exception</span> </span><span><span class="exception">Add_instance_variable_failed</span> <span class="keyword">of</span> <a href="#type-add_instance_variable_failure">add_instance_variable_failure</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_instance_variable"><a href="#val-add_instance_variable" class="anchor"></a><code><span><span class="keyword">val</span> add_instance_variable :
|
||
<span><span class="label">strict</span>:bool <span class="arrow">-></span></span>
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Asttypes/index.html#type-label">Asttypes.label</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Asttypes/index.html#type-mutable_flag">Asttypes.mutable_flag</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Asttypes/index.html#type-virtual_flag">Asttypes.virtual_flag</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-class_signature">Types.class_signature</a> <span class="arrow">-></span></span>
|
||
unit</span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-inherit_class_signature_failure"><a href="#type-inherit_class_signature_failure" class="anchor"></a><code><span><span class="keyword">type</span> inherit_class_signature_failure</span><span> = </span></code><ol><li id="type-inherit_class_signature_failure.Self_type_mismatch" class="def variant constructor anchored"><a href="#type-inherit_class_signature_failure.Self_type_mismatch" class="anchor"></a><code><span>| </span><span><span class="constructor">Self_type_mismatch</span> <span class="keyword">of</span> <a href="../Errortrace/index.html#type-unification_error">Errortrace.unification_error</a></span></code></li><li id="type-inherit_class_signature_failure.Method" class="def variant constructor anchored"><a href="#type-inherit_class_signature_failure.Method" class="anchor"></a><code><span>| </span><span><span class="constructor">Method</span> <span class="keyword">of</span> <a href="../Asttypes/index.html#type-label">Asttypes.label</a> * <a href="#type-add_method_failure">add_method_failure</a></span></code></li><li id="type-inherit_class_signature_failure.Instance_variable" class="def variant constructor anchored"><a href="#type-inherit_class_signature_failure.Instance_variable" class="anchor"></a><code><span>| </span><span><span class="constructor">Instance_variable</span> <span class="keyword">of</span> <a href="../Asttypes/index.html#type-label">Asttypes.label</a> * <a href="#type-add_instance_variable_failure">add_instance_variable_failure</a></span></code></li></ol></div></div><div class="odoc-spec"><div class="spec exception anchored" id="exception-Inherit_class_signature_failed"><a href="#exception-Inherit_class_signature_failed" class="anchor"></a><code><span><span class="keyword">exception</span> </span><span><span class="exception">Inherit_class_signature_failed</span> <span class="keyword">of</span> <a href="#type-inherit_class_signature_failure">inherit_class_signature_failure</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-inherit_class_signature"><a href="#val-inherit_class_signature" class="anchor"></a><code><span><span class="keyword">val</span> inherit_class_signature :
|
||
<span><span class="label">strict</span>:bool <span class="arrow">-></span></span>
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-class_signature">Types.class_signature</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-class_signature">Types.class_signature</a> <span class="arrow">-></span></span>
|
||
unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-update_class_signature"><a href="#val-update_class_signature" class="anchor"></a><code><span><span class="keyword">val</span> update_class_signature :
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-class_signature">Types.class_signature</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Asttypes/index.html#type-label">Asttypes.label</a> list</span> * <span><a href="../Asttypes/index.html#type-label">Asttypes.label</a> list</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-hide_private_methods"><a href="#val-hide_private_methods" class="anchor"></a><code><span><span class="keyword">val</span> hide_private_methods : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-class_signature">Types.class_signature</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-close_class_signature"><a href="#val-close_class_signature" class="anchor"></a><code><span><span class="keyword">val</span> close_class_signature : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-class_signature">Types.class_signature</a> <span class="arrow">-></span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec exception anchored" id="exception-Nondep_cannot_erase"><a href="#exception-Nondep_cannot_erase" class="anchor"></a><code><span><span class="keyword">exception</span> </span><span><span class="exception">Nondep_cannot_erase</span> <span class="keyword">of</span> <a href="../Ident/index.html#type-t">Ident.t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-nondep_type"><a href="#val-nondep_type" class="anchor"></a><code><span><span class="keyword">val</span> nondep_type : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><span><a href="../Ident/index.html#type-t">Ident.t</a> list</span> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-nondep_type_decl"><a href="#val-nondep_type_decl" class="anchor"></a><code><span><span class="keyword">val</span> nondep_type_decl :
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span><span><a href="../Ident/index.html#type-t">Ident.t</a> list</span> <span class="arrow">-></span></span>
|
||
<span>bool <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_declaration">Types.type_declaration</a> <span class="arrow">-></span></span>
|
||
<a href="../Types/index.html#type-type_declaration">Types.type_declaration</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-nondep_extension_constructor"><a href="#val-nondep_extension_constructor" class="anchor"></a><code><span><span class="keyword">val</span> nondep_extension_constructor :
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span><span><a href="../Ident/index.html#type-t">Ident.t</a> list</span> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-extension_constructor">Types.extension_constructor</a> <span class="arrow">-></span></span>
|
||
<a href="../Types/index.html#type-extension_constructor">Types.extension_constructor</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-nondep_class_declaration"><a href="#val-nondep_class_declaration" class="anchor"></a><code><span><span class="keyword">val</span> nondep_class_declaration :
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span><span><a href="../Ident/index.html#type-t">Ident.t</a> list</span> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-class_declaration">Types.class_declaration</a> <span class="arrow">-></span></span>
|
||
<a href="../Types/index.html#type-class_declaration">Types.class_declaration</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-nondep_cltype_declaration"><a href="#val-nondep_cltype_declaration" class="anchor"></a><code><span><span class="keyword">val</span> nondep_cltype_declaration :
|
||
<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span><span><a href="../Ident/index.html#type-t">Ident.t</a> list</span> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-class_type_declaration">Types.class_type_declaration</a> <span class="arrow">-></span></span>
|
||
<a href="../Types/index.html#type-class_type_declaration">Types.class_type_declaration</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-is_contractive"><a href="#val-is_contractive" class="anchor"></a><code><span><span class="keyword">val</span> is_contractive : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Path/index.html#type-t">Path.t</a> <span class="arrow">-></span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-normalize_type"><a href="#val-normalize_type" class="anchor"></a><code><span><span class="keyword">val</span> normalize_type : <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-nongen_schema"><a href="#val-nongen_schema" class="anchor"></a><code><span><span class="keyword">val</span> nongen_schema : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-nongen_class_declaration"><a href="#val-nongen_class_declaration" class="anchor"></a><code><span><span class="keyword">val</span> nongen_class_declaration : <span><a href="../Types/index.html#type-class_declaration">Types.class_declaration</a> <span class="arrow">-></span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-free_variables"><a href="#val-free_variables" class="anchor"></a><code><span><span class="keyword">val</span> free_variables : <span><span class="optlabel">?env</span>:<a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-closed_type_decl"><a href="#val-closed_type_decl" class="anchor"></a><code><span><span class="keyword">val</span> closed_type_decl : <span><a href="../Types/index.html#type-type_declaration">Types.type_declaration</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> option</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-closed_extension_constructor"><a href="#val-closed_extension_constructor" class="anchor"></a><code><span><span class="keyword">val</span> closed_extension_constructor :
|
||
<span><a href="../Types/index.html#type-extension_constructor">Types.extension_constructor</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> option</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-closed_class"><a href="#val-closed_class" class="anchor"></a><code><span><span class="keyword">val</span> closed_class :
|
||
<span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span>
|
||
<span><a href="../Types/index.html#type-class_signature">Types.class_signature</a> <span class="arrow">-></span></span>
|
||
<span><span>(<a href="../Types/index.html#type-type_expr">Types.type_expr</a> * bool * string * <a href="../Types/index.html#type-type_expr">Types.type_expr</a>)</span> option</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-unalias"><a href="#val-unalias" class="anchor"></a><code><span><span class="keyword">val</span> unalias : <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <a href="../Types/index.html#type-type_expr">Types.type_expr</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-arity"><a href="#val-arity" class="anchor"></a><code><span><span class="keyword">val</span> arity : <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> int</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-collapse_conj_params"><a href="#val-collapse_conj_params" class="anchor"></a><code><span><span class="keyword">val</span> collapse_conj_params : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-get_current_level"><a href="#val-get_current_level" class="anchor"></a><code><span><span class="keyword">val</span> get_current_level : <span>unit <span class="arrow">-></span></span> int</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-wrap_trace_gadt_instances"><a href="#val-wrap_trace_gadt_instances" class="anchor"></a><code><span><span class="keyword">val</span> wrap_trace_gadt_instances : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><span>(<span><span class="type-var">'a</span> <span class="arrow">-></span></span> <span class="type-var">'b</span>)</span> <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <span class="arrow">-></span></span> <span class="type-var">'b</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-reset_reified_var_counter"><a href="#val-reset_reified_var_counter" class="anchor"></a><code><span><span class="keyword">val</span> reset_reified_var_counter : <span>unit <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-immediacy"><a href="#val-immediacy" class="anchor"></a><code><span><span class="keyword">val</span> immediacy : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <a href="../Type_immediacy/index.html#type-t">Type_immediacy.t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-package_subtype"><a href="#val-package_subtype" class="anchor"></a><code><span><span class="keyword">val</span> package_subtype :
|
||
<span><span>(<span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span>
|
||
<span><a href="../Path/index.html#type-t">Path.t</a> <span class="arrow">-></span></span>
|
||
<span><span><span>(<a href="../Longident/index.html#type-t">Longident.t</a> * <a href="../Types/index.html#type-type_expr">Types.type_expr</a>)</span> list</span> <span class="arrow">-></span></span>
|
||
<span><a href="../Path/index.html#type-t">Path.t</a> <span class="arrow">-></span></span>
|
||
<span><span><span>(<a href="../Longident/index.html#type-t">Longident.t</a> * <a href="../Types/index.html#type-type_expr">Types.type_expr</a>)</span> list</span> <span class="arrow">-></span></span>
|
||
bool)</span>
|
||
<a href="../Stdlib/index.html#type-ref">ref</a></span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-mcomp"><a href="#val-mcomp" class="anchor"></a><code><span><span class="keyword">val</span> mcomp : <span><a href="../Env/index.html#type-t">Env.t</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> <span><a href="../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span> unit</span></code></div></div></div></body></html>
|