mirror of
https://github.com/c-cube/linol.git
synced 2025-12-12 05:58:49 -05:00
2 lines
No EOL
5.7 KiB
HTML
2 lines
No EOL
5.7 KiB
HTML
<!DOCTYPE html>
|
||
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Jsonrpc2 (linol-lwt.Linol_lwt__.Jsonrpc2)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body><div class="content"><header><nav><a href="../index.html">Up</a> – <a href="../../index.html">linol-lwt</a> » <a href="../index.html">Linol_lwt__</a> » Jsonrpc2</nav><h1>Module <code>Linol_lwt__.Jsonrpc2</code></h1></header><div class="spec module" id="module-IO"><a href="#module-IO" class="anchor"></a><code><span class="keyword">module</span> <a href="IO/index.html">IO</a> : <a href="../../../linol/Linol/index.html#module-type-IO">Linol.IO</a> <span class="keyword">with</span> <span class="keyword">type</span> 'a <a href="../../../linol/Linol/module-type-IO/index.html#type-t">t</a> = <span class="type-var">'a</span> <a href="../../Linol_lwt/Task/index.html#type-m">Linol_lwt.Task.m</a> <span class="keyword">and</span> <span class="keyword">type</span> <a href="../../../linol/Linol/module-type-IO/index.html#type-in_channel">in_channel</a> = Lwt_io.input Lwt_io.channel <span class="keyword">and</span> <span class="keyword">type</span> <a href="../../../linol/Linol/module-type-IO/index.html#type-out_channel">out_channel</a> = Lwt_io.output Lwt_io.channel</code></div><dl><dt class="spec type" id="type-json"><a href="#type-json" class="anchor"></a><code><span class="keyword">type</span> json</code><code> = Yojson.Safe.t</code></dt><dt class="spec type" id="type-t"><a href="#type-t" class="anchor"></a><code><span class="keyword">type</span> t</code></dt><dd><p>A jsonrpc2 connection.</p></dd></dl><div><div class="spec include"><div class="doc"><details open="open"><summary><span class="def"><code><span class="keyword">include</span> <span class="keyword">module</span> <span class="keyword">type</span> <span class="keyword">of</span> <span class="keyword">sig</span> ... <span class="keyword">end</span></code></span></summary><div class="spec module" id="module-Position"><a href="#module-Position" class="anchor"></a><code><span class="keyword">module</span> Position = Lsp.Types.Position</code></div><div class="spec module" id="module-Range"><a href="#module-Range" class="anchor"></a><code><span class="keyword">module</span> Range = Lsp.Types.Range</code></div><div class="spec class" id="class-base_server"><a href="#class-base_server" class="anchor"></a><code><span class="keyword">class</span> <span class="keyword">virtual</span> <a href="class-base_server/index.html">base_server</a> : <span class="keyword">object</span> ... <span class="keyword">end</span></code></div><div class="spec class" id="class-notify_back"><a href="#class-notify_back" class="anchor"></a><code><span class="keyword">class</span> <a href="class-notify_back/index.html">notify_back</a> : notify_back:(Lsp.Server_notification.t <span>-></span> unit <a href="IO/index.html#type-t">IO.t</a>) <span>-></span> ?⁠version:int <span>-></span> uri:Lsp.Types.DocumentUri.t <span>-></span> unit <span>-></span> <span class="keyword">object</span> ... <span class="keyword">end</span></code></div><dl><dt class="spec type" id="type-doc_state"><a href="#type-doc_state" class="anchor"></a><code><span class="keyword">type</span> doc_state</code><code> = <a href="../../../linol/Linol/Make/index.html#type-doc_state">Linol.Make(IO).doc_state</a></code><code> = </code><code>{</code><table class="record"><tr id="type-doc_state.uri" class="anchored"><td class="def field"><a href="#type-doc_state.uri" class="anchor"></a><code>uri : Lsp.Types.DocumentUri.t;</code></td></tr><tr id="type-doc_state.languageId" class="anchored"><td class="def field"><a href="#type-doc_state.languageId" class="anchor"></a><code>languageId : string;</code></td></tr><tr id="type-doc_state.version" class="anchored"><td class="def field"><a href="#type-doc_state.version" class="anchor"></a><code>version : int;</code></td></tr><tr id="type-doc_state.content" class="anchored"><td class="def field"><a href="#type-doc_state.content" class="anchor"></a><code>content : string;</code></td></tr></table><code>}</code></dt></dl><div class="spec class" id="class-server"><a href="#class-server" class="anchor"></a><code><span class="keyword">class</span> <span class="keyword">virtual</span> <a href="class-server/index.html">server</a> : <span class="keyword">object</span> ... <span class="keyword">end</span></code></div></details></div></div></div><dl><dt class="spec value" id="val-create"><a href="#val-create" class="anchor"></a><code><span class="keyword">val</span> create : ic:<a href="IO/index.html#type-in_channel">IO.in_channel</a> <span>-></span> oc:<a href="IO/index.html#type-out_channel">IO.out_channel</a> <span>-></span> <a href="class-server/index.html">server</a> <span>-></span> <a href="index.html#type-t">t</a></code></dt><dd><p>Create a connection from the pair of channels</p></dd></dl><dl><dt class="spec value" id="val-create_stdio"><a href="#val-create_stdio" class="anchor"></a><code><span class="keyword">val</span> create_stdio : <a href="class-server/index.html">server</a> <span>-></span> <a href="index.html#type-t">t</a></code></dt><dt class="spec value" id="val-run"><a href="#val-run" class="anchor"></a><code><span class="keyword">val</span> run : <a href="index.html#type-t">t</a> <span>-></span> unit <a href="../../Linol_lwt/Task/index.html#type-t">Linol_lwt.Task.t</a> <span>-></span> unit <a href="../../Linol_lwt/Task/index.html#type-m">Linol_lwt.Task.m</a></code></dt><dd><p>Listen for incoming messages and responses</p></dd></dl></div></body></html> |