package coq-lsp

  1. Overview
  2. Docs
type t
val compare : t -> t -> int
val equal : t -> t -> bool
val hash : t -> int
val mode : st:t -> Pvernac.proof_mode option
val parsing : st:t -> Vernacstate.Parser.t
module Proof : sig ... end

Proof states

val lemmas : st:t -> Proof.t option
val in_state : st:t -> f:('a -> 'b) -> 'a -> ('b, Loc.t) Protect.E.t

Execute a command in state st. Unfortunately this can produce anomalies as Coq state setting is imperative, so we need to wrap it in protect.

val drop_proofs : st:t -> t

Drop the proofs from the state

val admit : st:t -> t

Admit an ongoing proof

val marshal_in : in_channel -> t

Extra / interanl

val marshal_out : out_channel -> t -> unit
val of_coq : Vernacstate.t -> t
val to_coq : t -> Vernacstate.t