Top_closure.Make
module Keys : Top_closure_intf.Keys
module Monad : Monad_intf.S1
val top_closure : key:('a -> Keys.elt) -> deps:('a -> 'a Monad.t) -> 'a list -> 'a Monad.t
Returns Error cycle in case the graph is not a DAG
Error cycle