mirror of
https://github.com/c-cube/tiny_httpd.git
synced 2026-01-22 09:26:41 -05:00
14 lines
7.9 KiB
HTML
14 lines
7.9 KiB
HTML
<!DOCTYPE html>
|
||
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Unsafe (ocaml.Subst.Unsafe)</title><meta charset="utf-8"/><link rel="stylesheet" href="../../../_odoc-theme/odoc.css"/><meta name="generator" content="odoc 3.0.0"/><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">Index</a> » <a href="../../index.html">ocaml</a> » <a href="../index.html">Subst</a> » Unsafe</nav><header class="odoc-preamble"><h1>Module <code><span>Subst.Unsafe</span></code></h1></header><div class="odoc-content"><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><a href="../index.html#type-unsafe">unsafe</a> <a href="../index.html#type-subst">subst</a></span></span></code></div><div class="spec-doc"><p>Unsafe substitutions introduced by <code>with</code> constraints, local substitutions (<code>type t := int * int</code>) or recursive module check.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_modtype"><a href="#val-add_modtype" class="anchor"></a><code><span><span class="keyword">val</span> add_modtype : <span><a href="../../Ident/index.html#type-t">Ident.t</a> <span class="arrow">-></span></span> <span><a href="../../Types/index.html#type-module_type">Types.module_type</a> <span class="arrow">-></span></span> <span><span><span class="type-var">'any</span> <a href="../index.html#type-subst">subst</a></span> <span class="arrow">-></span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Replacing a module type name S by a non-path signature is unsafe as the packed module type <code>(module S)</code> becomes ill-formed.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_modtype_path"><a href="#val-add_modtype_path" class="anchor"></a><code><span><span class="keyword">val</span> add_modtype_path : <span><a href="../../Path/index.html#type-t">Path.t</a> <span class="arrow">-></span></span> <span><a href="../../Types/index.html#type-module_type">Types.module_type</a> <span class="arrow">-></span></span> <span><span><span class="type-var">'any</span> <a href="../index.html#type-subst">subst</a></span> <span class="arrow">-></span></span> <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_type_path"><a href="#val-add_type_path" class="anchor"></a><code><span><span class="keyword">val</span> add_type_path : <span><a href="../../Path/index.html#type-t">Path.t</a> <span class="arrow">-></span></span> <span><a href="../../Path/index.html#type-t">Path.t</a> <span class="arrow">-></span></span> <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>Deep editing inside a module type require to retypecheck the module, for applicative functors in path and module aliases.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_type_function"><a href="#val-add_type_function" class="anchor"></a><code><span><span class="keyword">val</span> add_type_function :
|
||
<span><a href="../../Path/index.html#type-t">Path.t</a> <span class="arrow">-></span></span>
|
||
<span><span class="label">params</span>:<span><a href="../../Types/index.html#type-type_expr">Types.type_expr</a> list</span> <span class="arrow">-></span></span>
|
||
<span><span class="label">body</span>:<a href="../../Types/index.html#type-type_expr">Types.type_expr</a> <span class="arrow">-></span></span>
|
||
<span><a href="#type-t">t</a> <span class="arrow">-></span></span>
|
||
<a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-add_module_path"><a href="#val-add_module_path" class="anchor"></a><code><span><span class="keyword">val</span> add_module_path : <span><a href="../../Path/index.html#type-t">Path.t</a> <span class="arrow">-></span></span> <span><a href="../../Path/index.html#type-t">Path.t</a> <span class="arrow">-></span></span> <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-error"><a href="#type-error" class="anchor"></a><code><span><span class="keyword">type</span> error</span><span> = </span></code><ol><li id="type-error.Fcm_type_substituted_away" class="def variant constructor anchored"><a href="#type-error.Fcm_type_substituted_away" class="anchor"></a><code><span>| </span><span><span class="constructor">Fcm_type_substituted_away</span> <span class="keyword">of</span> <a href="../../Path/index.html#type-t">Path.t</a> * <a href="../../Types/index.html#type-module_type">Types.module_type</a></span></code></li></ol></div></div><div class="odoc-spec"><div class="spec type subst anchored" id="type-res"><a href="#type-res" class="anchor"></a><code><span><span class="keyword">type</span> <span>'a res</span></span><span> := <span><span>(<span class="type-var">'a</span>, <a href="#type-error">error</a>)</span> <a href="../../Stdlib/index.html#type-result">result</a></span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-type_declaration"><a href="#val-type_declaration" class="anchor"></a><code><span><span class="keyword">val</span> type_declaration :
|
||
<span><a href="#type-t">t</a> <span class="arrow">-></span></span>
|
||
<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_declaration">Types.type_declaration</a> <a href="#type-res">res</a></span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-signature_item"><a href="#val-signature_item" class="anchor"></a><code><span><span class="keyword">val</span> signature_item :
|
||
<span><a href="../index.html#type-scoping">scoping</a> <span class="arrow">-></span></span>
|
||
<span><a href="#type-t">t</a> <span class="arrow">-></span></span>
|
||
<span><a href="../../Types/index.html#type-signature_item">Types.signature_item</a> <span class="arrow">-></span></span>
|
||
<span><a href="../../Types/index.html#type-signature_item">Types.signature_item</a> <a href="#type-res">res</a></span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-signature"><a href="#val-signature" class="anchor"></a><code><span><span class="keyword">val</span> signature : <span><a href="../index.html#type-scoping">scoping</a> <span class="arrow">-></span></span> <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="../../Types/index.html#type-signature">Types.signature</a> <span class="arrow">-></span></span> <span><a href="../../Types/index.html#type-signature">Types.signature</a> <a href="#type-res">res</a></span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-compose"><a href="#val-compose" class="anchor"></a><code><span><span class="keyword">val</span> compose : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="#type-t">t</a> <a href="#type-res">res</a></span></span></code></div><div class="spec-doc"><p>Composition of substitutions is eager and fails when the two substitution are incompatible, for example <code> module type t := sig end</code> is not compatible with <code>module type s := sig type t=(module t) end</code></p></div></div></div></body></html>
|