Packages

trait Graph[N, E <: Edge[N]] extends AnyGraph[N, E] with GraphLike[N, E, Graph]

The main trait for mutable graphs bundling the functionality of traits concerned with specific aspects.

N

the type of the nodes (vertices) in this graph.

E

the kind of the edges in this graph.

Linear Supertypes
GraphLike[N, E, Graph], GraphOps[N, E, Graph], Cloneable[Graph[N, E]], Cloneable, AbstractBuilder[N, E], Shrinkable[N, E], Growable[N, E], AnyGraph[N, E], collection.GraphLike[N, E, [X, Y]Graph[X, Y]], ToString[N, E, [X, Y]Graph[X, Y]], GraphDegree[N, E, [X, Y]Graph[X, Y]], GraphTraversal[N, E], GraphBase[N, E, [X, Y]Graph[X, Y]], Serializable, collection.GraphOps[N, E, [X, Y]Graph[X, Y]], OuterElems[N, E], AnyRef, Any
Known Subclasses
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Graph
  2. GraphLike
  3. GraphOps
  4. Cloneable
  5. Cloneable
  6. AbstractBuilder
  7. Shrinkable
  8. Growable
  9. AnyGraph
  10. GraphLike
  11. ToString
  12. GraphDegree
  13. GraphTraversal
  14. GraphBase
  15. Serializable
  16. GraphOps
  17. OuterElems
  18. AnyRef
  19. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. trait BaseInnerEdge extends InnerEdgeLike[NodeT] with InnerEdge with Equals
    Definition Classes
    GraphBase
  2. trait BaseInnerNode extends Node with InnerNode
    Definition Classes
    GraphBase
  3. abstract class BaseNodeBase extends BaseInnerNode
    Attributes
    protected
    Definition Classes
    GraphBase
  4. sealed trait EdgeOrdering extends Ordering[EdgeT] with ElemOrdering

    Ordering for the path dependent type EdgeT.

    Ordering for the path dependent type EdgeT.

    Definition Classes
    GraphBase
  5. trait EdgeSet extends AnySet[EdgeT] with ExtSetMethods[EdgeT] with Serializable
    Definition Classes
    GraphBase
  6. sealed trait ElemOrdering extends AnyRef

    Base trait for graph Orderings.

    Base trait for graph Orderings.

    Attributes
    protected
    Definition Classes
    GraphBase
  7. trait Node extends Serializable
    Definition Classes
    GraphBase
  8. sealed trait NodeOrdering extends Ordering[NodeT] with ElemOrdering

    Ordering for the path dependent type NodeT.

    Ordering for the path dependent type NodeT.

    Definition Classes
    GraphBase
  9. trait NodeSet extends AnySet[NodeT] with ExtSetMethods[NodeT]
    Definition Classes
    GraphBase
  10. trait DegreeFunction extends ((GraphDegree.this)#NodeT) => Int
    Definition Classes
    GraphDegree
  11. final class DegreeOrdering extends Ordering[(GraphDegree.this)#NodeT]

    Decreasing ordering of nodes with respect to their degree.

    Decreasing ordering of nodes with respect to their degree.

    Definition Classes
    GraphDegree
  12. trait Filter[T] extends (T) => Boolean
    Definition Classes
    GraphDegree
  13. trait GraphEdgeSet extends CC.EdgeSet with CC.EdgeSetToString
    Definition Classes
    GraphLike
  14. trait GraphInnerEdge extends CC.BaseInnerEdge
    Definition Classes
    GraphLike
  15. trait GraphInnerNode extends CC.BaseInnerNode with CC.TraverserInnerNode
    Definition Classes
    GraphLike
  16. trait GraphNodeSet extends CC.NodeSet with CC.NodeSetToString
    Definition Classes
    GraphLike
  17. class InnerDiEdge extends DiEdge[CC.NodeT] with CC.EdgeT
    Definition Classes
    GraphLike
    Annotations
    @SerialVersionUID()
  18. class InnerDiHyperEdge extends DiHyperEdge[CC.NodeT] with CC.EdgeT
    Definition Classes
    GraphLike
    Annotations
    @SerialVersionUID()
  19. class InnerHyperEdge extends HyperEdge[CC.NodeT] with CC.EdgeT
    Definition Classes
    GraphLike
    Annotations
    @SerialVersionUID()
  20. class InnerOrderedDiHyperEdge extends OrderedDiHyperEdge[CC.NodeT] with CC.EdgeT
    Definition Classes
    GraphLike
    Annotations
    @SerialVersionUID()
  21. class InnerOrderedHyperEdge extends OrderedHyperEdge[CC.NodeT] with CC.EdgeT
    Definition Classes
    GraphLike
    Annotations
    @SerialVersionUID()
  22. class InnerUnDiEdge extends UnDiEdge[CC.NodeT] with CC.EdgeT
    Definition Classes
    GraphLike
    Annotations
    @SerialVersionUID()
  23. trait NodeBase extends CC.BaseNodeBase with CC.GraphInnerNode
    Attributes
    protected
    Definition Classes
    GraphLike
  24. trait InnerEdge extends InnerElem
    Definition Classes
    GraphOps
  25. sealed trait InnerElem extends AnyRef
    Definition Classes
    GraphOps
  26. trait InnerNode extends InnerElem
    Definition Classes
    GraphOps
  27. sealed abstract class AbstractTopologicalOrder[+A, +T] extends AbstractIterable[T]

    Topologically ordered nodes or layers of a topological order of a graph or of an isolated graph component.

    Topologically ordered nodes or layers of a topological order of a graph or of an isolated graph component.

    A

    one of NodeT, N

    T

    one of A or (Int, Iterable[A])

    Definition Classes
    GraphTraversal
  28. abstract class Component extends Properties

    Represents a component of this graph.

    Represents a component of this graph. Edges and bridges are computed lazily. Components will be instantiated by componentTraverser or strongComponentTraverser.

    Definition Classes
    GraphTraversal
  29. abstract class ComponentTraverser extends FluentProperties[ComponentTraverser] with Properties with Iterable[Component]

    Controls the properties of graph traversals with no specific root and allows you to produce the (weakly) connected components by a traversal or call methods like findCycle that work component-wise.

    Controls the properties of graph traversals with no specific root and allows you to produce the (weakly) connected components by a traversal or call methods like findCycle that work component-wise.

    Definition Classes
    GraphTraversal
  30. trait Cycle extends Path

    Represents a cycle in this graph listing the nodes and connecting edges on it with the following syntax:

    Represents a cycle in this graph listing the nodes and connecting edges on it with the following syntax:

    cycle ::= start-end-node { edge node } edge start-end-node

    All nodes and edges on the path are distinct except the start and end nodes that are equal. A cycle contains at least a start node followed by any number of consecutive pairs of an edge and a node and the end node equaling to the start node. The first element is the start node, the second is an edge with its tail being the start node and its head being the third element etc.

    Definition Classes
    GraphTraversal
  31. trait ExtendedNodeVisitor[U] extends (NodeT) => U

    Template for extended node visitors.

    Template for extended node visitors. While the default node visitor of the type NodeT => U passes solely the inner node being visited, extended node visitors pass the following traversal state information:

    1. the inner node currently visited as with a standard node visitor
    2. the number of nodes visited so far and
    3. the current depth in terms of the underlying algorithm and
    4. a reference to a specific informer that may be pattern matched to collect even further data specific to the implementation.
    Definition Classes
    GraphTraversal
  32. abstract class FluentProperties[+C <: FluentProperties[C]] extends AnyRef

    Properties and methods for creating modified properties in a fluent-interface manner.

    Properties and methods for creating modified properties in a fluent-interface manner.

    Attributes
    protected
    Definition Classes
    GraphTraversal
  33. abstract class InnerEdgeTraverser extends TraverserMethods[EdgeT, InnerEdgeTraverser] with Traverser[EdgeT, InnerEdgeTraverser]

    Controls the properties of inner-edge graph traversals.

    Controls the properties of inner-edge graph traversals. To start a traversal call one of the graph traversal methods or any appropriate method inherited from scala.collection.Iterable on this instance.

    Definition Classes
    GraphTraversal
  34. abstract class InnerElemTraverser extends TraverserMethods[InnerElem, InnerElemTraverser] with Traverser[InnerElem, InnerElemTraverser]

    Controls the properties of inner-element graph traversals.

    Controls the properties of inner-element graph traversals. To start a traversal call one of the graph traversal methods or any appropriate method inherited from scala.collection.Iterable on this instance.

    Attributes
    protected
    Definition Classes
    GraphTraversal
  35. abstract class InnerNodeDownUpTraverser extends TraverserMethods[(Boolean, NodeT), InnerNodeDownUpTraverser] with Traverser[(Boolean, NodeT), InnerNodeDownUpTraverser]

    Controls the properties of inner-node down-up graph traversals.

    Controls the properties of inner-node down-up graph traversals. To start a traversal call one of the graph traversal methods or any appropriate method inherited from scala.collection.Iterable on this instance.

    Definition Classes
    GraphTraversal
  36. abstract class InnerNodeTraverser extends TraverserMethods[NodeT, InnerNodeTraverser] with Traverser[NodeT, InnerNodeTraverser]

    Controls the properties of inner-node graph traversals.

    Controls the properties of inner-node graph traversals. To start a traversal call one of the graph traversal methods or any appropriate method inherited from scala.collection.Iterable on this instance.

    Definition Classes
    GraphTraversal
  37. case class Layer(index: Int, _nodes: IndexedSeq[NodeT]) extends Product with Serializable

    Represents a topological sort layer.

    Represents a topological sort layer.

    Definition Classes
    GraphTraversal
  38. final class LayeredTopologicalOrder[+A] extends AbstractTopologicalOrder[A, (Int, Iterable[A])]

    Layers of a topological order of a graph or of an isolated graph component.

    Layers of a topological order of a graph or of an isolated graph component. The layers of a topological sort can roughly be defined as follows:

    1. layer 0 contains all nodes having no predecessors,
    2. layer n contains those nodes that have only predecessors in ancestor layers with at least one of them contained in layer n - 1
    A

    one of NodeT, N

    Definition Classes
    GraphTraversal
  39. abstract class OuterEdgeTraverser extends TraverserMethods[E, OuterEdgeTraverser] with Traverser[E, OuterEdgeTraverser]

    Controls the properties of outer-edge graph traversals.

    Controls the properties of outer-edge graph traversals. To start a traversal call one of the graph traversal methods or any appropriate method inherited from scala.collection.Iterable on this instance.

    Definition Classes
    GraphTraversal
  40. trait OuterElemTraverser extends TraverserMethods[OuterElem, OuterElemTraverser] with Traverser[OuterElem, OuterElemTraverser]

    Controls the properties of outer-element graph traversals.

    Controls the properties of outer-element graph traversals. To start a traversal call one of the graph traversal methods or any appropriate method inherited from scala.collection.Iterable on this instance.

    Definition Classes
    GraphTraversal
  41. abstract class OuterNodeDownUpTraverser extends TraverserMethods[(Boolean, N), OuterNodeDownUpTraverser] with Traverser[(Boolean, N), OuterNodeDownUpTraverser]

    Controls the properties of outer-node down-up graph traversals.

    Controls the properties of outer-node down-up graph traversals. To start a traversal call one of the graph traversal methods or any appropriate method inherited from scala.collection.Iterable on this instance.

    Definition Classes
    GraphTraversal
  42. abstract class OuterNodeTraverser extends TraverserMethods[N, OuterNodeTraverser] with Traverser[N, OuterNodeTraverser]

    Controls the properties of outer-node graph traversals.

    Controls the properties of outer-node graph traversals. To start a traversal call one of the graph traversal methods or any appropriate method inherited from scala.collection.Iterable on this instance.

    Definition Classes
    GraphTraversal
  43. trait Path extends Walk

    Represents a path in this graph where

    Represents a path in this graph where

    path ::= node { edge node }

    Nodes and edges on the path are distinct. A walk/path contains at least one node followed by any number of consecutive pairs of an edge and a node. The first element is the start node, the second is an edge with its source being the start node and its target being the third element etc.

    Definition Classes
    GraphTraversal
  44. trait PathBuilder extends WalkBuilder with Builder[InnerElem, Path]

    A Builder for valid paths in this graph.

    A Builder for valid paths in this graph.

    Nodes and edges may be added either alternating or node by node respectively edge by edge. Either way, the builder ensures that the added elements build a valid path.

    A node addition fails if either the node to be added is already contained or the node is not a direct successor of the previously added node or of the target node of the previously added edge. An edge addition fails if either the edge to be added is is already contained or the edge is not an outgoing edge from the previously added node or of the target node of the previously added edge.

    It is recommended using add instead of += to track failed additions.

    Definition Classes
    GraphTraversal
  45. trait Properties extends SubgraphProperties

    Properties controlling traversals.

    Properties controlling traversals.

    Attributes
    protected
    Definition Classes
    GraphTraversal
  46. abstract class StrongComponentTraverser extends FluentProperties[StrongComponentTraverser] with Properties with Iterable[Component]

    Controls the properties of graph traversals with no specific root and allows you to produce the strongly connected components by a traversal.

    Controls the properties of graph traversals with no specific root and allows you to produce the strongly connected components by a traversal.

    Definition Classes
    GraphTraversal
  47. trait SubgraphProperties extends AnyRef

    Properties controlling the scope of traversals.

    Properties controlling the scope of traversals.

    Attributes
    protected
    Definition Classes
    GraphTraversal
  48. final class TopologicalOrder[+A] extends AbstractTopologicalOrder[A, A]

    A traversable topological order of nodes of a graph or of an isolated graph component.

    A traversable topological order of nodes of a graph or of an isolated graph component.

    A

    one of NodeT, N

    Definition Classes
    GraphTraversal
  49. case class TopologicalSortFailure extends Product with Serializable

    Failure result of a topological sort with a possible hint of candidate cycle nodes.

    Failure result of a topological sort with a possible hint of candidate cycle nodes.

    Definition Classes
    GraphTraversal
  50. trait Traverser[A, +CC <: Traverser[A, CC]] extends TraverserMethods[A, CC] with Properties with ForeachBasedDetachingIterable[A]

    Controls the properties of consecutive graph traversals starting at a root node.

    Controls the properties of consecutive graph traversals starting at a root node. Provides methods to refine the properties and to invoke traversals. Instances will be created by innerNodeTraverser etc.

    Definition Classes
    GraphTraversal
  51. trait TraverserInnerNode extends BaseInnerNode
    Definition Classes
    GraphTraversal
  52. abstract class TraverserMethods[A, +CC <: TraverserMethods[A, CC]] extends FluentProperties[CC]

    The root-related methods Traverser will inherit.

    The root-related methods Traverser will inherit.

    Attributes
    protected
    Definition Classes
    GraphTraversal
  53. trait Walk extends Iterable[InnerElem]

    Represents a walk in this graph where walk ::= node { edge node } A walk/path contains at least one node followed by any number of consecutive pairs of an edge and a node.

    Represents a walk in this graph where walk ::= node { edge node } A walk/path contains at least one node followed by any number of consecutive pairs of an edge and a node. The first element is the start node, the second is an edge with its source being the start node and its target being the third element etc.

    Definition Classes
    GraphTraversal
  54. trait WalkBuilder extends Builder[InnerElem, Walk]

    A Builder for valid walks in this graph.

    A Builder for valid walks in this graph.

    Nodes and edges may be added either alternating or node by node respectively edge by edge. Either way, the builder ensures that the added elements build a valid walk.

    A node addition fails if the node to be added is not a direct successor of the previously added node or of the target node of the previously added edge. An edge addition fails if the edge to be added is not an outgoing edge from the previously added node or of the target node of the previously added edge.

    It is recommended using add instead of += to track failed additions.

    Definition Classes
    GraphTraversal
  55. class Weight extends AnyRef

    Stores a value and an edge weight function for use in weight-based traversals that may be defined by withMaxWeight.

    Stores a value and an edge weight function for use in weight-based traversals that may be defined by withMaxWeight.

    Definition Classes
    GraphTraversal
  56. sealed case class OuterEdge(edge: E) extends OuterElem with Product with Serializable

    To be mixed in by edge classes to allow passing them to Graph(...).

    To be mixed in by edge classes to allow passing them to Graph(...).

    Definition Classes
    OuterElems
  57. trait OuterElem extends AnyRef
    Definition Classes
    OuterElems
  58. sealed case class OuterNode(node: N) extends OuterElem with Product with Serializable

    Wraps any type to be accepted when calling Graph(...).

    Wraps any type to be accepted when calling Graph(...).

    Definition Classes
    OuterElems
  59. trait EdgeSetToString extends GraphLike.SetToString[EdgeT]
    Attributes
    protected
    Definition Classes
    ToString
  60. trait NodeSetToString extends GraphLike.SetToString[NodeT]
    Attributes
    protected
    Definition Classes
    ToString
  61. trait SetToString[A] extends AnySet[A]
    Attributes
    protected
    Definition Classes
    ToString
  62. type DegreeNodeSeqEntry = (Int, NodeT)

    Type alias for entries in degree maps returned by degreeSeqMap.

    Type alias for entries in degree maps returned by degreeSeqMap.

    Definition Classes
    GraphDegree
  63. type EdgePredicate = (EdgeT) => Boolean
    Definition Classes
    GraphOps
  64. abstract type EdgeSetT <: GraphLikeEdgeSet
    Definition Classes
    GraphLikeGraphLikeGraphBase
  65. type EdgeT = GraphInnerEdge
    Definition Classes
    GraphLikeGraphBaseGraphOps
  66. type Layers = Iterable[Layer]

    The result of a topological sort in the layered view.

    The result of a topological sort in the layered view.

    Definition Classes
    GraphTraversal
  67. type NodePredicate = (NodeT) => Boolean
    Definition Classes
    GraphOps
  68. abstract type NodeSetT <: GraphLikeNodeSet
    Definition Classes
    GraphLikeGraphLikeGraphBase
  69. abstract type NodeT <: GraphLikeInnerNode
    Definition Classes
    GraphLikeGraphLikeGraphTraversalGraphBaseGraphOps
  70. type ThisGraph = Graph.this.type
    Attributes
    protected
    Definition Classes
    GraphLike
  71. type TopologicalSort = Either[TopologicalSortFailure, TopologicalOrder[NodeT]]
    Definition Classes
    GraphTraversal
  72. trait GraphLikeEdgeSet extends MSet[CC.EdgeT] with CC.GraphEdgeSet
    Definition Classes
    GraphLike
  73. trait GraphLikeInnerNode extends CC.GraphInnerNode
    Definition Classes
    GraphLike
  74. trait GraphLikeNodeSet extends MSet[CC.NodeT] with CC.GraphNodeSet
    Definition Classes
    GraphLike

Abstract Value Members

  1. abstract def add(edge: E): Boolean

    Adds a single edge to this graph.

    Adds a single edge to this graph.

    returns

    true if this graph has not contained edge before.

    Definition Classes
    GraphOpsGrowable
  2. abstract def add(node: N): Boolean

    Adds a single node to this graph.

    Adds a single node to this graph.

    returns

    true if this graph has not contained node before.

    Definition Classes
    GraphOpsGrowable
  3. abstract def clear(): Unit
    Definition Classes
    AbstractBuilder
  4. abstract val companion: Factory[[X, Y]Graph[X, Y]]

    The companion object of CC.

    The companion object of CC.

    Definition Classes
    GraphLike
  5. abstract def componentTraverser(parameters: Parameters = Parameters(), subgraphNodes: NodePredicate = anyNode, subgraphEdges: EdgePredicate = anyEdge, ordering: ElemOrdering = NoOrdering, maxWeight: Option[Weight] = None): ComponentTraverser

    Creates a ComponentTraverser responsible for invoking graph traversal methods in all (weakly) connected components of this possibly disconnected graph.

    Creates a ComponentTraverser responsible for invoking graph traversal methods in all (weakly) connected components of this possibly disconnected graph.

    parameters

    The properties controlling subsequent traversals.

    subgraphNodes

    Restricts subsequent graph traversals to visit only nodes holding this predicate.

    subgraphEdges

    Restricts subsequent graph traversals to walk only along edges that hold this predicate.

    ordering

    If a NodeOrdering or EdgeOrdering different from NoOrdering is supplied neighbor nodes will visited during the traversal according to this ordering.

    maxWeight

    An optional maximum weight that limits the scope of the traversal or search. If defined and the sum of edge weights between the root of the traversal and a node exceeds the given maximum, that node will no more be visited.

    Definition Classes
    GraphTraversal
  6. abstract def concat[N2 >: N, E2 >: E <: Edge[N2]](isolatedNodes: IterableOnce[N2], edges: IterableOnce[E2])(implicit e: <:<[E2, Edge[N2]]): Graph[N2, E2]

    Creates a new graph by adding all edges and isolatedNodes omitting duplicates.

    Creates a new graph by adding all edges and isolatedNodes omitting duplicates. The new graph is upcasted if any of the arguments is an upcast of N respectively E. Use union to concatenate all nodes and edges of another graph.

    isolatedNodes

    to be concatenated. Nodes that are implicitly defined by any edge in edges will be ignored.

    edges

    to be concatenated.

    Definition Classes
    GraphOps
  7. implicit abstract def config: GraphConfig
    Definition Classes
    GraphLike
  8. abstract def edges: EdgeSetT

    The edge set of this Graph commonly referred to as E(G).

    The edge set of this Graph commonly referred to as E(G).

    returns

    Set of all contained edges.

    Definition Classes
    GraphLikeGraphBase
  9. abstract def innerEdgeTraverser(root: NodeT, parameters: Parameters = Parameters(), subgraphNodes: NodePredicate = anyNode, subgraphEdges: EdgePredicate = anyEdge, ordering: ElemOrdering = NoOrdering, maxWeight: Option[Weight] = None): InnerEdgeTraverser

    Creates a InnerEdgeTraverser based on scala.collection.Iterable[EdgeT].

    Creates a InnerEdgeTraverser based on scala.collection.Iterable[EdgeT].

    root

    The node where subsequent graph traversals start.

    parameters

    The properties controlling subsequent traversals.

    subgraphNodes

    Restricts subsequent graph traversals to visit only nodes holding this predicate.

    subgraphEdges

    Restricts subsequent graph traversals to walk only along edges that hold this predicate.

    ordering

    If a NodeOrdering or EdgeOrdering different from NoOrdering is supplied neighbor nodes will visited during the traversal according to this ordering.

    Definition Classes
    GraphTraversal
  10. abstract def innerElemTraverser(root: NodeT, parameters: Parameters = Parameters(), subgraphNodes: NodePredicate = anyNode, subgraphEdges: EdgePredicate = anyEdge, ordering: ElemOrdering = NoOrdering, maxWeight: Option[Weight] = None): InnerElemTraverser

    Creates a InnerElemTraverser based on scala.collection.Iterable[InnerElem].

    Creates a InnerElemTraverser based on scala.collection.Iterable[InnerElem].

    root

    The node where subsequent graph traversals start.

    parameters

    The properties controlling subsequent traversals.

    subgraphNodes

    Restricts subsequent graph traversals to visit only nodes holding this predicate.

    subgraphEdges

    Restricts subsequent graph traversals to walk only along edges that hold this predicate.

    ordering

    If a NodeOrdering or EdgeOrdering different from NoOrdering is supplied neighbor nodes will visited during the traversal according to this ordering.

    maxWeight

    An optional maximum weight that limits the scope of the traversal or search. If defined and the sum of edge weights between the root of the traversal and a node exceeds the given maximum, that node will no more be visited.

    Definition Classes
    GraphTraversal
  11. abstract def innerNodeDownUpTraverser(root: NodeT, parameters: Parameters = Parameters(), subgraphNodes: NodePredicate = anyNode, subgraphEdges: EdgePredicate = anyEdge, ordering: ElemOrdering = NoOrdering, maxWeight: Option[Weight] = None): InnerNodeDownUpTraverser

    Creates a InnerNodeDownUpTraverser based on scala.collection.Iterable[(Boolean, NodeT)] where the Boolean parameter is true if the traversal takes place in downward and false if it takes place in upward direction.

    Creates a InnerNodeDownUpTraverser based on scala.collection.Iterable[(Boolean, NodeT)] where the Boolean parameter is true if the traversal takes place in downward and false if it takes place in upward direction.

    root

    The node where subsequent graph traversals start.

    parameters

    The properties controlling subsequent traversals. A kind different from DepthFirst will be ignored.

    subgraphNodes

    Restricts subsequent graph traversals to visit only nodes holding this predicate.

    subgraphEdges

    Restricts subsequent graph traversals to walk only along edges that hold this predicate.

    ordering

    If a NodeOrdering or EdgeOrdering different from NoOrdering is supplied neighbor nodes will visited during the traversal according to this ordering.

    maxWeight

    An optional maximum weight that limits the scope of the traversal or search. If defined and the sum of edge weights between the root of the traversal and a node exceeds the given maximum, that node will no more be visited.

    Definition Classes
    GraphTraversal
  12. abstract def innerNodeTraverser(root: NodeT, parameters: Parameters = Parameters(), subgraphNodes: NodePredicate = anyNode, subgraphEdges: EdgePredicate = anyEdge, ordering: ElemOrdering = NoOrdering, maxWeight: Option[Weight] = None): InnerNodeTraverser

    Creates a InnerNodeTraverser based on scala.collection.Iterable[NodeT].

    Creates a InnerNodeTraverser based on scala.collection.Iterable[NodeT].

    root

    The node where subsequent graph traversals start.

    parameters

    The properties controlling subsequent traversals.

    subgraphNodes

    Restricts subsequent graph traversals to visit only nodes holding this predicate.

    subgraphEdges

    Restricts subsequent graph traversals to walk only along edges that hold this predicate.

    ordering

    If a NodeOrdering or EdgeOrdering different from NoOrdering is supplied neighbor nodes will visited during the traversal according to this ordering.

    maxWeight

    An optional maximum weight that limits the scope of the traversal or search. If defined and the sum of edge weights between the root of the traversal and a node exceeds the given maximum, that node will no more be visited.

    Definition Classes
    GraphTraversal
  13. abstract def newBuilder: Builder[N, E, [X, Y]Graph[X, Y]]
    Attributes
    protected[this]
    Definition Classes
    GraphLike
  14. abstract def newNode(n: N): NodeT
    Attributes
    protected
    Definition Classes
    GraphBase
  15. abstract def newPathBuilder(start: NodeT)(implicit sizeHint: Int = defaultPathSize, edgeSelector: (NodeT, NodeT) => Option[EdgeT] = anyEdgeSelector): PathBuilder

    Instantiates a PathBuilder for this graph.

    Instantiates a PathBuilder for this graph.

    start

    The node this path starts at.

    sizeHint

    Expected maximum number of nodes on this path.

    edgeSelector

    Determines the edge to be selected between neighbor nodes if an edge is not supplied explicitly. This is only relevant in case of multigraphs.

    Definition Classes
    GraphTraversal
  16. abstract def newWalkBuilder(start: NodeT)(implicit sizeHint: Int = defaultPathSize, edgeSelector: (NodeT, NodeT) => Option[EdgeT] = anyEdgeSelector): WalkBuilder

    Instantiates a WalkBuilder for this graph.

    Instantiates a WalkBuilder for this graph.

    start

    The node this walk starts at.

    sizeHint

    Expected maximum number of nodes on this walk.

    edgeSelector

    Determines the edge to be selected between neighbor nodes if an edge is not supplied explicitly. This is only relevant in case of multigraphs.

    Definition Classes
    GraphTraversal
  17. abstract def nodes: NodeSetT

    The node (vertex) set of this Graph commonly referred to as V(G).

    The node (vertex) set of this Graph commonly referred to as V(G).

    returns

    Set of all contained nodes.

    Definition Classes
    GraphBase
  18. abstract def outerEdgeTraverser(root: NodeT, parameters: Parameters = Parameters(), subgraphNodes: NodePredicate = anyNode, subgraphEdges: EdgePredicate = anyEdge, ordering: ElemOrdering = NoOrdering, maxWeight: Option[Weight] = None): OuterEdgeTraverser

    Creates a OuterEdgeTraverser based on scala.collection.Iterable[E[N]].

    Creates a OuterEdgeTraverser based on scala.collection.Iterable[E[N]].

    root

    The node where subsequent graph traversals start.

    parameters

    The properties controlling subsequent traversals.

    subgraphNodes

    Restricts subsequent graph traversals to visit only nodes holding this predicate.

    subgraphEdges

    Restricts subsequent graph traversals to walk only along edges that hold this predicate.

    ordering

    If a NodeOrdering or EdgeOrdering different from NoOrdering is supplied neighbor nodes will visited during the traversal according to this ordering.

    maxWeight

    An optional maximum weight that limits the scope of the traversal or search. If defined and the sum of edge weights between the root of the traversal and a node exceeds the given maximum, that node will no more be visited.

    Definition Classes
    GraphTraversal
  19. abstract def outerElemTraverser(root: NodeT, parameters: Parameters = Parameters(), subgraphNodes: NodePredicate = anyNode, subgraphEdges: EdgePredicate = anyEdge, ordering: ElemOrdering = NoOrdering, maxWeight: Option[Weight] = None): OuterElemTraverser

    Creates a OuterElemTraverser based on scala.collection.Iterable[OuterElem].

    Creates a OuterElemTraverser based on scala.collection.Iterable[OuterElem].

    root

    The node where subsequent graph traversals start.

    parameters

    The properties controlling subsequent traversals.

    subgraphNodes

    Restricts subsequent graph traversals to visit only nodes holding this predicate.

    subgraphEdges

    Restricts subsequent graph traversals to walk only along edges that hold this predicate.

    ordering

    If a NodeOrdering or EdgeOrdering different from NoOrdering is supplied neighbor nodes will visited during the traversal according to this ordering.

    maxWeight

    An optional maximum weight that limits the scope of the traversal or search. If defined and the sum of edge weights between the root of the traversal and a node exceeds the given maximum, that node will no more be visited.

    Definition Classes
    GraphTraversal
  20. abstract def outerNodeDownUpTraverser(root: NodeT, parameters: Parameters = Parameters(), subgraphNodes: NodePredicate = anyNode, subgraphEdges: EdgePredicate = anyEdge, ordering: ElemOrdering = NoOrdering, maxWeight: Option[Weight] = None): OuterNodeDownUpTraverser

    Creates a OuterNodeDownUpTraverser based on scala.collection.Iterable[(Boolean, N)] where the Boolean parameter is true if the traversal takes place in downward and false if it takes place in upward direction.

    Creates a OuterNodeDownUpTraverser based on scala.collection.Iterable[(Boolean, N)] where the Boolean parameter is true if the traversal takes place in downward and false if it takes place in upward direction.

    root

    The node where subsequent graph traversals start.

    parameters

    The properties controlling subsequent traversals. A kind different from DepthFirst will be ignored.

    subgraphNodes

    Restricts subsequent graph traversals to visit only nodes holding this predicate.

    subgraphEdges

    Restricts subsequent graph traversals to walk only along edges that hold this predicate.

    ordering

    If a NodeOrdering or EdgeOrdering different from NoOrdering is supplied neighbor nodes will visited during the traversal according to this ordering.

    Definition Classes
    GraphTraversal
  21. abstract def outerNodeTraverser(root: NodeT, parameters: Parameters = Parameters(), subgraphNodes: NodePredicate = anyNode, subgraphEdges: EdgePredicate = anyEdge, ordering: ElemOrdering = NoOrdering, maxWeight: Option[Weight] = None): OuterNodeTraverser

    Creates a OuterNodeTraverser based on scala.collection.Iterable[N].

    Creates a OuterNodeTraverser based on scala.collection.Iterable[N].

    root

    The node where subsequent graph traversals start.

    parameters

    The properties controlling subsequent traversals.

    subgraphNodes

    Restricts subsequent graph traversals to visit only nodes holding this predicate.

    subgraphEdges

    Restricts subsequent graph traversals to walk only along edges that hold this predicate.

    ordering

    If a NodeOrdering or EdgeOrdering different from NoOrdering is supplied neighbor nodes will visited during the traversal according to this ordering.

    maxWeight

    An optional maximum weight that limits the scope of the traversal or search. If defined and the sum of edge weights between the root of the traversal and a node exceeds the given maximum, that node will no more be visited.

    Definition Classes
    GraphTraversal
  22. abstract def removedAll(isolatedNodes: IterableOnce[N], edges: IterableOnce[E]): Graph[N, E]
    Attributes
    protected
    Definition Classes
    GraphOps
  23. abstract def strongComponentTraverser(parameters: Parameters = Parameters(), subgraphNodes: NodePredicate = anyNode, subgraphEdges: EdgePredicate = anyEdge, ordering: ElemOrdering = NoOrdering, maxWeight: Option[Weight] = None): StrongComponentTraverser

    Creates a StrongComponentTraverser.

    parameters

    The properties controlling subsequent traversals.

    subgraphNodes

    Restricts subsequent graph traversals to visit only nodes holding this predicate.

    subgraphEdges

    Restricts subsequent graph traversals to walk only along edges that hold this predicate.

    ordering

    If a NodeOrdering or EdgeOrdering different from NoOrdering is supplied neighbor nodes will visited during the traversal according to this ordering.

    maxWeight

    An optional maximum weight that limits the scope of the traversal or search. If defined and the sum of edge weights between the root of the traversal and a node exceeds the given maximum, that node will no more be visited.

    Definition Classes
    GraphTraversal
  24. abstract def upsert(edge: E): Boolean

    If an inner edge equaling to edge is present in this graph, it is replaced by edge, otherwise edge will be inserted.

    If an inner edge equaling to edge is present in this graph, it is replaced by edge, otherwise edge will be inserted. This is useful if non-key parts of an immutable edge are to be modified.

    returns

    true if edge has been inserted, false if it has been replaced.

    Definition Classes
    AbstractBuilder

Concrete Value Members

  1. object BaseInnerEdge
    Definition Classes
    GraphBase
    Annotations
    @transient()
  2. object EdgeOrdering extends Serializable

    Ordering for the path dependent type EdgeT.

    Ordering for the path dependent type EdgeT.

    Definition Classes
    GraphBase
  3. object NoOrdering extends ElemOrdering with Serializable

    The empty ElemOrdering.

    The empty ElemOrdering.

    Definition Classes
    GraphBase
  4. object Node extends Serializable
    Definition Classes
    GraphBase
    Annotations
    @transient()
  5. object NodeOrdering extends Serializable
    Definition Classes
    GraphBase
  6. object Degree extends (GraphDegree.this)#DegreeFunction
    Definition Classes
    GraphDegree
  7. object DegreeOrdering extends Serializable
    Definition Classes
    GraphDegree
  8. object InDegree extends (GraphDegree.this)#DegreeFunction
    Definition Classes
    GraphDegree
  9. object IntReverseOrdering extends Ordering[Int]

    Decreasing ordering of integers.

    Decreasing ordering of integers.

    Definition Classes
    GraphDegree
  10. object OutDegree extends (GraphDegree.this)#DegreeFunction
    Definition Classes
    GraphDegree
  11. object InnerDiEdge
    Definition Classes
    GraphLike
    Annotations
    @transient()
  12. object InnerDiHyperEdge
    Definition Classes
    GraphLike
    Annotations
    @transient()
  13. object InnerHyperEdge
    Definition Classes
    GraphLike
    Annotations
    @transient()
  14. object InnerOrderedDiHyperEdge
    Definition Classes
    GraphLike
    Annotations
    @transient()
  15. object InnerOrderedHyperEdge
    Definition Classes
    GraphLike
    Annotations
    @transient()
  16. object InnerUnDiEdge
    Definition Classes
    GraphLike
    Annotations
    @transient()
  17. object InnerEdge
    Definition Classes
    GraphOps
  18. object InnerNode
    Definition Classes
    GraphOps
  19. object Cycle
    Definition Classes
    GraphTraversal
  20. object ExtendedNodeVisitor
    Definition Classes
    GraphTraversal
  21. object Informer
    Definition Classes
    GraphTraversal
  22. object Path extends Serializable
    Definition Classes
    GraphTraversal
  23. object SubgraphProperties
    Attributes
    protected
    Definition Classes
    GraphTraversal
  24. object TraverserInnerNode extends Serializable
    Definition Classes
    GraphTraversal
    Annotations
    @transient()
  25. object Walk
    Definition Classes
    GraphTraversal
  26. object Weight
    Definition Classes
    GraphTraversal
  27. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  28. final def ##: Int
    Definition Classes
    AnyRef → Any
  29. final def &(that: AnyGraph[N, E]): Graph[N, E]

    Alias for intersect.

    Alias for intersect.

    Definition Classes
    GraphOps
    Annotations
    @inline()
  30. final def &=(that: AnyGraph[N, E]): Graph.this.type

    Alias for intersectInPlace.

    Alias for intersectInPlace.

    Definition Classes
    GraphOps
    Annotations
    @inline()
  31. final def &~(that: AnyGraph[N, E]): Graph[N, E]

    Alias for diff.

    Alias for diff.

    Definition Classes
    GraphOps
    Annotations
    @inline()
  32. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from Graph[N, E] toany2stringadd[Graph[N, E]] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  33. final def ++[N2 >: N, E2 >: E <: Edge[N2]](edges: IterableOnce[E2])(implicit e: <:<[E2, Edge[N2]]): Graph[N2, E2]

    Alias for concat(edges).

    Alias for concat(edges).

    Definition Classes
    GraphOps
    Annotations
    @inline()
  34. final def ++[N2 >: N, E2 >: E <: Edge[N2]](isolatedNodes: IterableOnce[N2], edges: IterableOnce[E2])(implicit e: <:<[E2, Edge[N2]]): Graph[N2, E2]

    Alias for concat(isolatedNodes, edges).

    Alias for concat(isolatedNodes, edges).

    Definition Classes
    GraphOps
    Annotations
    @inline()
  35. def ++=(nodes: Iterable[N] = Nil, edges: Iterable[E] = Nil): Graph.this.type

    Adds all passed nodes and edges to this graph.

    Adds all passed nodes and edges to this graph. For a mutable Graph see also unionInPlace.

    Definition Classes
    Growable
  36. def ++=(xs: Iterable[collection.OuterElem[N, E]]): Graph.this.type

    Alias for addAll(xs).

    Alias for addAll(xs).

    Definition Classes
    Growable
  37. final def +=(edge: E): Graph.this.type

    Alias for addOne(edge).

    Alias for addOne(edge).

    Definition Classes
    Growable
    Annotations
    @inline()
  38. final def +=(node: N): Graph.this.type

    Alias for addOne(node).

    Alias for addOne(node).

    Definition Classes
    Growable
    Annotations
    @inline()
  39. final def --=(that: AnyGraph[N, E]): Graph.this.type

    Alias for diffInPlace.

    Alias for diffInPlace.

    Definition Classes
    Shrinkable
    Annotations
    @inline()
  40. final def --=(edges: IterableOnce[E]): Graph.this.type

    Alias for removeAll(edges).

    Alias for removeAll(edges).

    Definition Classes
    Shrinkable
    Annotations
    @inline()
  41. final def --=(nodes: IterableOnce[N], edges: IterableOnce[E]): Graph.this.type

    Alias for removeAll(nodes, edges).

    Alias for removeAll(nodes, edges).

    Definition Classes
    Shrinkable
    Annotations
    @inline()
  42. final def -=(edge: E): Graph.this.type

    Alias for subtractOne(node).

    Alias for subtractOne(node).

    Definition Classes
    Shrinkable
    Annotations
    @inline()
  43. final def -=(node: N): Graph.this.type

    Alias for subtractOne(node).

    Alias for subtractOne(node).

    Definition Classes
    Shrinkable
    Annotations
    @inline()
  44. def ->[B](y: B): (Graph[N, E], B)
    Implicit
    This member is added by an implicit conversion from Graph[N, E] toArrowAssoc[Graph[N, E]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  45. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  46. def addAll(xs: Iterable[collection.OuterElem[N, E]]): Graph.this.type

    Adds all elements produced by outer to this graph.

    Adds all elements produced by outer to this graph. For a graph see also unionInPlace.

    Definition Classes
    Growable
  47. final def addAndGet(edge: E): EdgeT

    Adds the given edge if not yet present and returns it as an inner edge.

    Adds the given edge if not yet present and returns it as an inner edge.

    edge

    the edge to add.

    returns

    the inner edge containing the added edge.

    Definition Classes
    GraphLike
    Annotations
    @inline()
  48. final def addAndGet(node: N): NodeT

    Adds the given node if not yet present and returns it as an inner node.

    Adds the given node if not yet present and returns it as an inner node.

    node

    the node to add.

    returns

    inner node containing the added node.

    Definition Classes
    GraphLike
    Annotations
    @inline()
  49. def addOne(edge: E): Graph.this.type

    Adds a single node to this graph.

    Adds a single node to this graph.

    Definition Classes
    Growable
  50. def addOne(node: N): Graph.this.type

    Adds a single node to this graph.

    Adds a single node to this graph.

    Definition Classes
    Growable
  51. final def addOuter(elem: collection.OuterElem[N, E]): Graph.this.type

    Adds a single outer element to this graph.

    Adds a single outer element to this graph.

    Attributes
    protected[collection]
    Definition Classes
    Growable
  52. final val anyEdge: EdgePredicate

    Default edge filter letting path all edges (non-filter).

    Default edge filter letting path all edges (non-filter).

    Definition Classes
    GraphBaseGraphOps
  53. final def anyEdgeSelector(from: NodeT, to: NodeT): Option[EdgeT]

    An arbitrary edge between from and to that is available most efficiently.

    An arbitrary edge between from and to that is available most efficiently.

    Definition Classes
    GraphTraversal
    Annotations
    @inline()
  54. final val anyNode: NodePredicate

    Default node filter letting traverse all nodes (non-filter).

    Default node filter letting traverse all nodes (non-filter).

    Definition Classes
    GraphBaseGraphOps
  55. final lazy val anyOrdering: AnyOrdering[N]
    Attributes
    protected
    Definition Classes
    GraphBase
  56. final def apply(edge: E): Boolean

    Whether the given edge is contained in this graph.

    Whether the given edge is contained in this graph.

    Definition Classes
    GraphOps
    Annotations
    @inline()
  57. final def apply(node: N): Boolean

    Whether the given node is contained in this graph.

    Whether the given node is contained in this graph.

    Definition Classes
    GraphOps
    Annotations
    @inline()
  58. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  59. def className: String
    Attributes
    protected
    Definition Classes
    ToString
  60. def clone(): Graph[N, E]
    Definition Classes
    GraphLike → Cloneable → AnyRef
  61. def concat[N2 >: N, E2 >: E <: Edge[N2]](edges: IterableOnce[E2])(implicit e: <:<[E2, Edge[N2]]): Graph[N2, E2]

    Same as concat(isolatedNodes, edges) but with empty isolatedNodes.

    Same as concat(isolatedNodes, edges) but with empty isolatedNodes. This method is useful if you don't need to pass any isolated node.

    Definition Classes
    GraphOps
  62. final def contains(edge: E): Boolean

    Whether the given outer edge is contained in this graph.

    Whether the given outer edge is contained in this graph.

    Definition Classes
    GraphLikeGraphOps
  63. final def contains(node: N): Boolean

    Whether the given outer node is contained in this graph.

    Whether the given outer node is contained in this graph.

    Definition Classes
    GraphLikeGraphOps
  64. final lazy val defaultEdgeOrdering: EdgeOrdering
    Definition Classes
    GraphBase
  65. final lazy val defaultNodeOrdering: NodeOrdering
    Definition Classes
    GraphBase
  66. final def defaultPathSize: Int
    Attributes
    protected
    Definition Classes
    GraphTraversal
    Annotations
    @inline()
  67. def degreeCount(implicit nodeDegree: DegreeFunction = Degree, degreeFilter: (Int) => Boolean = AnyDegree): SortedMap[Int, Int]

    The degree set of this graph projected onto a map.

    The degree set of this graph projected onto a map. The keys of the map are the degrees in decreasing order while the values are the number of inner nodes having the degree of the corresponding key.

    Definition Classes
    GraphDegree
  68. def degreeNodeSeq(implicit nodeDegree: DegreeFunction = Degree, degreeFilter: (Int) => Boolean = AnyDegree): Seq[DegreeNodeSeqEntry]

    The degree sequence of this graph projected onto a sequence of tuples.

    The degree sequence of this graph projected onto a sequence of tuples. The first elements of the tuples are the degrees in non-increasing order while the second elements are the corresponding inner nodes.

    Definition Classes
    GraphDegree
  69. def degreeNodesMap(implicit nodeDegree: DegreeFunction = Degree, degreeFilter: (Int) => Boolean = AnyDegree): SortedMap[Int, AnySet[NodeT]]

    The degree set of this graph projected onto a map.

    The degree set of this graph projected onto a map. The keys of the map are the degrees in decreasing order while the values are sets of the corresponding inner nodes.

    Definition Classes
    GraphDegree
  70. def degreeSeq(implicit nodeDegree: DegreeFunction = Degree, degreeFilter: (Int) => Boolean = AnyDegree): Seq[Int]

    The degree sequence of this graph, that is the non-increasing sequence of degrees over all nodes.

    The degree sequence of this graph, that is the non-increasing sequence of degrees over all nodes.

    Definition Classes
    GraphDegree
  71. def degreeSet(implicit nodeDegree: DegreeFunction = Degree, degreeFilter: (Int) => Boolean = AnyDegree): SortedSet[Int]

    The degree set of this graph, that is the decreasing set of unique degrees over all nodes.

    The degree set of this graph, that is the decreasing set of unique degrees over all nodes. Same as degreeSeq without duplicates.

    Definition Classes
    GraphDegree
  72. final def diff(that: AnyGraph[N, E]): Graph[N, E]

    Computes a new graph that is the difference of this graph and that graph.

    Computes a new graph that is the difference of this graph and that graph.

    Definition Classes
    GraphOps
  73. final def diffInPlace(that: AnyGraph[N, E]): Graph.this.type

    Removes all nodes and edges contained in that graph from this graph.

    Removes all nodes and edges contained in that graph from this graph.

    Definition Classes
    Shrinkable
  74. final def elementCount: Int

    The number of nodes and edges.

    The number of nodes and edges.

    Definition Classes
    GraphOps
    Annotations
    @inline()
  75. def empty: Graph[N, E]
    Definition Classes
    GraphGraphLike
  76. def ensuring(cond: (Graph[N, E]) => Boolean, msg: => Any): Graph[N, E]
    Implicit
    This member is added by an implicit conversion from Graph[N, E] toEnsuring[Graph[N, E]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  77. def ensuring(cond: (Graph[N, E]) => Boolean): Graph[N, E]
    Implicit
    This member is added by an implicit conversion from Graph[N, E] toEnsuring[Graph[N, E]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  78. def ensuring(cond: Boolean, msg: => Any): Graph[N, E]
    Implicit
    This member is added by an implicit conversion from Graph[N, E] toEnsuring[Graph[N, E]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  79. def ensuring(cond: Boolean): Graph[N, E]
    Implicit
    This member is added by an implicit conversion from Graph[N, E] toEnsuring[Graph[N, E]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  80. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  81. def equals(that: Any): Boolean

    Graph instances are equal if their nodes and edges turned to outer nodes and outer edges are equal.

    Graph instances are equal if their nodes and edges turned to outer nodes and outer edges are equal. Any TraversableOnce instance may also be equal to this graph if its set representation contains equalling outer nodes and outer edges. Thus the following expressions hold:

    Graph(1~2, 3) == List(1~2, 3)
    Graph(1~2, 3) == List(1, 2, 2, 3, 2~1)

    The first test is false because of the failing nodes 1 and 2. The second is true because of duplicate elimination and undirected edge equivalence.

    Definition Classes
    GraphLike → AnyRef → Any
  82. final def filter(nodeP: NodePredicate = anyNode, edgeP: EdgePredicate = anyEdge): Graph[N, E]

    Computes a new graph with nodes satisfying nodeP and edges satisfying edgeP.

    Computes a new graph with nodes satisfying nodeP and edges satisfying edgeP. If both nodeP and edgeP have default values the original graph is retained.

    Definition Classes
    GraphLikeGraphOps
  83. def filterInPlace(fNode: NodePredicate = anyNode, fEdge: EdgePredicate = anyEdge): Graph.this.type

    Computes a new graph with nodes satisfying fNode and edges satisfying fEdge.

    Computes a new graph with nodes satisfying fNode and edges satisfying fEdge. If both fNode and fEdge have default values the original graph is retained.

    Definition Classes
    GraphLikeGraphOps
  84. def filterNot(nodeP: NodePredicate = noNode, edgeP: EdgePredicate = noEdge): Graph[N, E]

    Computes a new graph without nodes satisfying nodeP and without edges satisfying ePred.

    Computes a new graph without nodes satisfying nodeP and without edges satisfying ePred. If both nodeP and ePred have default values the original graph is retained.

    Definition Classes
    GraphOps
  85. final def find(edge: E): Option[EdgeT]

    Searches this graph for an inner edge that wraps an outer edge equalling to the given outer edge.

    Searches this graph for an inner edge that wraps an outer edge equalling to the given outer edge.

    Definition Classes
    GraphLikeGraphOps
    Annotations
    @inline()
  86. final def find(node: N): Option[NodeT]

    Searches this graph for an inner node that wraps an outer node equalling to the given outer node.

    Searches this graph for an inner node that wraps an outer node equalling to the given outer node.

    Definition Classes
    GraphLikeGraphOps
    Annotations
    @inline()
  87. final def findCycle[U](implicit visitor: (InnerElem) => U = empty): Option[Cycle]

    Finds a cycle in this graph in any of its components and calls visitor for each inner element visited during the search.

    Finds a cycle in this graph in any of its components and calls visitor for each inner element visited during the search. See componentTraverser for more control by means of FluentProperties.

    Definition Classes
    GraphTraversal
  88. final def findCycleContaining[U](node: NodeT)(implicit visitor: (InnerElem) => U = empty): Option[Cycle]

    Finds a cycle that contains node and calls visitor for each inner element visited during the search.

    Finds a cycle that contains node and calls visitor for each inner element visited during the search.

    Definition Classes
    GraphTraversal
  89. final def flatMap[NN, EC[X] <: Edge[X]](fNode: (NodeT) => Seq[NN], fEdge: (EdgeT, Seq[NN], Seq[NN]) => Seq[EC[NN]])(implicit w: <:<[E, AnyEdge[N]]): Graph[NN, EC[NN]]

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    You can call this flavor only if this graph's edge type is generic. Otherwise see flatMapBound.

    NN

    The node type of the resulting graph which may be unchanged or different from this graph's node type.

    EC

    The higher kind of the generic edge type parameter of this graph.

    fNode

    To apply to all nodes of this graph. Since the inner node is passed you can also examine the node context. Call outer to get the value of type N of the node.

    fEdge

    To apply to all edges of this graph. This function is passed the current inner edge and its ends after being mapped by fNode. Since the inner edge is passed you can also examine its context. Call outer to get the outer edge of type E.

    returns

    A new graph of possibly changed node and edge types and of any new structure depending on your edge mapper(s).

    Definition Classes
    GraphLikeGraphOps
  90. final def flatMap[NN, EC[X] <: Edge[X]](fNode: (NodeT) => Seq[NN])(implicit w1: <:<[E, GenericMapper], w2: =:=[EC[N], E], t: ClassTag[EC[NN]]): Graph[NN, EC[NN]]

    Creates a new graph with nodes returned by fNode and an edge structure that remains intact where possible.

    Creates a new graph with nodes returned by fNode and an edge structure that remains intact where possible.

    You can call this flavor only if this graph's edge type is generic. Otherwise see flatMapBound.

    If this graph also contains typed edges, the typed edge's partial map function will be called to replace the ends. If the partial function is not defined, there will be an attempt to fall back to a generic edge. If that attempt also fails the edge will be dropped. So, if you have a mixed graph with generic and typed edges, prefer mapping edges directly to avoid leaving edges out.

    NN

    The node type of the resulting graph which may be unchanged or different from this graph's node type.

    EC

    The higher kind of the generic edge type parameter of this graph.

    fNode

    To apply to all nodes of this graph. Since the inner node is passed you can also examine the node context. Call outer to get the value of type N of the node. If fNode returns several new nodes with none equaling to the original node, the first new node is accepted to be the result of the node transformation. For more flexibility pass your own edge mapper to the overload.

    returns

    A new graph of possibly changed node and edge types and of any new structure depending on your edge mapper(s).

    Definition Classes
    GraphLikeGraphOps
  91. final def flatMap[NN, EC[X] <: Edge[X]](fNode: (NodeT) => Seq[NN], fEdge: (Seq[NN], Seq[NN]) => Seq[EC[NN]])(implicit w: <:<[E, AnyEdge[N]]): Graph[NN, EC[NN]]

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    See overload except the parameter

    fEdge

    has a simplified signature in this overload leaving out the inner edge. This comes in handy whenever you don't need to inspect inner edges.

    Definition Classes
    GraphOps
  92. final def flatMapBound[NN, EC <: Edge[NN]](fNode: (NodeT) => Seq[NN], fEdge: (EdgeT, Seq[NN], Seq[NN]) => Seq[EC])(implicit w: <:<[E, AnyEdge[N]]): Graph[NN, EC]

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    You can call this flavor only if this graph's edge type is typed. Otherwise see flatMap.

    NN

    The node type of the resulting graph which may be unchanged or different from this graph's node type.

    EC

    The edge type parameter of this graph.

    fNode

    To apply to all nodes of this graph. Since the inner node is passed you can also examine the node context. Call outer to get the value of type N of the node.

    fEdge

    To apply to all edges of this graph. This function is passed the current inner edge and its ends after being mapped by fNode. Since the inner edge is passed you can also examine its context. Call outer to get the outer edge of type E.

    returns

    A new graph of possibly changed node and edge types and of any new structure depending on your edge mapper(s).

    Definition Classes
    GraphLikeGraphOps
  93. final def flatMapBound(fNode: (NodeT) => Seq[N])(implicit w1: <:<[E, PartialMapper]): Graph[N, E]

    Creates a new graph with nodes returned by fNode and an edge structure that remains intact where possible.

    Creates a new graph with nodes returned by fNode and an edge structure that remains intact where possible.

    You can call this flavor only if this graph's edge type is typed. Otherwise see flatMap.

    fNode

    To apply to all nodes of this graph. Since the inner node is passed you can also examine the node context. Call outer to get the value of type N of the node. If fNode returns several new nodes with none equaling to the original node, the first new node is accepted to be the result of the node transformation. For more flexibility pass your own edge mapper to the overload.

    Definition Classes
    GraphLikeGraphOps
  94. final def flatMapBound[NN, EC <: Edge[NN]](fNode: (NodeT) => Seq[NN], fEdge: (Seq[NN], Seq[NN]) => Seq[EC])(implicit w: <:<[E, AnyEdge[N]]): Graph[NN, EC]

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    You can call this flavor only if this graph's edge type is typed. Otherwise see flatMap.

    See overload except the parameter

    fEdge

    has a simplified signature in this overload leaving out the inner edge. This comes in handy whenever you don't need to inspect inner edges.

    Definition Classes
    GraphOps
  95. final def flatMapDiHyper[NN, EC[X] <: Edge[X]](fNode: (NodeT) => Seq[NN], fDiHyperEdge: (EdgeT, Seq[NN], Seq[NN]) => Seq[EC[NN]], fEdge: Option[(EdgeT, Seq[NN], Seq[NN]) => Seq[EC[NN]]])(implicit w: <:<[E, AnyDiHyperEdge[N]]): Graph[NN, EC[NN]]

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    You can call this flavor only if this graph's edge type is generic. Otherwise see flatMapDiHyperBound.

    NN

    The node type of the resulting graph which may be unchanged or different from this graph's node type.

    EC

    The higher kind of the generic edge type parameter of this graph.

    fNode

    To apply to all nodes of this graph. Since the inner node is passed you can also examine the node context. Call outer to get the value of type N of the node.

    fDiHyperEdge

    To apply to all directed hyperedges in this graph. This function is passed the existing inner directed hyperedge and its sources and targets after being mapped by fNode. Since the inner directed hyperedge is passed you can also examine the edge context. Call outer to get the outer directed hyperedge of type E.

    fEdge

    To apply to any directed or undirected edge in this possibly mixed graph. If not present simple edges will be mapped by the mandatory edge mapper you supply. You are recommended supplying Some unless you know that the graph does not contain any simple edge.

    returns

    A new graph of possibly changed node and edge types and of any new structure depending on your edge mapper(s).

    Definition Classes
    GraphLikeGraphOps
  96. final def flatMapDiHyper[NN, EC[X] <: Edge[X]](fNode: (NodeT) => Seq[NN], fDiHyperEdge: (Seq[NN], Seq[NN]) => Seq[EC[NN]], fEdge: Option[(Seq[NN], Seq[NN]) => Seq[EC[NN]]] = None)(implicit w: <:<[E, AnyDiHyperEdge[N]]): Graph[NN, EC[NN]]

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    You can call this flavor only if this graph's edge type is generic. Otherwise see flatMapDiHyperBound.

    See overload except the parameter

    fDiHyperEdge

    has a simplified signature in this overload leaving out the inner edge. This comes in handy whenever you don't need to inspect inner edges.

    Definition Classes
    GraphOps
  97. final def flatMapDiHyperBound[NN, EC <: Edge[NN]](fNode: (NodeT) => Seq[NN], fDiHyperEdge: (EdgeT, Seq[NN], Seq[NN]) => Seq[EC], fEdge: Option[(EdgeT, Seq[NN], Seq[NN]) => Seq[EC]])(implicit w: <:<[E, AnyDiHyperEdge[N]]): Graph[NN, EC]

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    You can call this flavor only if this graph's edge type is typed. Otherwise see flatMapDiHyper.

    NN

    The node type of the resulting graph which may be unchanged or different from this graph's node type.

    EC

    The edge type parameter of this graph.

    fNode

    To apply to all nodes of this graph. Since the inner node is passed you can also examine the node context. Call outer to get the value of type N of the node.

    fDiHyperEdge

    To apply to all directed hyperedges in this graph. This function is passed the existing inner directed hyperedge and its sources and targets after being mapped by fNode. Since the inner directed hyperedge is passed you can also examine the edge context. Call outer to get the outer directed hyperedge of type E.

    fEdge

    To apply to any directed or undirected edge in this possibly mixed graph. If not present simple edges will be mapped by the mandatory edge mapper you supply. You are recommended supplying Some unless you know that the graph does not contain any simple edge.

    returns

    A new graph of possibly changed node and edge types and of any new structure depending on your edge mapper(s).

    Definition Classes
    GraphLikeGraphOps
  98. final def flatMapDiHyperBound[NN, EC <: Edge[NN]](fNode: (NodeT) => Seq[NN], fDiHyperEdge: (Seq[NN], Seq[NN]) => Seq[EC], fEdge: Option[(Seq[NN], Seq[NN]) => Seq[EC]] = None)(implicit w: <:<[E, AnyDiHyperEdge[N]]): Graph[NN, EC]

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    You can call this flavor only if this graph's edge type is typed. Otherwise see flatMapDiHyper.

    See overload except the parameter

    fDiHyperEdge

    has a simplified signature in this overload leaving out the inner edge. This comes in handy whenever you don't need to inspect inner edges.

    Definition Classes
    GraphOps
  99. final def flatMapHyper[NN, EC[X] <: Edge[X]](fNode: (NodeT) => Seq[NN], fHyperEdge: (EdgeT, Seq[NN]) => Seq[EC[NN]], fDiHyperEdge: Option[(EdgeT, Seq[NN], Seq[NN]) => Seq[EC[NN]]], fEdge: Option[(EdgeT, Seq[NN], Seq[NN]) => Seq[EC[NN]]])(implicit w: <:<[E, AnyHyperEdge[N]]): Graph[NN, EC[NN]]

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    You can call this flavor only if this graph's edge type is generic. Otherwise see flatMapHyperBound.

    NN

    The node type of the resulting graph which may be unchanged or different from this graph's node type.

    EC

    The higher kind of the generic edge type parameter of this graph.

    fNode

    To apply to all nodes of this graph. Since the inner node is passed you can also examine the node context. Call outer to get the value of type N of the node.

    fHyperEdge

    To apply to all hyperedges in this graph. This function is passed the current inner hyperedge and its ends after being mapped by fNode. Since the inner hyperedge is passed you can also examine its context. Call outer to get the outer hyperedge of type E.

    fDiHyperEdge

    To apply to any directed hyperedge in this possibly mixed graph. If not present directed hyperedges will be mapped by the mandatory fDiHyperEdge. You are recommended supplying Some unless you know that the graph does not contain any directed hyperedge.

    fEdge

    To apply to any directed or undirected edge in this possibly mixed graph. If not present simple edges will be mapped by the mandatory edge mapper you supply. You are recommended supplying Some unless you know that the graph does not contain any simple edge.

    returns

    A new graph of possibly changed node and edge types and of any new structure depending on your edge mapper(s).

    Definition Classes
    GraphLikeGraphOps
  100. final def flatMapHyper[NN, EC[X] <: Edge[X]](fNode: (NodeT) => Seq[NN], fHyperEdge: (Seq[NN]) => Seq[EC[NN]], fDiHyperEdge: Option[(Seq[NN], Seq[NN]) => Seq[EC[NN]]] = None, fEdge: Option[(Seq[NN], Seq[NN]) => Seq[EC[NN]]] = None)(implicit w: <:<[E, AnyHyperEdge[N]]): Graph[NN, EC[NN]]

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    You can call this flavor only if this graph's edge type is generic. Otherwise see flatMapHyperBound.

    See overload except the parameter

    fHyperEdge

    has a simplified signature in this overload leaving out the inner edge. This comes in handy whenever you don't need to inspect inner edges.

    Definition Classes
    GraphOps
  101. final def flatMapHyperBound[NN, EC <: Edge[NN]](fNode: (NodeT) => Seq[NN], fHyperEdge: (EdgeT, Seq[NN]) => Seq[EC], fDiHyperEdge: Option[(EdgeT, Seq[NN], Seq[NN]) => Seq[EC]], fEdge: Option[(EdgeT, Seq[NN], Seq[NN]) => Seq[EC]])(implicit w: <:<[E, AnyHyperEdge[N]]): Graph[NN, EC]

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    You can call this flavor only if this graph's edge type is typed. Otherwise see flatMapHyper.

    NN

    The node type of the resulting graph which may be unchanged or different from this graph's node type.

    EC

    The edge type parameter of this graph.

    fNode

    To apply to all nodes of this graph. Since the inner node is passed you can also examine the node context. Call outer to get the value of type N of the node.

    fHyperEdge

    To apply to all hyperedges in this graph. This function is passed the current inner hyperedge and its ends after being mapped by fNode. Since the inner hyperedge is passed you can also examine its context. Call outer to get the outer hyperedge of type E.

    fDiHyperEdge

    To apply to any directed hyperedge in this possibly mixed graph. If not present directed hyperedges will be mapped by the mandatory fDiHyperEdge. You are recommended supplying Some unless you know that the graph does not contain any directed hyperedge.

    fEdge

    To apply to any directed or undirected edge in this possibly mixed graph. If not present simple edges will be mapped by the mandatory edge mapper you supply. You are recommended supplying Some unless you know that the graph does not contain any simple edge.

    returns

    A new graph of possibly changed node and edge types and of any new structure depending on your edge mapper(s).

    Definition Classes
    GraphLikeGraphOps
  102. final def flatMapHyperBound[NN, EC <: Edge[NN]](fNode: (NodeT) => Seq[NN], fHyperEdge: (Seq[NN]) => Seq[EC], fDiHyperEdge: Option[(Seq[NN], Seq[NN]) => Seq[EC]] = None, fEdge: Option[(Seq[NN], Seq[NN]) => Seq[EC]] = None)(implicit w: <:<[E, AnyHyperEdge[N]]): Graph[NN, EC]

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    Creates a new graph with nodes and edges returned by fNode respectively fEdge.

    You can call this flavor only if this graph's edge type is typed. Otherwise see flatMapHyper.

    See overload except the parameter

    fHyperEdge

    has a simplified signature in this overload leaving out the inner edge. This comes in handy whenever you don't need to inspect inner edges.

    Definition Classes
    GraphOps
  103. def foldLeft[B](z: B)(opNode: (B, NodeT) => B, opEdge: (B, EdgeT) => B): B

    Applies a node-specific and an edge-specific binary operator to a cumulated value.

    Applies a node-specific and an edge-specific binary operator to a cumulated value. First opNode is called for all nodes than opEdge for all edges.

    B

    the result type of the binary operator.

    z

    the start value that is passed to opNode the first time.

    opNode

    the binary operator that is passed the cumulated value and an inner node.

    opEdge

    the binary operator that is passed the cumulated value and an inner edge.

    returns

    the cumulated value.

    Definition Classes
    GraphLikeGraphOps
  104. final def foldLeftOuter[B](z: B)(opNode: (B, N) => B, opEdge: (B, E) => B): B

    Same as foldLeft except the second parameter of the binary operators.

    Same as foldLeft except the second parameter of the binary operators.

    opNode

    the binary operator that is passed the cumulated value and an outer node.

    opEdge

    the binary operator that is passed the cumulated value and an outer edge.

    Definition Classes
    GraphOps
  105. final def get(edge: E): EdgeT

    Short for find(edge).get.

    Short for find(edge).get.

    Definition Classes
    GraphLikeGraphOps
    Annotations
    @inline()
    Exceptions thrown

    NoSuchElementException if the edge is not found.

  106. final def get(node: N): NodeT

    Short for find(node).get.

    Short for find(node).get.

    Definition Classes
    GraphLikeGraphOps
    Annotations
    @inline()
    Exceptions thrown

    NoSuchElementException if the node is not found.

  107. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  108. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  109. def initialize(nodes: Iterable[N], edges: Iterable[E]): Unit

    Populates this graph with nodes and edges.

    Populates this graph with nodes and edges. The implementing class will typically have a constructor with the same parameters which is invoked by from of the companion object.

    nodes

    The isolated (and optionally any other) outer nodes that the node set of this graph is to be populated with.

    edges

    The outer edges that the edge set of this graph is to be populated with. Nodes being the end of any of these edges will be added to the node set.

    Attributes
    protected
    Definition Classes
    GraphBase
  110. final def intersect(that: AnyGraph[N, E]): Graph[N, E]

    Computes the intersection between this graph and that graph.

    Computes the intersection between this graph and that graph.

    Definition Classes
    GraphOps
  111. final def intersectInPlace(that: AnyGraph[N, E]): Graph.this.type

    Shrinks this graph to its intersection with that graph.

    Shrinks this graph to its intersection with that graph.

    Definition Classes
    GraphOps
  112. final def isAcyclic: Boolean

    Whether this graph has no cycle.

    Whether this graph has no cycle.

    Definition Classes
    GraphTraversal
    Annotations
    @inline()
  113. def isComplete: Boolean

    Whether all nodes are pairwise adjacent.

    Whether all nodes are pairwise adjacent.

    returns

    true if this graph is complete, false if this graph contains any independent nodes.

    Definition Classes
    GraphTraversal
  114. def isConnected: Boolean

    Whether this graph is connected if it is undirected or weakly connected if it is directed.

    Whether this graph is connected if it is undirected or weakly connected if it is directed.

    Definition Classes
    GraphTraversal
  115. final def isCustomEdgeFilter(f: EdgePredicate): Boolean

    true if f is not equivalent to anyEdge.

    true if f is not equivalent to anyEdge.

    Definition Classes
    GraphBase
    Annotations
    @inline()
  116. final def isCustomNodeFilter(f: NodePredicate): Boolean

    true if f is not equivalent to anyNode.

    true if f is not equivalent to anyNode.

    Definition Classes
    GraphBase
    Annotations
    @inline()
  117. final def isCyclic: Boolean

    Whether this graph has at least one cycle in any of its components.

    Whether this graph has at least one cycle in any of its components.

    Definition Classes
    GraphTraversal
    Annotations
    @inline()
  118. def isDirected: Boolean

    Whether all edges of this graph are directed.

    Whether all edges of this graph are directed.

    Definition Classes
    GraphLikeGraphOps
  119. final def isEmpty: Boolean

    Whether this graph contains any node or any edge.

    Whether this graph contains any node or any edge.

    Definition Classes
    GraphOps
    Annotations
    @inline()
  120. def isHyper: Boolean

    Whether this graph contains at least one hyperedge.

    Whether this graph contains at least one hyperedge.

    Definition Classes
    GraphLikeGraphOps
  121. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  122. def isMixed: Boolean

    Whether this graph contains at least one directed and one undirected edge.

    Whether this graph contains at least one directed and one undirected edge.

    Definition Classes
    GraphLikeGraphOps
  123. def isMulti: Boolean

    Whether this graph contains at least one multi-edge.

    Whether this graph contains at least one multi-edge. We defnie multi-edges by

    1. two or more directed edges having the same source and target
    2. two or more undirected edges connecting the same nodes
    3. two or more (directed) hyperedges that, after being decomposed into (directed) edges, yield any multy-edge as stipulated above.
    Definition Classes
    GraphLikeGraphOps
  124. final def isTrivial: Boolean

    true if this graph has at most 1 node.

    true if this graph has at most 1 node.

    Definition Classes
    GraphOps
    Annotations
    @inline()
  125. def iterator: Iterator[InnerElem]

    Iterator over all inner nodes and edges.

    Iterator over all inner nodes and edges.

    Definition Classes
    GraphLikeGraphOps
  126. final def map[NN, EC[X] <: Edge[X]](fNode: (NodeT) => NN, fEdge: (EdgeT, NN, NN) => EC[NN])(implicit w: <:<[E, AnyEdge[N]]): Graph[NN, EC[NN]]

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    You can call this flavor only if this graph's edge type is generic. Otherwise see mapBound.

    NN

    The node type of the resulting graph which may be unchanged or different from this graph's node type.

    EC

    The higher kind of the generic edge type parameter of this graph.

    fNode

    To apply to all nodes of this graph. Since the inner node is passed you can also examine the node context. Call outer to get the value of type N of the node.

    fEdge

    To apply to all edges of this graph. This function is passed the current inner edge and its ends after being mapped by fNode. Since the inner edge is passed you can also examine its context. Call outer to get the outer edge of type E.

    returns

    The mapped graph with possibly changed node and edge type parameters.

    Definition Classes
    GraphLikeGraphOps
  127. final def map[NN, EC[X] <: Edge[X]](fNode: (NodeT) => NN)(implicit w1: <:<[E, GenericMapper], w2: =:=[EC[N], E], t: ClassTag[EC[NN]]): Graph[NN, EC[NN]]

    Creates a new graph with nodes mapped by fNode and with an untouched edge structure otherwise.

    Creates a new graph with nodes mapped by fNode and with an untouched edge structure otherwise.

    You can call this flavor only if this graph's edge type is generic. Otherwise see mapBound.

    If this graph also contains typed edges, the typed edge's partial map function will be called to replace the ends. If the partial function is not defined, there will be an attempt to fall back to a generic edge. If that attempt also fails the edge will be dropped. So, if you have a mixed graph with generic and typed edges, prefer mapping edges directly to avoid leaving edges out.

    NN

    The node type of the resulting graph which may be unchanged or different from this graph's node type.

    EC

    The higher kind of the generic edge type parameter of this graph.

    fNode

    To apply to all nodes of this graph. Since the inner node is passed you can also examine the node context. Call outer to get the value of type N of the node.

    returns

    The mapped graph with possibly changed node and edge type parameters.

    Definition Classes
    GraphLikeGraphOps
  128. final def map[NN, EC[X] <: Edge[X]](fNode: (NodeT) => NN, fEdge: (NN, NN) => EC[NN])(implicit w: <:<[E, AnyEdge[N]]): Graph[NN, EC[NN]]

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    See overload except the parameter

    fEdge

    has a simplified signature in this overload leaving out the inner edge. This comes in handy whenever you don't need to inspect inner edges.

    Definition Classes
    GraphOps
  129. final def mapBound[NN, EC <: Edge[NN]](fNode: (NodeT) => NN, fEdge: (EdgeT, NN, NN) => EC)(implicit w: <:<[E, AnyEdge[N]]): Graph[NN, EC]

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    You can call this flavor only if this graph's edge type is typed. Otherwise see map.

    NN

    The node type of the resulting graph which may be unchanged or different from this graph's node type.

    EC

    The edge type parameter of this graph.

    fNode

    To apply to all nodes of this graph. Since the inner node is passed you can also examine the node context. Call outer to get the value of type N of the node.

    fEdge

    To apply to all edges of this graph. This function is passed the current inner edge and its ends after being mapped by fNode. Since the inner edge is passed you can also examine its context. Call outer to get the outer edge of type E.

    returns

    The mapped graph with possibly changed node and edge type parameters.

    Definition Classes
    GraphLikeGraphOps
  130. final def mapBound(fNode: (NodeT) => N)(implicit w1: <:<[E, PartialMapper]): Graph[N, E]

    Creates a new graph with nodes mapped by fNode and with an untouched edge structure otherwise.

    Creates a new graph with nodes mapped by fNode and with an untouched edge structure otherwise.

    You can call this flavor only if this graph's edge type is typed. Otherwise see map.

    fNode

    To apply to all nodes of this graph. Since the inner node is passed you can also examine the node context. Call outer to get the value of type N of the node.

    returns

    The mapped graph with possibly changed node and edge type parameters.

    Definition Classes
    GraphLikeGraphOps
  131. final def mapBound[NN, EC <: Edge[NN]](fNode: (NodeT) => NN, fEdge: (NN, NN) => EC)(implicit w: <:<[E, AnyEdge[N]]): Graph[NN, EC]

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    See overload except the parameter

    fEdge

    has a simplified signature in this overload leaving out the inner edge. This comes in handy whenever you don't need to inspect inner edges.

    Definition Classes
    GraphOps
  132. def mapDiHyper[NN, EC[X] <: Edge[X]](fNode: (NodeT) => NN, fDiHyperEdge: (EdgeT, OneOrMore[NN], OneOrMore[NN]) => EC[NN], fEdge: Option[(EdgeT, NN, NN) => EC[NN]])(implicit w: <:<[E, AnyDiHyperEdge[N]]): Graph[NN, EC[NN]]

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    You can call this flavor only if this graph's edge type is generic. Otherwise see mapDiHyperBound.

    NN

    The node type of the resulting graph which may be unchanged or different from this graph's node type.

    EC

    The higher kind of the generic edge type parameter of this graph.

    fNode

    To apply to all nodes of this graph. Since the inner node is passed you can also examine the node context. Call outer to get the value of type N of the node.

    fDiHyperEdge

    To apply to all directed hyperedges in this graph. This function is passed the existing inner directed hyperedge and its sources and targets after being mapped by fNode. Since the inner directed hyperedge is passed you can also examine the edge context. Call outer to get the outer directed hyperedge of type E.

    fEdge

    To apply to any directed or undirected edge in this possibly mixed graph. If not present simple edges will be mapped by the mandatory edge mapper you supply. You are recommended supplying Some unless you know that the graph does not contain any simple edge.

    returns

    The mapped graph with possibly changed node and edge type parameters.

    Definition Classes
    GraphLikeGraphOps
  133. final def mapDiHyper[NN, EC[X] <: Edge[X]](fNode: (NodeT) => NN, fDiHyperEdge: (OneOrMore[NN], OneOrMore[NN]) => EC[NN], fEdge: Option[(NN, NN) => EC[NN]] = None)(implicit w: <:<[E, AnyDiHyperEdge[N]]): Graph[NN, EC[NN]]

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    You can call this flavor only if this graph's edge type is generic. Otherwise see mapDiHyperBound.

    See overload except the parameter

    fDiHyperEdge

    has a simplified signature in this overload leaving out the inner edge. This comes in handy whenever you don't need to inspect inner edges.

    Definition Classes
    GraphOps
  134. def mapDiHyperBound[NN, EC <: Edge[NN]](fNode: (NodeT) => NN, fDiHyperEdge: (EdgeT, OneOrMore[NN], OneOrMore[NN]) => EC, fEdge: Option[(EdgeT, NN, NN) => EC])(implicit w: <:<[E, AnyDiHyperEdge[N]]): Graph[NN, EC]

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    You can call this flavor only if this graph's edge type is typed. Otherwise see mapDiHyper.

    NN

    The node type of the resulting graph which may be unchanged or different from this graph's node type.

    EC

    The edge type parameter of this graph.

    fNode

    To apply to all nodes of this graph. Since the inner node is passed you can also examine the node context. Call outer to get the value of type N of the node.

    fDiHyperEdge

    To apply to all directed hyperedges in this graph. This function is passed the existing inner directed hyperedge and its sources and targets after being mapped by fNode. Since the inner directed hyperedge is passed you can also examine the edge context. Call outer to get the outer directed hyperedge of type E.

    fEdge

    To apply to any directed or undirected edge in this possibly mixed graph. If not present simple edges will be mapped by the mandatory edge mapper you supply. You are recommended supplying Some unless you know that the graph does not contain any simple edge.

    returns

    The mapped graph with possibly changed node and edge type parameters.

    Definition Classes
    GraphLikeGraphOps
  135. final def mapDiHyperBound[NN, EC <: Edge[NN]](fNode: (NodeT) => NN, fDiHyperEdge: (OneOrMore[NN], OneOrMore[NN]) => EC, fEdge: Option[(NN, NN) => EC] = None)(implicit w: <:<[E, AnyDiHyperEdge[N]]): Graph[NN, EC]

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    You can call this flavor only if this graph's edge type is typed. Otherwise see mapDiHyper.

    See overload except the parameter

    fDiHyperEdge

    has a simplified signature in this overload leaving out the inner edge. This comes in handy whenever you don't need to inspect inner edges.

    Definition Classes
    GraphOps
  136. final def mapHyper[NN, EC[X] <: Edge[X]](fNode: (NodeT) => NN, fHyperEdge: (EdgeT, Several[NN]) => EC[NN], fDiHyperEdge: Option[(EdgeT, OneOrMore[NN], OneOrMore[NN]) => EC[NN]], fEdge: Option[(EdgeT, NN, NN) => EC[NN]])(implicit w: <:<[E, AnyHyperEdge[N]]): Graph[NN, EC[NN]]

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    You can call this flavor only if this graph's edge type is generic. Otherwise see mapHyperBound.

    NN

    The node type of the resulting graph which may be unchanged or different from this graph's node type.

    EC

    The higher kind of the generic edge type parameter of this graph.

    fNode

    To apply to all nodes of this graph. Since the inner node is passed you can also examine the node context. Call outer to get the value of type N of the node.

    fHyperEdge

    To apply to all hyperedges in this graph. This function is passed the current inner hyperedge and its ends after being mapped by fNode. Since the inner hyperedge is passed you can also examine its context. Call outer to get the outer hyperedge of type E.

    fDiHyperEdge

    To apply to any directed hyperedge in this possibly mixed graph. If not present directed hyperedges will be mapped by the mandatory fDiHyperEdge. You are recommended supplying Some unless you know that the graph does not contain any directed hyperedge.

    fEdge

    To apply to any directed or undirected edge in this possibly mixed graph. If not present simple edges will be mapped by the mandatory edge mapper you supply. You are recommended supplying Some unless you know that the graph does not contain any simple edge.

    returns

    The mapped graph with possibly changed node and edge type parameters.

    Definition Classes
    GraphLikeGraphOps
  137. final def mapHyper[NN, EC[X] <: Edge[X]](fNode: (NodeT) => NN, fHyperEdge: (Several[NN]) => EC[NN], fDiHyperEdge: Option[(OneOrMore[NN], OneOrMore[NN]) => EC[NN]] = None, fEdge: Option[(NN, NN) => EC[NN]] = None)(implicit w: <:<[E, AnyHyperEdge[N]]): Graph[NN, EC[NN]]

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    You can call this flavor only if this graph's edge type is generic. Otherwise see mapHyperBound.

    See overload except the parameter

    fHyperEdge

    has a simplified signature in this overload leaving out the inner edge. This comes in handy whenever you don't need to inspect inner edges.

    Definition Classes
    GraphOps
  138. final def mapHyperBound[NN, EC <: Edge[NN]](fNode: (NodeT) => NN, fHyperEdge: (EdgeT, Several[NN]) => EC, fDiHyperEdge: Option[(EdgeT, OneOrMore[NN], OneOrMore[NN]) => EC], fEdge: Option[(EdgeT, NN, NN) => EC])(implicit w: <:<[E, AnyHyperEdge[N]]): Graph[NN, EC]

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    You can call this flavor only if this graph's edge type is typed. Otherwise see mapHyper.

    NN

    The node type of the resulting graph which may be unchanged or different from this graph's node type.

    EC

    The edge type parameter of this graph.

    fNode

    To apply to all nodes of this graph. Since the inner node is passed you can also examine the node context. Call outer to get the value of type N of the node.

    fHyperEdge

    To apply to all hyperedges in this graph. This function is passed the current inner hyperedge and its ends after being mapped by fNode. Since the inner hyperedge is passed you can also examine its context. Call outer to get the outer hyperedge of type E.

    fDiHyperEdge

    To apply to any directed hyperedge in this possibly mixed graph. If not present directed hyperedges will be mapped by the mandatory fDiHyperEdge. You are recommended supplying Some unless you know that the graph does not contain any directed hyperedge.

    fEdge

    To apply to any directed or undirected edge in this possibly mixed graph. If not present simple edges will be mapped by the mandatory edge mapper you supply. You are recommended supplying Some unless you know that the graph does not contain any simple edge.

    returns

    The mapped graph with possibly changed node and edge type parameters.

    Definition Classes
    GraphLikeGraphOps
  139. final def mapHyperBound[NN, EC <: Edge[NN]](fNode: (NodeT) => NN, fHyperEdge: (Several[NN]) => EC, fDiHyperEdge: Option[(OneOrMore[NN], OneOrMore[NN]) => EC] = None, fEdge: Option[(NN, NN) => EC] = None)(implicit w: <:<[E, AnyHyperEdge[N]]): Graph[NN, EC]

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    Creates a new graph with nodes and edges that are computed by the supplied mapping functions.

    You can call this flavor only if this graph's edge type is typed. Otherwise see mapHyper.

    See overload except the parameter

    fHyperEdge

    has a simplified signature in this overload leaving out the inner edge. This comes in handy whenever you don't need to inspect inner edges.

    Definition Classes
    GraphOps
  140. def maxDegree(implicit nodeDegree: DegreeFunction = Degree, degreeFilter: (Int) => Boolean = AnyDegree): Int

    The degree of the node having the highest degree or 0 if this graph is empty.

    The degree of the node having the highest degree or 0 if this graph is empty.

    Definition Classes
    GraphDegree
  141. def minDegree(implicit nodeDegree: DegreeFunction = Degree, degreeFilter: (Int) => Boolean = AnyDegree): Int

    The degree of the node having the least degree or 0 if this graph is empty.

    The degree of the node having the least degree or 0 if this graph is empty.

    Definition Classes
    GraphDegree
  142. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  143. def newDiHyperEdge(outer: E, sources: OneOrMore[NodeT], targets: OneOrMore[NodeT]): EdgeT
    Attributes
    protected
    Definition Classes
    GraphLikeGraphBase
  144. def newEdge(outer: E, node_1: NodeT, node_2: NodeT): EdgeT
    Attributes
    protected
    Definition Classes
    GraphLikeGraphBase
  145. final def newHyperEdge(outer: E, nodes: Several[NodeT]): EdgeT
    Attributes
    protected
    Definition Classes
    GraphLikeGraphBase
  146. final val noEdge: EdgePredicate

    Edge predicate always returning false.

    Edge predicate always returning false.

    Definition Classes
    GraphBaseGraphOps
  147. final val noNode: NodePredicate

    Node predicate always returning false.

    Node predicate always returning false.

    Definition Classes
    GraphBaseGraphOps
  148. final def nonTrivial: Boolean

    true if this graph has at least 2 nodes.

    true if this graph has at least 2 nodes.

    Definition Classes
    GraphOps
    Annotations
    @inline()
  149. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  150. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  151. final def order: Int

    The order - commonly referred to as |G| - of this graph equaling to the number of nodes.

    The order - commonly referred to as |G| - of this graph equaling to the number of nodes.

    Definition Classes
    GraphBaseGraphOps
  152. def outerIterator: Iterator[OuterElem]

    Iterator over all inner nodes and edges.

    Iterator over all inner nodes and edges.

    Definition Classes
    GraphLikeGraphOps
  153. final def remove(edge: E): Boolean

    Removes a single edge from this graph.

    Removes a single edge from this graph.

    returns

    whether the edge existed before

    Definition Classes
    GraphLikeShrinkable
    Annotations
    @inline()
  154. final def remove(node: N): Boolean

    Removes a single node from this graph.

    Removes a single node from this graph.

    returns

    whether the node existed before.

    Definition Classes
    GraphLikeShrinkable
    Annotations
    @inline()
  155. final def removeAll(edges: IterableOnce[E]): Graph.this.type

    Removes all edges from this graph.

    Removes all edges from this graph.

    Definition Classes
    Shrinkable
  156. final def removeAll(nodes: IterableOnce[N], edges: IterableOnce[E]): Graph.this.type

    Removes all nodes and edges from this graph.

    Removes all nodes and edges from this graph.

    Definition Classes
    Shrinkable
  157. def render(style: Style, nodeSeparator: String = GraphBase.defaultSeparator, edgeSeparator: String = GraphBase.defaultSeparator, nodeEdgeSetSeparator: String = GraphBase.defaultSeparator, withInnerPrefix: Boolean = true)(implicit ordNode: NodeOrdering = defaultNodeOrdering, ordEdge: EdgeOrdering = defaultEdgeOrdering): String

    Sorts all nodes of this graph by ordNode followed by all edges sorted by ordEdge and concatenates their string representation nodeSeparator and edgeSeparator respectively.

    Sorts all nodes of this graph by ordNode followed by all edges sorted by ordEdge and concatenates their string representation nodeSeparator and edgeSeparator respectively.

    nodeEdgeSetSeparator

    to separate the node set from the edge set.

    withInnerPrefix

    whether the node set and edge set should be prefixed.

    ordNode

    the node ordering defaulting to defaultNodeOrdering.

    ordEdge

    the edge ordering defaulting to defaultEdgeOrdering.

    Definition Classes
    ToString
  158. final def size: Int

    The size - commonly referred to as |E| - of this graph equaling to the number of edges.

    The size - commonly referred to as |E| - of this graph equaling to the number of edges.

    Definition Classes
    GraphBaseGraphOps
  159. final def subtractOne(edge: E): Graph.this.type

    Removes a single edge from this graph.

    Removes a single edge from this graph.

    Definition Classes
    GraphLikeShrinkable
    Annotations
    @inline()
  160. final def subtractOne(node: N): Graph.this.type

    Removes a single node from this graph.

    Removes a single node from this graph.

    Definition Classes
    GraphLikeShrinkable
    Annotations
    @inline()
  161. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  162. def toIterable: Iterable[InnerElem]

    Iterable over all nodes and edges.

    Iterable over all nodes and edges.

    Definition Classes
    GraphLikeGraphOps
  163. def toOuterIterable: Iterable[OuterElem]

    Iterable over all nodes and edges.

    Iterable over all nodes and edges.

    Definition Classes
    GraphLikeGraphOps
  164. def toString(): String

    Sorts nodes and edges as long as this Graph has at most 100 elements.

    Sorts nodes and edges as long as this Graph has at most 100 elements. See also def render.

    Definition Classes
    ToString → AnyRef → Any
  165. final def topologicalSort[U](implicit visitor: (InnerElem) => U = empty): TopologicalSort

    Sorts this graph topologically.

    Sorts this graph topologically. Hooks are ignored.

    visitor

    called for each inner node or inner edge visited during the sort. See componentTraverser for more control by means of FluentProperties.

    Definition Classes
    GraphTraversal
  166. final def topologicalSortByComponent[U](implicit visitor: (InnerElem) => U = empty): Iterable[TopologicalSort]

    Sorts every isolated component of this graph topologically.

    Sorts every isolated component of this graph topologically. Hooks are ignored.

    visitor

    called for each inner node or inner edge visited during the sort. See componentTraverser for more control by means of FluentProperties.

    Definition Classes
    GraphTraversal
  167. def totalDegree(implicit nodeDegree: DegreeFunction = Degree, degreeFilter: (Int) => Boolean = AnyDegree): Int

    The total degree of this graph equaling to the sum of the degrees over all nodes or 0 if this graph is empty.

    The total degree of this graph equaling to the sum of the degrees over all nodes or 0 if this graph is empty.

    nodeDegree

    the degree function to apply to the nodes defaulting to Degree. Non-default predefined degree functions are InDegree and OutDegree.

    degreeFilter

    selects nodes to be included by their degree.

    Definition Classes
    GraphDegree
  168. def totalWeight: Double

    The Sum of the weight of all edges.

    The Sum of the weight of all edges.

    Definition Classes
    GraphBaseGraphOps
  169. final def union[N2 >: N, E2 >: E <: Edge[N2]](that: AnyGraph[N2, E2]): Graph[N2, E2]

    Computes the union between this graph and that graph.

    Computes the union between this graph and that graph.

    Definition Classes
    GraphOps
    Annotations
    @inline()
  170. final def unionInPlace(that: AnyGraph[N, E]): Graph.this.type

    Adds all elements in other to this Growable.

    Adds all elements in other to this Growable.

    Definition Classes
    GraphOps
  171. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  172. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  173. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  174. final def |(that: AnyGraph[N, E]): Graph[N, E]

    Alias for union.

    Alias for union.

    Definition Classes
    GraphOps
    Annotations
    @inline()
  175. final def |=(that: AnyGraph[N, E]): Graph.this.type

    Alias for unionInPlace.

    Alias for unionInPlace.

    Definition Classes
    GraphOps
    Annotations
    @inline()

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated
  2. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from Graph[N, E] toStringFormat[Graph[N, E]] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @deprecated @inline()
    Deprecated

    (Since version 2.12.16) Use formatString.format(value) instead of value.formatted(formatString), or use the f"" string interpolator. In Java 15 and later, formatted resolves to the new method in String which has reversed parameters.

  3. def [B](y: B): (Graph[N, E], B)
    Implicit
    This member is added by an implicit conversion from Graph[N, E] toArrowAssoc[Graph[N, E]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use -> instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.

Inherited from GraphLike[N, E, Graph]

Inherited from GraphOps[N, E, Graph]

Inherited from Cloneable[Graph[N, E]]

Inherited from Cloneable

Inherited from AbstractBuilder[N, E]

Inherited from Shrinkable[N, E]

Inherited from Growable[N, E]

Inherited from AnyGraph[N, E]

Inherited from collection.GraphLike[N, E, [X, Y]Graph[X, Y]]

Inherited from ToString[N, E, [X, Y]Graph[X, Y]]

Inherited from GraphDegree[N, E, [X, Y]Graph[X, Y]]

Inherited from GraphTraversal[N, E]

Inherited from GraphBase[N, E, [X, Y]Graph[X, Y]]

Inherited from Serializable

Inherited from collection.GraphOps[N, E, [X, Y]Graph[X, Y]]

Inherited from OuterElems[N, E]

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd fromGraph[N, E] to any2stringadd[Graph[N, E]]

Inherited by implicit conversion StringFormat fromGraph[N, E] to StringFormat[Graph[N, E]]

Inherited by implicit conversion Ensuring fromGraph[N, E] to Ensuring[Graph[N, E]]

Inherited by implicit conversion ArrowAssoc fromGraph[N, E] to ArrowAssoc[Graph[N, E]]

Ungrouped