equal
deleted
inserted
replaced
56 val add_free_names: Proof.context -> term -> string list -> string list |
56 val add_free_names: Proof.context -> term -> string list -> string list |
57 val add_frees: Proof.context -> term -> (string * typ) list -> (string * typ) list |
57 val add_frees: Proof.context -> term -> (string * typ) list -> (string * typ) list |
58 val add_fixes_binding: binding list -> Proof.context -> string list * Proof.context |
58 val add_fixes_binding: binding list -> Proof.context -> string list * Proof.context |
59 val add_fixes: string list -> Proof.context -> string list * Proof.context |
59 val add_fixes: string list -> Proof.context -> string list * Proof.context |
60 val add_fixes_direct: string list -> Proof.context -> Proof.context |
60 val add_fixes_direct: string list -> Proof.context -> Proof.context |
|
61 val add_fixes_implicit: term -> Proof.context -> Proof.context |
61 val fix_dummy_patterns: term -> Proof.context -> term * Proof.context |
62 val fix_dummy_patterns: term -> Proof.context -> term * Proof.context |
62 val variant_fixes: string list -> Proof.context -> string list * Proof.context |
63 val variant_fixes: string list -> Proof.context -> string list * Proof.context |
63 val gen_all: Proof.context -> thm -> thm |
64 val gen_all: Proof.context -> thm -> thm |
64 val export_terms: Proof.context -> Proof.context -> term list -> term list |
65 val export_terms: Proof.context -> Proof.context -> term list -> term list |
65 val exportT_terms: Proof.context -> Proof.context -> term list -> term list |
66 val exportT_terms: Proof.context -> Proof.context -> term list -> term list |
473 fun add_fixes_direct xs ctxt = ctxt |
474 fun add_fixes_direct xs ctxt = ctxt |
474 |> set_body false |
475 |> set_body false |
475 |> (snd o add_fixes xs) |
476 |> (snd o add_fixes xs) |
476 |> restore_body ctxt; |
477 |> restore_body ctxt; |
477 |
478 |
|
479 fun add_fixes_implicit t ctxt = ctxt |
|
480 |> not (is_body ctxt) ? add_fixes_direct (rev (add_free_names ctxt t [])); |
|
481 |
478 |
482 |
479 (* dummy patterns *) |
483 (* dummy patterns *) |
480 |
484 |
481 fun fix_dummy_patterns (Const ("Pure.dummy_pattern", T)) ctxt = |
485 fun fix_dummy_patterns (Const ("Pure.dummy_pattern", T)) ctxt = |
482 let val ([x], ctxt') = ctxt |> set_body true |> add_fixes [Name.uu_] ||> restore_body ctxt |
486 let val ([x], ctxt') = ctxt |> set_body true |> add_fixes [Name.uu_] ||> restore_body ctxt |