Module Proof_diffs
val string_to_diffs : string -> diffOpt
val diff_goal_ide : (Goal.goal * Evd.evar_map) option -> Goal.goal -> Evd.evar_map -> Pp.t list * Pp.tComputes the diff between the goals of two Proofs and returns the highlighted lists of hypotheses and conclusions.
If the strings used to display the goal are not lexable (this is believed unlikely), this routine will generate a Diff_Failure. This routine may also raise Diff_Failure under some "impossible" conditions.
If you want to make your call especially bulletproof, catch these exceptions, print a user-visible message, then recall this routine with the first argument set to None, which will skip the diff.
val diff_goal : ?og_s:(Goal.goal * Evd.evar_map) -> Goal.goal -> Evd.evar_map -> Pp.tComputes the diff between two goals
If the strings used to display the goal are not lexable (this is believed unlikely), this routine will generate a Diff_Failure. This routine may also raise Diff_Failure under some "impossible" conditions.
If you want to make your call especially bulletproof, catch these exceptions, print a user-visible message, then recall this routine with the first argument set to None, which will skip the diff.
val tokenize_string : string -> string listConvert a string to a list of token strings using the lexer
val pr_letype_env : ?lax:bool -> ?goal_concl_style:bool -> Environ.env -> Evd.evar_map -> ?impargs:Glob_term.binding_kind list -> EConstr.types -> Pp.tval pr_leconstr_env : ?lax:bool -> ?inctx:bool -> ?scope:Notation_term.scope_name -> Environ.env -> Evd.evar_map -> EConstr.constr -> Pp.tval pr_lconstr_env : ?lax:bool -> ?inctx:bool -> ?scope:Notation_term.scope_name -> Environ.env -> Evd.evar_map -> Constr.constr -> Pp.tval diff_concl : ?og_s:(Goal.goal * Evd.evar_map) -> Evd.evar_map -> Goal.goal -> Pp.tComputes diffs for a single conclusion
val make_goal_map : Proof.t option -> Proof.t -> Goal.goal Evar.Map.tGenerates a map from
nptoopthat maps changed goals to their prior forms. The map doesn't include entries for unchanged goals; unchanged goals will have the same goal id in both versions.opandnpmust be from the same proof document andopmust be for a state beforenp.
type hyp_info={idents : string list;rhs_pp : Pp.t;}
val diff_hyps : string list list -> hyp_info CString.Map.t -> string list list -> hyp_info CString.Map.t -> Pp.t listval diff_proofs : diff_opt:diffOpt -> ?old:Proof.t -> Proof.t -> Pp.tval notify_proof_diff_failure : string -> unit