Hets - the Heterogeneous Tool Set
Copyright(c) Jonathan von Schroeder DFKI Bremen 2012
LicenseGPLv2 or higher, see LICENSE.txt
MaintainerJonathan von Schroeder <jonathan.von_schroeder@dfki.de>
Stabilityprovisional
Portabilityportable
Safe HaskellSafe

Common.GraphAlgo

Description

 

Documentation

data Graph node edge Source #

Constructors

Graph 

Fields

data Node Source #

Constructors

Node String 

Instances

Instances details
Eq Node Source # 
Instance details

Defined in Common.GraphAlgo

Methods

(==) :: Node -> Node -> Bool

(/=) :: Node -> Node -> Bool

Ord Node Source # 
Instance details

Defined in Common.GraphAlgo

Methods

compare :: Node -> Node -> Ordering

(<) :: Node -> Node -> Bool

(<=) :: Node -> Node -> Bool

(>) :: Node -> Node -> Bool

(>=) :: Node -> Node -> Bool

max :: Node -> Node -> Node

min :: Node -> Node -> Node

Show Node Source # 
Instance details

Defined in Common.GraphAlgo

Methods

showsPrec :: Int -> Node -> ShowS

show :: Node -> String

showList :: [Node] -> ShowS

data Edge Source #

Constructors

Edge (String, String) 

Instances

Instances details
Eq Edge Source # 
Instance details

Defined in Common.GraphAlgo

Methods

(==) :: Edge -> Edge -> Bool

(/=) :: Edge -> Edge -> Bool

Ord Edge Source # 
Instance details

Defined in Common.GraphAlgo

Methods

compare :: Edge -> Edge -> Ordering

(<) :: Edge -> Edge -> Bool

(<=) :: Edge -> Edge -> Bool

(>) :: Edge -> Edge -> Bool

(>=) :: Edge -> Edge -> Bool

max :: Edge -> Edge -> Edge

min :: Edge -> Edge -> Edge

Show Edge Source # 
Instance details

Defined in Common.GraphAlgo

Methods

showsPrec :: Int -> Edge -> ShowS

show :: Edge -> String

showList :: [Edge] -> ShowS

exampleGraph :: [(String, String)] -> Graph Node Edge Source #

mapMin :: (a -> a -> Bool) -> Map k a -> Maybe (k, a) Source #

dijkstra :: (Show node, Show edge, Ord node) => node -> (node -> Bool) -> Graph node edge -> Maybe ([(node, edge)], node) Source #

yen :: (Ord node, Eq edge, Show node, Show edge) => Int -> node -> (node -> Bool) -> Graph node edge -> [([(node, edge)], node)] Source #

prettyPath :: (Show node, Show edge) => ([(node, edge)], node) -> String Source #

test :: String Source #

test1 :: [[String]] Source #