src/Pure/Isar/isar_thy.ML
changeset 6531 8064ed198068
parent 6501 392333eb31cb
child 6552 28553eba1913
equal deleted inserted replaced
6530:473305b71b74 6531:8064ed198068
   225 val proof = ProofHistory.applys o Method.proof;
   225 val proof = ProofHistory.applys o Method.proof;
   226 
   226 
   227 
   227 
   228 (* local endings *)
   228 (* local endings *)
   229 
   229 
   230 val local_qed = Toplevel.proof o ProofHistory.applys_close o Method.local_qed;
   230 (* FIXME
   231 val local_terminal_proof = Toplevel.proof o ProofHistory.applys_close o Method.local_terminal_proof;
   231 val print_proof = Toplevel.print oo Toplevel.proof;
   232 val local_immediate_proof = Toplevel.proof (ProofHistory.applys_close Method.local_immediate_proof);
   232 *)
   233 val local_default_proof = Toplevel.proof (ProofHistory.applys_close Method.local_default_proof);
   233 val print_proof = Toplevel.proof;
       
   234 
       
   235 val local_qed = print_proof o ProofHistory.applys_close o Method.local_qed;
       
   236 val local_terminal_proof = print_proof o ProofHistory.applys_close o Method.local_terminal_proof;
       
   237 val local_immediate_proof = print_proof (ProofHistory.applys_close Method.local_immediate_proof);
       
   238 val local_default_proof = print_proof (ProofHistory.applys_close Method.local_default_proof);
   234 
   239 
   235 
   240 
   236 (* global endings *)
   241 (* global endings *)
   237 
   242 
   238 val kill_proof = Proof.theory_of o ProofHistory.current;
   243 val kill_proof = Proof.theory_of o ProofHistory.current;
   239 
   244 
   240 fun global_result finish = Toplevel.proof_to_theory (fn prf =>
   245 fun global_result finish = Toplevel.proof_to_theory (fn prf =>
   241   let
   246   let
   242     val state = ProofHistory.current prf;
   247     val state = ProofHistory.current prf;
   243     val _ = if Proof.at_bottom state then () else raise Toplevel.UNDEF;
   248     val _ = if Proof.at_bottom state then () else raise Toplevel.UNDEF;
   244     val (thy, (kind, name, thm)) = finish state;
   249     val (thy, {kind, name, thm}) = finish state;
   245 
   250 
   246     val prt_result = Pretty.block
   251     val prt_result = Pretty.block
   247       [Pretty.str (kind ^ " " ^ name ^ ":"), Pretty.fbrk, Display.pretty_thm thm];
   252       [Pretty.str (kind ^ " " ^ name ^ ":"), Pretty.fbrk, Display.pretty_thm thm];
   248   in Pretty.writeln prt_result; thy end);
   253   in Pretty.writeln prt_result; thy end);
   249 
   254