Files

20 lines
9.6 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Capnp_rpc_unix (capnp-rpc-unix.Capnp_rpc_unix)</title><meta charset="utf-8"/><link rel="stylesheet" href="../../odoc.support/odoc.css"/><meta name="generator" content="odoc 2.4.4"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../odoc.support/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">capnp-rpc-unix</a> &#x00BB; Capnp_rpc_unix</nav><header class="odoc-preamble"><h1>Module <code><span>Capnp_rpc_unix</span></code></h1><p>Helpers for using <a href="../../capnp-rpc/Capnp_rpc/index.html"><code>Capnp_rpc</code></a> on traditional operating systems.</p></header><div class="odoc-content"><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../capnp-rpc-net/Capnp_rpc_net/module-type-VAT_NETWORK/index.html">Capnp_rpc_net.VAT_NETWORK</a> <span class="keyword">with</span> <span><span class="keyword">module</span> <a href="../../capnp-rpc-net/Capnp_rpc_net/module-type-VAT_NETWORK/Network/index.html">Network</a> = <a href="Network/index.html">Network</a></span></span></code></summary><div class="odoc-spec"><div class="spec module anchored" id="module-Network"><a href="#module-Network" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Network/index.html">Network</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>A network using TCP and Unix-domain sockets.</p></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-CapTP"><a href="#module-CapTP" class="anchor"></a><code><span><span class="keyword">module</span> <a href="CapTP/index.html">CapTP</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Sharing capabilities over a network link.</p></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Vat"><a href="#module-Vat" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Vat/index.html">Vat</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>A Vat is an actor in the CapTP network, composed of objects that can call each other directly.</p></div></div></details></div><div class="odoc-spec"><div class="spec module anchored" id="module-Vat_config"><a href="#module-Vat_config" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Vat_config/index.html">Vat_config</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Configuration for a <a href="Vat/index.html"><code>Vat</code></a>.</p></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-File_store"><a href="#module-File_store" class="anchor"></a><code><span><span class="keyword">module</span> <a href="File_store/index.html">File_store</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>An on-disk store for saved services.</p></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Cap_file"><a href="#module-Cap_file" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Cap_file/index.html">Cap_file</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Utilities for capability files.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-sturdy_uri"><a href="#val-sturdy_uri" class="anchor"></a><code><span><span class="keyword">val</span> sturdy_uri : <span><span class="xref-unresolved">Uri</span>.t <span class="xref-unresolved">Cmdliner</span>.Arg.conv</span></span></code></div><div class="spec-doc"><p>A cmdliner argument converter for a &quot;capnp://&quot; URI (or the path of a file containing such a URI).</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-connect_with_progress"><a href="#val-connect_with_progress" class="anchor"></a><code><span><span class="keyword">val</span> connect_with_progress :
<span><span class="optlabel">?mode</span>:<span>[ `Auto <span>| `Log</span> <span>| `Batch</span> <span>| `Console</span> <span>| `Silent</span> ]</span> <span class="arrow">&#45;&gt;</span></span>
<span><span><span class="type-var">'a</span> <a href="../../capnp-rpc/Capnp_rpc/Sturdy_ref/index.html#type-t">Capnp_rpc.Std.Sturdy_ref.t</a></span> <span class="arrow">&#45;&gt;</span></span>
<span><span>(<span><span class="type-var">'a</span> <a href="../../capnp-rpc/Capnp_rpc/Capability/index.html#type-t">Capnp_rpc.Std.Capability.t</a></span>, <a href="../../capnp-rpc/Capnp_rpc_proto/Exception/index.html#type-t">Capnp_rpc.Exception.t</a>)</span> <span class="xref-unresolved">Stdlib</span>.result</span></span></code></div><div class="spec-doc"><p><code>connect_with_progress sr</code> is like <code>Sturdy_ref.connect</code>, but shows that a connection is in progress. Note: On failure, it does <em>not</em> display the error, which should instead be handled by the caller.</p><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">mode</span> <p>Controls how progress is displayed:</p><ul><li><code>`Log</code> writes info-level log messages about starting and completing the connection.</li><li><code>`Batch</code> prints a message to stderr when starting, then prints OK when done.</li><li><code>`Console</code> displays a message while connecting if it takes too long, then erases it when done.</li><li><code>`Silent</code> does nothing.</li><li><code>`Auto</code> (the default) tries to log (as for <code>`Log</code>), but if the log message isn't used then it behaves as <code>`Console</code> (if stderr is a tty) or as <code>`Batch</code> (if not).</li></ul></li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-with_cap_exn"><a href="#val-with_cap_exn" class="anchor"></a><code><span><span class="keyword">val</span> with_cap_exn :
<span><span class="optlabel">?progress</span>:<span>[ `Auto <span>| `Log</span> <span>| `Batch</span> <span>| `Console</span> <span>| `Silent</span> ]</span> <span class="arrow">&#45;&gt;</span></span>
<span><span><span class="type-var">'a</span> <a href="../../capnp-rpc/Capnp_rpc/Sturdy_ref/index.html#type-t">Capnp_rpc.Std.Sturdy_ref.t</a></span> <span class="arrow">&#45;&gt;</span></span>
<span><span>(<span><span><span class="type-var">'a</span> <a href="../../capnp-rpc/Capnp_rpc/Capability/index.html#type-t">Capnp_rpc.Std.Capability.t</a></span> <span class="arrow">&#45;&gt;</span></span> <span class="type-var">'b</span>)</span> <span class="arrow">&#45;&gt;</span></span>
<span class="type-var">'b</span></span></code></div><div class="spec-doc"><p>Like <code>Sturdy_ref.with_cap_exn</code>, but using <code>connect_with_progress</code> to show progress.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-serve"><a href="#val-serve" class="anchor"></a><code><span><span class="keyword">val</span> serve :
<span><span class="optlabel">?tags</span>:<span class="xref-unresolved">Logs</span>.Tag.set <span class="arrow">&#45;&gt;</span></span>
<span><span class="optlabel">?restore</span>:<a href="../../capnp-rpc-net/Capnp_rpc_net/Restorer/index.html#type-t">Capnp_rpc_net.Restorer.t</a> <span class="arrow">&#45;&gt;</span></span>
<span><span class="label">sw</span>:<span class="xref-unresolved">Eio</span>.Switch.t <span class="arrow">&#45;&gt;</span></span>
<span><a href="Vat_config/index.html#type-t">Vat_config.t</a> <span class="arrow">&#45;&gt;</span></span>
<a href="Vat/index.html#type-t">Vat.t</a></span></code></div><div class="spec-doc"><p><code>serve ~restore ~sw vat_config</code> is a new vat that is listening for new connections as specified by <code>vat_config</code>. After connecting to it, clients can get access to services using <code>restore</code>.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-client_only_vat"><a href="#val-client_only_vat" class="anchor"></a><code><span><span class="keyword">val</span> client_only_vat :
<span><span class="optlabel">?tags</span>:<span class="xref-unresolved">Logs</span>.Tag.set <span class="arrow">&#45;&gt;</span></span>
<span><span class="optlabel">?restore</span>:<a href="../../capnp-rpc-net/Capnp_rpc_net/Restorer/index.html#type-t">Capnp_rpc_net.Restorer.t</a> <span class="arrow">&#45;&gt;</span></span>
<span><span class="label">sw</span>:<span class="xref-unresolved">Eio</span>.Switch.t <span class="arrow">&#45;&gt;</span></span>
<span><span><span class="type-var">_</span> <span class="xref-unresolved">Eio</span>.Net.t</span> <span class="arrow">&#45;&gt;</span></span>
<a href="Vat/index.html#type-t">Vat.t</a></span></code></div><div class="spec-doc"><p><code>client_only_vat net</code> is a new vat that does not listen for incoming connections.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-manpage_capnp_options"><a href="#val-manpage_capnp_options" class="anchor"></a><code><span><span class="keyword">val</span> manpage_capnp_options : string</span></code></div><div class="spec-doc"><p><code>manpage_capnp_options</code> is the title of the section of the man-page containing the Cap'n Proto options. This can be used to control where these options appear in the page (e.g. to put them below the other options).</p></div></div></div></body></html>