src/Pure/Isar/isar_thy.ML
changeset 7909 824ea50b8dbb
parent 7862 3e75fbd4a46b
child 7932 92df50fb89ca
equal deleted inserted replaced
7908:0b191b36ad97 7909:824ea50b8dbb
   515     val thy = bg name parents paths;
   515     val thy = bg name parents paths;
   516   in Present.begin_theory name parents paths thy end;
   516   in Present.begin_theory name parents paths thy end;
   517 
   517 
   518 val begin_theory = gen_begin_theory ThyInfo.begin_theory;
   518 val begin_theory = gen_begin_theory ThyInfo.begin_theory;
   519 val begin_update_theory = gen_begin_theory ThyInfo.begin_update_theory;
   519 val begin_update_theory = gen_begin_theory ThyInfo.begin_update_theory;
   520 val end_theory = ThyInfo.end_theory;
   520 
   521 fun kill_theory thy = ThyInfo.remove_thy (PureThy.get_name thy);
   521 fun check_known_thy name =
       
   522   ThyInfo.known_thy name orelse (warning ("Lost theory " ^ quote name); false);
       
   523 
       
   524 fun end_theory thy =
       
   525   if check_known_thy (PureThy.get_name thy) then ThyInfo.end_theory thy
       
   526   else thy;
       
   527 
       
   528 fun kill_theory thy =
       
   529   let val name = PureThy.get_name thy
       
   530   in if check_known_thy name then ThyInfo.remove_thy name else () end;
   522 
   531 
   523 
   532 
   524 fun bg_theory (name, parents, files) int =
   533 fun bg_theory (name, parents, files) int =
   525   (if int then begin_update_theory else begin_theory) name parents files;
   534   (if int then begin_update_theory else begin_theory) name parents files;
   526 
   535