(************************************************************************) (* v * The Coq Proof Assistant / The Coq Development Team *) (* unit val extern_state : string -> unit type state val freeze : marshallable:bool -> state val unfreeze : state -> unit (** {6 Rollback } *) (** [with_state_protection f x] applies [f] to [x] and restores the state of the whole system as it was before applying [f] *) val with_state_protection : ('a -> 'b) -> 'a -> 'b