Portability | DeriveFunctor, DeriveFoldable, DeriveTraversable, MultiParamTypeClasses |
---|---|
Stability | experimental |
Maintainer | Douglas Burke |
This module defines a Labelled Directed Graph and Label classes, and the Arc datatype.
- class (Eq (lg lb), Eq lb) => LDGraph lg lb where
- setArcs :: [Arc lb] -> lg lb -> lg lb
- getArcs :: lg lb -> [Arc lb]
- extract :: Selector lb -> lg lb -> lg lb
- add :: lg lb -> lg lb -> lg lb
- delete :: lg lb -> lg lb -> lg lb
- labels :: lg lb -> [lb]
- nodes :: lg lb -> [lb]
- containedIn :: lg lb -> lg lb -> Bool
- update :: ([Arc lb] -> [Arc lb]) -> lg lb -> lg lb
- replaceArcs :: LDGraph lg lb => lg lb -> [Arc lb] -> lg lb
- class (Eq lb, Show lb, Ord lb) => Label lb where
- data Arc lb = Arc {}
- arcSubj :: Arc lb -> lb
- arcPred :: Arc lb -> lb
- arcObj :: Arc lb -> lb
- arc :: lb -> lb -> lb -> Arc lb
- arcToTriple :: Arc lb -> (lb, lb, lb)
- arcFromTriple :: (lb, lb, lb) -> Arc lb
- type Selector lb = Arc lb -> Bool
- hasLabel :: Eq lb => lb -> Arc lb -> Bool
- arcLabels :: Arc lb -> [lb]
Documentation
replaceArcs :: LDGraph lg lb => lg lb -> [Arc lb] -> lg lbSource
Function to replace arcs in a graph with a given list of arcs
arcToTriple :: Arc lb -> (lb, lb, lb)Source
arcFromTriple :: (lb, lb, lb) -> Arc lbSource