fgl-5.4.2.0: Martin Erwig's Functional Graph Library
Source code
Contents
Index
Data.Graph.Inductive.Monad
Contents
Classes
Operations
Graph Folds and Maps
Graph Projection
Graph Construction and Destruction
Graph Inspection
Description
Monadic Graphs
Synopsis
class
Monad
m =>
GraphM
m gr
where
emptyM
:: m (gr a b)
isEmptyM
:: m (gr a b) -> m
Bool
matchM
::
Node
-> m (gr a b) -> m (
Decomp
gr a b)
mkGraphM
:: [
LNode
a] -> [
LEdge
b] -> m (gr a b)
labNodesM
:: m (gr a b) -> m [
LNode
a]
matchAnyM
:: m (gr a b) -> m (
GDecomp
gr a b)
noNodesM
:: m (gr a b) -> m
Int
nodeRangeM
:: m (gr a b) -> m (
Node
,
Node
)
labEdgesM
:: m (gr a b) -> m [
LEdge
b]
ufoldM
::
GraphM
m gr => (
Context
a b -> c -> c) -> c -> m (gr a b) -> m c
nodesM
::
GraphM
m gr => m (gr a b) -> m [
Node
]
edgesM
::
GraphM
m gr => m (gr a b) -> m [
Edge
]
newNodesM
::
GraphM
m gr =>
Int
-> m (gr a b) -> m [
Node
]
delNodeM
::
GraphM
m gr =>
Node
-> m (gr a b) -> m (gr a b)
delNodesM
::
GraphM
m gr => [
Node
] -> m (gr a b) -> m (gr a b)
mkUGraphM
::
GraphM
m gr => [
Node
] -> [
Edge
] -> m (gr () ())
contextM
::
GraphM
m gr => m (gr a b) ->
Node
-> m (
Context
a b)
labM
::
GraphM
m gr => m (gr a b) ->
Node
-> m (
Maybe
a)
Classes
class
Monad
m =>
GraphM
m gr
where
Source
Methods
emptyM
:: m (gr a b)
Source
isEmptyM
:: m (gr a b) -> m
Bool
Source
matchM
::
Node
-> m (gr a b) -> m (
Decomp
gr a b)
Source
mkGraphM
:: [
LNode
a] -> [
LEdge
b] -> m (gr a b)
Source
labNodesM
:: m (gr a b) -> m [
LNode
a]
Source
matchAnyM
:: m (gr a b) -> m (
GDecomp
gr a b)
Source
noNodesM
:: m (gr a b) -> m
Int
Source
nodeRangeM
:: m (gr a b) -> m (
Node
,
Node
)
Source
labEdgesM
:: m (gr a b) -> m [
LEdge
b]
Source
Instances
GraphM
IO
SGr
Operations
Graph Folds and Maps
ufoldM
::
GraphM
m gr => (
Context
a b -> c -> c) -> c -> m (gr a b) -> m c
Source
graph fold
Graph Projection
nodesM
::
GraphM
m gr => m (gr a b) -> m [
Node
]
Source
edgesM
::
GraphM
m gr => m (gr a b) -> m [
Edge
]
Source
newNodesM
::
GraphM
m gr =>
Int
-> m (gr a b) -> m [
Node
]
Source
Graph Construction and Destruction
delNodeM
::
GraphM
m gr =>
Node
-> m (gr a b) -> m (gr a b)
Source
delNodesM
::
GraphM
m gr => [
Node
] -> m (gr a b) -> m (gr a b)
Source
mkUGraphM
::
GraphM
m gr => [
Node
] -> [
Edge
] -> m (gr () ())
Source
Graph Inspection
contextM
::
GraphM
m gr => m (gr a b) ->
Node
-> m (
Context
a b)
Source
labM
::
GraphM
m gr => m (gr a b) ->
Node
-> m (
Maybe
a)
Source
Produced by
Haddock
version 0.9