scalax.collection

GraphBase

trait GraphBase[N, E[X] <: EdgeLikeIn[X]] extends Serializable

Base template trait for graphs.

This trait provides the common structure and base operations for immutable graphs independently of their representation. Base operations also cover one-step traversals. For unlimited traversals see trait GraphTraversal.

Users of Graph usually don't interact directly with this trait but with trait Graph instead which inherits the functionality provided by this trait.

If E inherits DirectedEdgeLike the graph is directed, otherwise it is undirected or mixed.

N

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

E

the kind of the edges (links) in this graph.

Self Type
GraphBase[N, E]
Linear Supertypes
Serializable, Serializable, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. GraphBase
  2. Serializable
  3. Serializable
  4. AnyRef
  5. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. trait Edge extends Serializable

  2. class EdgeBase extends EdgeOut[N, E, NodeT, E] with InnerEdgeLike

  3. sealed trait EdgeOrdering extends Ordering[EdgeT] with ElemOrdering

  4. trait EdgeSet extends Set[EdgeT] with Serializable

  5. abstract type EdgeSetT <: EdgeSet

  6. abstract type EdgeT <: InnerEdge with InnerEdgeLike with Serializable

  7. sealed trait ElemOrdering extends AnyRef

    Base trait for graph Orderings.

  8. type InnerEdge = EdgeOut[N, E, NodeT, E]

    Attributes
    protected
  9. trait InnerEdgeLike extends Iterable[NodeT] with Edge

  10. trait InnerNodeLike extends NodeOut[N] with Node

  11. sealed class NoOrdering extends ElemOrdering

    The empty ElemOrdering.

  12. trait Node extends Serializable

  13. abstract class NodeBase extends InnerNodeLike

    Attributes
    protected
  14. sealed trait NodeOrdering extends Ordering[NodeT] with ElemOrdering

    Ordering for the path dependent type NodeT.

  15. trait NodeSet extends Set[NodeT] with Serializable

  16. abstract type NodeSetT <: NodeSet

  17. abstract type NodeT <: InnerNodeLike with Serializable

Abstract Value Members

  1. 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.

  2. abstract def newEdge(innerEdge: E[NodeT]): EdgeT

    Attributes
    protected
  3. abstract def newNode(n: N): NodeT

    Attributes
    protected
  4. 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.

Concrete Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. object Edge extends Serializable

  7. object EdgeOrdering extends Serializable

    Ordering for the path dependent type EdgeT.

  8. object Node extends Serializable

  9. object NodeOrdering extends Serializable

  10. final lazy val anyOrdering: AnyOrdering[N]

    Attributes
    protected
  11. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  12. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  13. final lazy val defaultEdgeOrdering: EdgeOrdering

  14. final lazy val defaultNodeOrdering: NodeOrdering

  15. implicit final def edgeToEdgeCont(e: E[N]): E[NodeT]

    Attributes
    protected
    Annotations
    @inline()
  16. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  17. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  18. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  19. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  20. def graphSize: Int

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

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

    Method size is reserved for the number of nodes and edges because Graph is also SetLike with set elements being nodes or edges.

  21. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  22. def initialize(nodes: Iterable[N], edges: Iterable[E[N]]): 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
  23. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  24. final def isTrivial: Boolean

    true if this graph has at most 1 node.

    true if this graph has at most 1 node.

    Annotations
    @inline()
  25. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  26. final val noOrdering: NoOrdering

  27. final def nonTrivial: Boolean

    true if this graph has at least 2 nodes.

    true if this graph has at least 2 nodes.

    Annotations
    @inline()
  28. final def notify(): Unit

    Definition Classes
    AnyRef
  29. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  30. def order: Int

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

  31. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  32. def toString(): String

    Definition Classes
    AnyRef → Any
  33. def totalWeight: Long

  34. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  35. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  36. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped