haggle-0.3: A graph library offering mutable, immutable, and inductive graphs
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.Graph.Haggle.EdgeLabelAdapter

Description

This adapter adds edge labels (but not vertex labels) to graphs.

It only supports addLabeledEdge, not addEdge. See LabeledGraph for more details.

Documentation

data EdgeLabeledMGraph g el s Source #

Instances

Instances details
MAddVertex g => MAddVertex (EdgeLabeledMGraph g el) Source # 
Instance details

Defined in Data.Graph.Haggle.EdgeLabelAdapter

Methods

addVertex :: (PrimMonad m, MonadRef m) => EdgeLabeledMGraph g el m -> m Vertex Source #

MBidirectional g => MBidirectional (EdgeLabeledMGraph g el) Source # 
Instance details

Defined in Data.Graph.Haggle.EdgeLabelAdapter

MGraph g => MGraph (EdgeLabeledMGraph g el) Source # 
Instance details

Defined in Data.Graph.Haggle.EdgeLabelAdapter

Associated Types

type ImmutableGraph (EdgeLabeledMGraph g el) Source #

MAddEdge g => MLabeledEdge (EdgeLabeledMGraph g el) Source # 
Instance details

Defined in Data.Graph.Haggle.EdgeLabelAdapter

Associated Types

type MEdgeLabel (EdgeLabeledMGraph g el) Source #

type ImmutableGraph (EdgeLabeledMGraph g el) Source # 
Instance details

Defined in Data.Graph.Haggle.EdgeLabelAdapter

type MEdgeLabel (EdgeLabeledMGraph g el) Source # 
Instance details

Defined in Data.Graph.Haggle.EdgeLabelAdapter

type MEdgeLabel (EdgeLabeledMGraph g el) = el

data EdgeLabeledGraph g el Source #

Instances

Instances details
(NFData g, NFData el) => NFData (EdgeLabeledGraph g el) Source # 
Instance details

Defined in Data.Graph.Haggle.EdgeLabelAdapter

Methods

rnf :: EdgeLabeledGraph g el -> () #

Bidirectional g => Bidirectional (EdgeLabeledGraph g el) Source # 
Instance details

Defined in Data.Graph.Haggle.EdgeLabelAdapter

Bidirectional g => BidirectionalEdgeLabel (EdgeLabeledGraph g el) Source # 
Instance details

Defined in Data.Graph.Haggle.EdgeLabelAdapter

Graph g => Graph (EdgeLabeledGraph g el) Source # 
Instance details

Defined in Data.Graph.Haggle.EdgeLabelAdapter

Graph g => HasEdgeLabel (EdgeLabeledGraph g el) Source # 
Instance details

Defined in Data.Graph.Haggle.EdgeLabelAdapter

Associated Types

type EdgeLabel (EdgeLabeledGraph g el) Source #

Thawable g => Thawable (EdgeLabeledGraph g el) Source # 
Instance details

Defined in Data.Graph.Haggle.EdgeLabelAdapter

Associated Types

type MutableGraph (EdgeLabeledGraph g el) :: (Type -> Type) -> Type Source #

Methods

thaw :: (PrimMonad m, MonadRef m) => EdgeLabeledGraph g el -> m (MutableGraph (EdgeLabeledGraph g el) m) Source #

type EdgeLabel (EdgeLabeledGraph g el) Source # 
Instance details

Defined in Data.Graph.Haggle.EdgeLabelAdapter

type EdgeLabel (EdgeLabeledGraph g el) = el
type MutableGraph (EdgeLabeledGraph g el) Source # 
Instance details

Defined in Data.Graph.Haggle.EdgeLabelAdapter

newEdgeLabeledGraph :: (MGraph g, PrimMonad m, MonadRef m) => m (g m) -> m (EdgeLabeledMGraph g nl m) Source #

newSizedEdgeLabeledGraph :: (MGraph g, PrimMonad m, MonadRef m) => (Int -> Int -> m (g m)) -> Int -> Int -> m (EdgeLabeledMGraph g el m) Source #

mapEdgeLabel :: EdgeLabeledGraph g el -> (el -> el') -> EdgeLabeledGraph g el' Source #