package vcaml

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Vcaml_debug.Toplevel_clientSource

Sourcetype t

This is a barebones implementation of Msgpack RPC for Neovim to facilitate debugging problems in the VCaml library by seeing if the problem is in VCaml or Neovim.

Sourceval open_ : string -> t

Open a connection to a running Neovim instance. You can find the name by checking v:servername or $NVIM_LISTEN_ADDRESS.

Sourceval channel : t -> int

Get the channel for this connection. Once you have this you can issue rpcrequest and rpcnotify calls from your running Neovim instance to Ocaml.

Sourceval request : t -> string -> Msgpack.t list -> unit

Send a synchronous request.

Sourceval notify : t -> string -> Msgpack.t list -> unit

Send an asynchronous notification.

Sourceval respond : t -> msgid:int -> (Msgpack.t, Msgpack.t) Core.Result.t -> unit

Respond to an rpcrequest. The msgid must be the same as the one Neovim sent.

Sourceval receive : t -> [ `Connection_closed | `Waiting_for_neovim | `Message of Msgpack.t ]

Receive a message from Neovim.

Sourceval receive_all_available : t -> Msgpack.t list

Read all available messages from Neovim. Useful for cases where you expect many messages, e.g., for event subscriptions.

Sourceval close : t -> unit

Close the connection.

Sourceval verbose : t -> bool -> unit

Enable / disable printing messages as they are sent and received.

Sourceval pp : Core.Formatter.t -> Msgpack.t -> unit
OCaml

Innovation. Community. Security.