apart-0.1.0: Get all your structure and rip it apart.
Data.Apart.Structures.Graph
Synopsis
type Graph = Cofree Edge Source #
Directed acyclic graph.
data Edge a Source #
Constructors
Instances
Methods
fmap :: (a -> b) -> Edge a -> Edge b #
(<$) :: a -> Edge b -> Edge a #
fold :: Monoid m => Edge m -> m #
foldMap :: Monoid m => (a -> m) -> Edge a -> m #
foldr :: (a -> b -> b) -> b -> Edge a -> b #
foldr' :: (a -> b -> b) -> b -> Edge a -> b #
foldl :: (b -> a -> b) -> b -> Edge a -> b #
foldl' :: (b -> a -> b) -> b -> Edge a -> b #
foldr1 :: (a -> a -> a) -> Edge a -> a #
foldl1 :: (a -> a -> a) -> Edge a -> a #
toList :: Edge a -> [a] #
null :: Edge a -> Bool #
length :: Edge a -> Int #
elem :: Eq a => a -> Edge a -> Bool #
maximum :: Ord a => Edge a -> a #
minimum :: Ord a => Edge a -> a #
sum :: Num a => Edge a -> a #
product :: Num a => Edge a -> a #
traverse :: Applicative f => (a -> f b) -> Edge a -> f (Edge b) #
sequenceA :: Applicative f => Edge (f a) -> f (Edge a) #
mapM :: Monad m => (a -> m b) -> Edge a -> m (Edge b) #
sequence :: Monad m => Edge (m a) -> m (Edge a) #
showsPrec :: Int -> Edge a -> ShowS #
show :: Edge a -> String #
showList :: [Edge a] -> ShowS #
isolated :: Foldable t => t a -> Segment Graph a Source #
star :: Foldable t => a -> t a -> Graph a Source #
remove :: Eq a => a -> Cofree Edge a -> Edge (Cofree Edge a) Source #
Remove vertex and all of its edges.