graph-wrapper-0.2.5.1: A wrapper around the standard Data.Graph with a less awkward interface

Safe HaskellNone
LanguageHaskell98

Data.Graph.Wrapper.Internal

Description

Exposes things that are considered to be too unstable for inclusion in the exports of Data.Graph.Wrapper.

Use of this module should be avoided as it will change frequently and changes to this module alone will not necessarily follow the Package Versioning Policy.

Synopsis

Documentation

type Edge i = (i, i) #

An edge from the first vertex to the second

data Graph i v #

A directed graph

Instances

Functor (Graph i) # 

Methods

fmap :: (a -> b) -> Graph i a -> Graph i b #

(<$) :: a -> Graph i b -> Graph i a #

Foldable (Graph i) # 

Methods

fold :: Monoid m => Graph i m -> m #

foldMap :: Monoid m => (a -> m) -> Graph i a -> m #

foldr :: (a -> b -> b) -> b -> Graph i a -> b #

foldr' :: (a -> b -> b) -> b -> Graph i a -> b #

foldl :: (b -> a -> b) -> b -> Graph i a -> b #

foldl' :: (b -> a -> b) -> b -> Graph i a -> b #

foldr1 :: (a -> a -> a) -> Graph i a -> a #

foldl1 :: (a -> a -> a) -> Graph i a -> a #

toList :: Graph i a -> [a] #

null :: Graph i a -> Bool #

length :: Graph i a -> Int #

elem :: Eq a => a -> Graph i a -> Bool #

maximum :: Ord a => Graph i a -> a #

minimum :: Ord a => Graph i a -> a #

sum :: Num a => Graph i a -> a #

product :: Num a => Graph i a -> a #

Traversable (Graph i) # 

Methods

traverse :: Applicative f => (a -> f b) -> Graph i a -> f (Graph i b) #

sequenceA :: Applicative f => Graph i (f a) -> f (Graph i a) #

mapM :: Monad m => (a -> m b) -> Graph i a -> m (Graph i b) #

sequence :: Monad m => Graph i (m a) -> m (Graph i a) #

(Ord i, Show i, Show v) => Show (Graph i v) # 

Methods

showsPrec :: Int -> Graph i v -> ShowS #

show :: Graph i v -> String #

showList :: [Graph i v] -> ShowS #

traverseWithKey :: Applicative t => (i -> a -> t b) -> Graph i a -> t (Graph i b) #

indexGVertex :: Ord i => Graph i v -> i -> Vertex #

gVertexIndex :: Graph i v -> Vertex -> i #

gVertexVertex :: Graph i v -> Vertex -> v #

vertex :: Ord i => Graph i v -> i -> v #

Retrieve data associated with the vertex

indexGVertex' :: Ord i => Array Vertex i -> i -> Vertex #

vertices :: Graph i v -> [i] #

Exhaustive list of vertices in the graph

edges :: Graph i v -> [Edge i] #

Exhaustive list of edges in the graph