src/Pure/context.ML
changeset 22148 3b99944136ef
parent 22131 fa8960e165a6
child 22149 7a8c2a556d28
equal deleted inserted replaced
22147:f4ed4d940d44 22148:3b99944136ef
    42   val self_ref: theory -> theory_ref
    42   val self_ref: theory -> theory_ref
    43   val deref: theory_ref -> theory
    43   val deref: theory_ref -> theory
    44   val copy_thy: theory -> theory
    44   val copy_thy: theory -> theory
    45   val checkpoint_thy: theory -> theory
    45   val checkpoint_thy: theory -> theory
    46   val finish_thy: theory -> theory
    46   val finish_thy: theory -> theory
    47   val is_finished_thy: theory -> bool
       
    48   val theory_data_of: theory -> string list
    47   val theory_data_of: theory -> string list
    49   val pre_pure_thy: theory
    48   val pre_pure_thy: theory
    50   val begin_thy: (theory -> Pretty.pp) -> string -> theory list -> theory
    49   val begin_thy: (theory -> Pretty.pp) -> string -> theory list -> theory
    51   (*proof context*)
    50   (*proof context*)
    52   type proof
    51   type proof
   404     val history' = make_history name 0 [];
   403     val history' = make_history name 0 [];
   405     val thy'' = vitalize (Theory (identity', data', ancestry', history'));
   404     val thy'' = vitalize (Theory (identity', data', ancestry', history'));
   406     val _ = List.app (fn r => r := thy'') rs;
   405     val _ = List.app (fn r => r := thy'') rs;
   407   in thy'' end;
   406   in thy'' end;
   408 
   407 
   409 fun is_finished_thy thy =
       
   410   (check_thy thy; not (is_draft thy) andalso #version (history_of thy) = 0);
       
   411 
       
   412 
   408 
   413 (* theory data *)
   409 (* theory data *)
   414 
   410 
   415 fun dest_data name_of tab =
   411 fun dest_data name_of tab =
   416   map name_of (Datatab.keys tab)
   412   map name_of (Datatab.keys tab)