haskell-igraph-0.5.0: Haskell interface of the igraph library.
IGraph.Types
type Node = Int Source #
type LNode a = (Node, a) Source #
type Edge = (Node, Node) Source #
type LEdge a = (Edge, a) Source #
data U Source #
Undirected graph.
Methods
new :: PrimMonad m => Int -> m (MLGraph (PrimState m) U v e) Source #
addNodes :: PrimMonad m => Int -> MLGraph (PrimState m) U v e -> m () Source #
addLNodes :: (Serialize v, PrimMonad m) => [v] -> MLGraph (PrimState m) U v e -> m () Source #
delNodes :: PrimMonad m => [Int] -> MLGraph (PrimState m) U v e -> m () Source #
addEdges :: PrimMonad m => [(Int, Int)] -> MLGraph (PrimState m) U v e -> m () Source #
addLEdges :: (PrimMonad m, Serialize e) => [LEdge e] -> MLGraph (PrimState m) U v e -> m () Source #
delEdges :: PrimMonad m => [(Int, Int)] -> MLGraph (PrimState m) U v e -> m () Source #
isDirected :: LGraph U v e -> Bool Source #
isD :: U -> Bool Source #
nNodes :: LGraph U v e -> Int Source #
nodes :: LGraph U v e -> [Node] Source #
labNodes :: Serialize v => LGraph U v e -> [LNode v] Source #
nEdges :: LGraph U v e -> Int Source #
edges :: LGraph U v e -> [Edge] Source #
labEdges :: Serialize e => LGraph U v e -> [LEdge e] Source #
hasEdge :: LGraph U v e -> Edge -> Bool Source #
nodeLab :: Serialize v => LGraph U v e -> Node -> v Source #
getNodes :: (Hashable v, Eq v) => LGraph U v e -> v -> [Node] Source #
edgeLab :: Serialize e => LGraph U v e -> Edge -> e Source #
getEdgeByEid :: LGraph U v e -> Int -> Edge Source #
getEdgeLabByEid :: Serialize e => LGraph U v e -> Int -> e Source #
data D Source #
Directed graph.
new :: PrimMonad m => Int -> m (MLGraph (PrimState m) D v e) Source #
addNodes :: PrimMonad m => Int -> MLGraph (PrimState m) D v e -> m () Source #
addLNodes :: (Serialize v, PrimMonad m) => [v] -> MLGraph (PrimState m) D v e -> m () Source #
delNodes :: PrimMonad m => [Int] -> MLGraph (PrimState m) D v e -> m () Source #
addEdges :: PrimMonad m => [(Int, Int)] -> MLGraph (PrimState m) D v e -> m () Source #
addLEdges :: (PrimMonad m, Serialize e) => [LEdge e] -> MLGraph (PrimState m) D v e -> m () Source #
delEdges :: PrimMonad m => [(Int, Int)] -> MLGraph (PrimState m) D v e -> m () Source #
isDirected :: LGraph D v e -> Bool Source #
isD :: D -> Bool Source #
nNodes :: LGraph D v e -> Int Source #
nodes :: LGraph D v e -> [Node] Source #
labNodes :: Serialize v => LGraph D v e -> [LNode v] Source #
nEdges :: LGraph D v e -> Int Source #
edges :: LGraph D v e -> [Edge] Source #
labEdges :: Serialize e => LGraph D v e -> [LEdge e] Source #
hasEdge :: LGraph D v e -> Edge -> Bool Source #
nodeLab :: Serialize v => LGraph D v e -> Node -> v Source #
getNodes :: (Hashable v, Eq v) => LGraph D v e -> v -> [Node] Source #
edgeLab :: Serialize e => LGraph D v e -> Edge -> e Source #
getEdgeByEid :: LGraph D v e -> Int -> Edge Source #
getEdgeLabByEid :: Serialize e => LGraph D v e -> Int -> e Source #
vertexAttr :: String Source #
edgeAttr :: String Source #