graph-core-0.3.0.0: Fast, memory efficient and persistent graph implementation

Safe HaskellNone
LanguageHaskell98

Data.Core.Graph

Documentation

data Graph #

Instances

Eq Graph # 

Methods

(==) :: Graph -> Graph -> Bool #

(/=) :: Graph -> Graph -> Bool #

Show Graph # 

Methods

showsPrec :: Int -> Graph -> ShowS #

show :: Graph -> String #

showList :: [Graph] -> ShowS #

NFData Graph # 

Methods

rnf :: Graph -> () #

type Node = Int #

data Edge #

Constructors

Edge 

Fields

Instances

Eq Edge # 

Methods

(==) :: Edge -> Edge -> Bool #

(/=) :: Edge -> Edge -> Bool #

Ord Edge # 

Methods

compare :: Edge -> Edge -> Ordering #

(<) :: Edge -> Edge -> Bool #

(<=) :: Edge -> Edge -> Bool #

(>) :: Edge -> Edge -> Bool #

(>=) :: Edge -> Edge -> Bool #

max :: Edge -> Edge -> Edge #

min :: Edge -> Edge -> Edge #

Show Edge # 

Methods

showsPrec :: Int -> Edge -> ShowS #

show :: Edge -> String #

showList :: [Edge] -> ShowS #

Hashable Edge # 

Methods

hashWithSalt :: Int -> Edge -> Int #

hash :: Edge -> Int #

fromAdj :: [(Node, [Node])] -> Graph #

nodes :: Graph -> [Node] #

edges :: Graph -> [Edge] #

hasEdge :: Node -> Node -> Graph -> Bool #

hullFold :: Graph -> (b -> Node -> b) -> b -> Node -> b #

hullFoldM :: Monad m => Graph -> (b -> Node -> m b) -> b -> Node -> m b #

rhullFold :: Graph -> (b -> Node -> b) -> b -> Node -> b #

edgesAdj :: AdjList -> [Edge] #