Fleche.DocSourcetype t = private {uri : string;version : int;contents : Contents.t;root : Coq.State.t;nodes : Node.t list;diags_dirty : bool;completed : Completion.t;}A Flèche document is basically a node list, which is a crude form of a meta-data map Loc.t -> data, where for now data is the contents of Node.t.
val create :
state:Coq.State.t ->
workspace:Coq.Workspace.t ->
uri:string ->
version:int ->
contents:string ->
(t, Loc.t) Coq.Protect.R.tNote, create calls Coq but it is not cached in the Memo.t table
Update the contents of a document, updating the right structures for incremental checking.
check ~ofmt ~target ~doc (), target will have Flèche stop after the point specified there has been reached.