-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Tools for efficient immutable graphs -- -- A set of tools for constructing immutable graphs which are both memory -- and performance-efficient. @package edges @version 0.4.0.2 module Edges.NodeCounts data NodeCounts entity node :: Edges entity anyEntity -> Node entity -> NodeCounts entity nodeTargets :: Edges source target -> Node source -> NodeCounts target -- | Count the occurrences of targets based on the occurrences of sources. -- -- Utilizes concurrency. targets :: Edges source target -> NodeCounts source -> NodeCounts target toList :: NodeCounts entity -> [Word32] toUnboxedVector :: NodeCounts entity -> Vector Word32 instance GHC.Show.Show (Edges.Types.NodeCounts a) module Edges.Potoki.Produce nodes :: Edges a x -> Produce (Node a) nodeCounts :: Edges a x -> (Node a -> NodeCounts b) -> Produce (Node a, NodeCounts b) nodeCountsFromFile :: FilePath -> Produce (Either IOException (Either Text (Node a, NodeCounts b))) module Edges.Node newtype Node entity Node :: Int -> Node entity genWithLimit :: Int -> Gen (Node a) instance GHC.Classes.Eq (Edges.Types.Node a) instance GHC.Classes.Ord (Edges.Types.Node a) instance GHC.Show.Show (Edges.Types.Node a) module Edges.IO encodeNodeCountsToFile :: FilePath -> Edges a x -> (Node a -> NodeCounts z) -> IO (Either IOException ()) module Edges.Edges data Edges source target list :: [(Node a, Node b)] -> Edges a b listBipartite :: [(Node a, Node b)] -> (Edges a b, Edges b a) primListBipartite :: [(Int, Int)] -> (Edges a b, Edges b a) toAssocUnfoldM :: Monad m => Edges a b -> UnfoldM m (Node a, Node b) toAssocList :: Edges a b -> [(Node a, Node b)] genBipartiteWithLimits :: Int -> Int -> Gen (Edges a b, Edges b a) instance GHC.Classes.Eq (Edges.Types.Edges a b) instance GHC.Show.Show (Edges.Types.Edges a b)