package coq-core
Install
Dune Dependency
Authors
Maintainers
Sources
md5=13d2793fc6413aac5168822313e4864e
sha512=ec8379df34ba6e72bcf0218c66fef248b0e4c5c436fb3f2d7dd83a2c5f349dd0874a67484fcf9c0df3e5d5937d7ae2b2a79274725595b4b0065a381f70769b42
doc/coq-core.stm/Stm/index.html
Module Stm
Source
state-transaction-machine interface
The STM document type stm_doc_type
determines some properties such as what uncompleted proofs are allowed and what gets recorded to aux files.
type stm_init_options = {
doc_type : stm_doc_type;
(*The STM does set some internal flags differently depending on the specified
*)doc_type
. This distinction should disappear at some some point.injections : Coqargs.injection_command list;
(*Injects Require and Set/Unset commands before the initial state is ready
*)
}
STM initialization options:
The type of a STM document
init_process
performs some low-level initialization, call early
init_core
snapshorts the initial system state
new_doc opt
Creates a new document with options opt
val parse_sentence :
doc:doc ->
Stateid.t ->
entry:(Pvernac.proof_mode option -> 'a Pcoq.Entry.t) ->
Pcoq.Parsable.t ->
'a
parse_sentence sid entry pa
Reads a sentence from pa
with parsing state sid
and non terminal entry
. entry
receives in input the current proof mode. sid
should be associated with a valid parsing state (which may not be the case if an error was raised at parsing time).
val snapshot_vio :
create_vos:bool ->
doc:doc ->
output_native_objects:bool ->
Names.DirPath.t ->
string ->
unit
val finish_tasks :
string ->
Library.seg_univ ->
Library.seg_proofs ->
tasks ->
Library.seg_univ * Library.seg_proofs
workers **************************************************************** *
document structure customization *************************************** *
module DynBlockData : Dyn.S
type static_block_declaration = {
block_start : Stateid.t;
block_stop : Stateid.t;
dynamic_switch : Stateid.t;
carry_on_data : DynBlockData.t;
}
type document_view = {
entry_point : document_node;
prev_node : document_node -> document_node option;
}
type recovery_action = {
base_state : Stateid.t;
goals_to_admit : Evar.t list;
recovery_command : Vernacexpr.vernac_control option;
}
val register_proof_block_delimiter :
Vernacextend.proof_block_name ->
static_block_detection ->
dynamic_block_error_recovery ->
unit
customization ********************************************************** *
User adds a sentence to the document (after parsing)