src/Pure/facts.ML
changeset 74234 4f2bd13edce3
parent 74112 d0527bb2e590
child 77970 31ea5c1f874d
equal deleted inserted replaced
74233:9eff7c673b42 74234:4f2bd13edce3
   215   Name_Space.fold_table (fn (a, Static ths) => f (a, ths) | _ => I) o facts_of;
   215   Name_Space.fold_table (fn (a, Static ths) => f (a, ths) | _ => I) o facts_of;
   216 
   216 
   217 fun consolidate facts =
   217 fun consolidate facts =
   218   let
   218   let
   219     val unfinished =
   219     val unfinished =
   220       (facts, []) |-> fold_static_lazy (fn (_, ths) => if Lazy.is_finished ths then I else cons ths);
   220       build (facts |> fold_static_lazy (fn (_, ths) =>
       
   221         if Lazy.is_finished ths then I else cons ths));
   221     val _ = Lazy.consolidate unfinished;
   222     val _ = Lazy.consolidate unfinished;
   222   in facts end;
   223   in facts end;
   223 
   224 
   224 fun included verbose prev_facts facts name =
   225 fun included verbose prev_facts facts name =
   225   not (exists (fn prev => defined prev name) prev_facts orelse
   226   not (exists (fn prev => defined prev name) prev_facts orelse