src/Pure/Thy/thy_info.ML
changeset 28980 9d7ea903e877
parent 28976 53c96f58e38f
child 29000 5e03bc760355
equal deleted inserted replaced
28979:3ce619d8d432 28980:9d7ea903e877
   321       (case Graph.get_node task_graph name of Task body => SOME (name, body) | _ => NONE));
   321       (case Graph.get_node task_graph name of Task body => SOME (name, body) | _ => NONE));
   322 
   322 
   323     fun future (name, body) tab =
   323     fun future (name, body) tab =
   324       let
   324       let
   325         val deps = map_filter (Symtab.lookup tab) (Graph.imm_preds task_graph name);
   325         val deps = map_filter (Symtab.lookup tab) (Graph.imm_preds task_graph name);
   326         val x = Future.future NONE deps true body;
   326         val x = Future.fork_deps deps body;
   327       in (x, Symtab.update (name, Future.task_of x) tab) end;
   327       in (x, Symtab.update (name, x) tab) end;
   328     val _ = ignore (Exn.release_all (Future.join_results (#1 (fold_map future tasks Symtab.empty))));
   328     val _ = ignore (Exn.release_all (Future.join_results (#1 (fold_map future tasks Symtab.empty))));
   329   in () end;
   329   in () end;
   330 
   330 
   331 local
   331 local
   332 
   332