diff options
author | Hugo Herbelin <Hugo.Herbelin@inria.fr> | 2014-08-15 17:43:35 +0200 |
---|---|---|
committer | Hugo Herbelin <Hugo.Herbelin@inria.fr> | 2014-08-18 18:56:39 +0200 |
commit | 5dcafa956e49eefc451dd021a0fe8ad2e2338088 (patch) | |
tree | c851c0f1cb32815bae652309c39f6d4a681fd2cc /tactics/tacticals.mli | |
parent | 72498d6d68ac12ba4db0db7d54f0ac6fdaaf0c61 (diff) |
Lazy interpretation of patterns so that expressions such as "intros H H'/H"
can be given with second H bound by the first one.
Not very satisfied by passing closure to tactics.ml, but otherwise
tactics would have to be aware of glob_constr.
Diffstat (limited to 'tactics/tacticals.mli')
-rw-r--r-- | tactics/tacticals.mli | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/tactics/tacticals.mli b/tactics/tacticals.mli index de2bbbfae..54aa3b697 100644 --- a/tactics/tacticals.mli +++ b/tactics/tacticals.mli @@ -117,16 +117,16 @@ type branch_assumptions = { (** [check_disjunctive_pattern_size loc pats n] returns an appropriate error message if |pats| <> n *) val check_or_and_pattern_size : - Loc.t -> constr or_and_intro_pattern_expr -> int -> unit + Loc.t -> delayed_open_constr or_and_intro_pattern_expr -> int -> unit (** Tolerate "[]" to mean a disjunctive pattern of any length *) -val fix_empty_or_and_pattern : int -> constr or_and_intro_pattern_expr -> - constr or_and_intro_pattern_expr +val fix_empty_or_and_pattern : int -> + delayed_open_constr or_and_intro_pattern_expr -> + delayed_open_constr or_and_intro_pattern_expr (** Useful for [as intro_pattern] modifier *) val compute_induction_names : - int -> constr or_and_intro_pattern_expr located option -> - intro_patterns array + int -> or_and_intro_pattern option -> intro_patterns array val elimination_sort_of_goal : goal sigma -> sorts_family val elimination_sort_of_hyp : Id.t -> goal sigma -> sorts_family @@ -242,11 +242,11 @@ module New : sig constr -> unit Proofview.tactic val case_then_using : - constr or_and_intro_pattern_expr located option -> (branch_args -> unit Proofview.tactic) -> + or_and_intro_pattern option -> (branch_args -> unit Proofview.tactic) -> constr option -> pinductive -> Term.constr * Term.types -> unit Proofview.tactic val case_nodep_then_using : - constr or_and_intro_pattern_expr located option -> (branch_args -> unit Proofview.tactic) -> + or_and_intro_pattern option -> (branch_args -> unit Proofview.tactic) -> constr option -> pinductive -> Term.constr * Term.types -> unit Proofview.tactic val elim_on_ba : (branch_assumptions -> unit Proofview.tactic) -> branch_args -> unit Proofview.tactic |