data-reify-0.6: Reify a recursive data structure into an explicit graph.

Safe HaskellSafe-Infered




class MuRef a whereSource

MuRef is a class that provided a way to reference into a specific type, and a way to map over the deferenced internals.

Associated Types

type DeRef a :: * -> *Source


mapDeRef :: Applicative f => (forall b. (MuRef b, DeRef a ~ DeRef b) => b -> f u) -> a -> f (DeRef a u)Source

reifyGraph :: MuRef s => s -> IO (Graph (DeRef s))Source

reifyGraph takes a data structure that admits MuRef, and returns a Graph that contains the dereferenced nodes, with their children as Int rather than recursive values.