src/Pure/Isar/isar_cmd.ML
changeset 32859 204f749f35a9
parent 32804 ca430e6aee1c
child 33095 bbd52d2f8696
equal deleted inserted replaced
32858:51fda1c8fa2d 32859:204f749f35a9
   448 
   448 
   449 fun string_of_thms state args =
   449 fun string_of_thms state args =
   450   Pretty.string_of (Display.pretty_thms (Proof.context_of state) (Proof.get_thmss state args));
   450   Pretty.string_of (Display.pretty_thms (Proof.context_of state) (Proof.get_thmss state args));
   451 
   451 
   452 fun string_of_prfs full state arg =
   452 fun string_of_prfs full state arg =
   453   Pretty.string_of (case arg of
   453   Pretty.string_of
       
   454     (case arg of
   454       NONE =>
   455       NONE =>
   455         let
   456         let
   456           val (ctxt, (_, thm)) = Proof.get_goal state;
   457           val (ctxt, thm) = Proof.flat_goal state;
   457           val thy = ProofContext.theory_of ctxt;
   458           val thy = ProofContext.theory_of ctxt;
   458           val prf = Thm.proof_of thm;
   459           val prf = Thm.proof_of thm;
   459           val prop = Thm.full_prop_of thm;
   460           val prop = Thm.full_prop_of thm;
   460           val prf' = Proofterm.rewrite_proof_notypes ([], []) prf
   461           val prf' = Proofterm.rewrite_proof_notypes ([], []) prf;
   461         in
   462         in
   462           ProofSyntax.pretty_proof ctxt
   463           ProofSyntax.pretty_proof ctxt
   463             (if full then Reconstruct.reconstruct_proof thy prop prf' else prf')
   464             (if full then Reconstruct.reconstruct_proof thy prop prf' else prf')
   464         end
   465         end
   465     | SOME args => Pretty.chunks
   466     | SOME args => Pretty.chunks