package vsrocq-language-server

  1. Overview
  2. Docs
VSRocq language server

Install

dune-project
 Dependency

Authors

Maintainers

Sources

vsrocq-language-server-2.4.3.tar.gz
md5=fbc594cef4ba2469882803c12fb5cd51
sha512=2f93d42591e9030f2786f1d9a9783ed92c2cd299ccfd99d0a65f3b5984762f61c1bec3b3f854a557f72ca6c309e9c1eaec27065f0ee1a9cb9dfa4a7ee05dac15

doc/vsrocq-language-server.dm/Dm/ExecutionManager/index.html

Module Dm.ExecutionManagerSource

The event manager is in charge of the actual event of tasks (as defined by the scheduler), caching event states and invalidating them. It can delegate to worker processes via DelegationManager

Sourcetype delegation_mode =
  1. | CheckProofsInMaster
  2. | SkipProofs
  3. | DelegateProofsToWorkers of {
    1. number_of_workers : int;
    }
Sourcetype options = {
  1. delegation_mode : delegation_mode;
  2. completion_options : Protocol.Settings.Completion.t;
  3. enableDiagnostics : bool;
}
Sourceval is_diagnostics_enabled : unit -> bool
Sourcetype state

Execution state, includes the cache

Sourcetype event
Sourcetype events = event Sel.Event.t list
Sourcetype errored_sentence = (Types.sentence_id * Loc.t option) option
Sourceval pr_event : event -> Pp.t
Sourceval init : Vernacstate.t -> feedback_pipe:Types.feedback_pipe -> state
Sourceval destroy : state -> unit
Sourceval get_options : unit -> options
Sourceval set_options : options -> unit
Sourceval set_default_options : unit -> unit
Sourceval invalidate : state -> Types.sentence_id -> state
Sourceval is_remotely_executed : state -> Types.sentence_id -> bool

we know if it worked but we do not have the state in this process

Sourceval get_initial_vernac_state : state -> Vernacstate.t

Events for the main loop

Sourcetype prepared_task

Execution happens in two steps. In particular the event one takes only one task at a time to ease checking for interruption

Sourceval get_id_of_executed_task : prepared_task -> Types.sentence_id
Sourcemodule ProofWorkerProcess : sig ... end

Rocq toplevels for delegation without fork