sig
type 'a or_error = ('a, string) CCResult.t
type state = Logtk.Flex_state.t
type env_action = (module Env.S) -> unit
type prec_action =
Extensions.state -> Logtk.Compute_prec.t -> Logtk.Compute_prec.t
type 'a state_actions = ('a -> Extensions.state -> Extensions.state) list
type t = {
name : string;
prio : int;
start_file_actions : string Extensions.state_actions;
post_parse_actions :
Logtk.UntypedAST.statement Sequence.t Extensions.state_actions;
post_typing_actions :
Logtk.TypeInference.typed_statement CCVector.ro_vector
Extensions.state_actions;
post_cnf_actions :
Logtk.Statement.clause_t CCVector.ro_vector Extensions.state_actions;
ord_select_actions :
(Logtk.Ordering.t * Selection.t) Extensions.state_actions;
ctx_actions : (module Ctx_intf.S) Extensions.state_actions;
prec_actions : Extensions.prec_action list;
env_actions : Extensions.env_action list;
}
val default : Extensions.t
val register : Extensions.t -> unit
val extensions : unit -> Extensions.t list
val by_name : string -> Extensions.t option
val names : unit -> string Sequence.t
end