diff options
| author | Chimrod <> | 2026-06-24 08:33:41 +0200 |
|---|---|---|
| committer | Chimrod <> | 2026-06-24 08:33:41 +0200 |
| commit | f805783c2fe7f4dd3f970d48ae122df4dd79da23 (patch) | |
| tree | 7578feba2d79056b383ade16479e15f596aa75e4 | |
| parent | 19ff439d0c8c59ec65f156b58dd237bef2492e80 (diff) | |
| -rw-r--r-- | bin/dune | 1 | ||||
| -rw-r--r-- | bin/lsp_server.ml | 7 |
2 files changed, 5 insertions, 3 deletions
@@ -4,6 +4,7 @@ (libraries sedlex linol + eio linol-eio eio_main qsp_syntax diff --git a/bin/lsp_server.ml b/bin/lsp_server.ml index 62e6105..e59ef12 100644 --- a/bin/lsp_server.ml +++ b/bin/lsp_server.ml @@ -52,7 +52,7 @@ let diagnostics (state : state_after_processing) : Lsp.Types.Diagnostic.t list = so that users only need to override methods that they want the server to actually meaningfully interpret and respond to. *) -class lsp_server = +class lsp_server ~(sw : Eio.Switch.t) = object (self) inherit Linol_eio.Jsonrpc2.server @@ -60,7 +60,7 @@ class lsp_server = val buffers : (Lsp.Types.DocumentUri.t, state_after_processing) Hashtbl.t = Hashtbl.create 32 - method spawn_query_handler f = Linol_eio.spawn f + method spawn_query_handler f = Linol_eio.spawn ~sw f (* We define here a helper method that will: - process a document @@ -106,7 +106,8 @@ let run () = Qsp_checks.Dynamics.active := true; Eio_main.run @@ fun env -> - let s = new lsp_server in + Eio.Switch.run @@ fun sw -> + let s = new lsp_server ~sw in let server = Linol_eio.Jsonrpc2.create_stdio ~env s in let task () = let shutdown () = s#get_status = `ReceivedExit in |
