Trait/Object

scalax.collection

GraphBase

Related Docs: object GraphBase | package collection

Permalink

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
Type Hierarchy Learn more about scaladoc diagrams
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. GraphBase
  2. Serializable
  3. Serializable
  4. AnyRef
  5. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show all
Visibility
  1. Public
  2. All

Type Members

  1. trait Edge extends Serializable

    Permalink
  2. class EdgeBase extends InnerEdgeParam[N, E, NodeT, E] with InnerEdge

    Permalink
  3. type EdgeFilter = (EdgeT) ⇒ Boolean

    Permalink
  4. sealed trait EdgeOrdering extends Ordering[EdgeT] with ElemOrdering

    Permalink
  5. trait EdgeSet extends AnySet[EdgeT] with ExtSetMethods[EdgeT] with Serializable

    Permalink
  6. abstract type EdgeSetT <: EdgeSet

    Permalink
  7. abstract type EdgeT <: InnerEdgeParam[N, E, NodeT, E] with InnerEdge with Serializable

    Permalink
  8. sealed trait ElemOrdering extends AnyRef

    Permalink

    Base trait for graph Orderings.

    Base trait for graph Orderings.

    Attributes
    protected
  9. trait InnerEdge extends Iterable[NodeT] with InnerEdgeParam[N, E, NodeT, E] with Edge with InnerElem

    Permalink
  10. sealed trait InnerElem extends AnyRef

    Permalink
  11. trait InnerNode extends InnerNodeParam[N] with Node with InnerElem

    Permalink
  12. trait Node extends Serializable

    Permalink
  13. abstract class NodeBase extends InnerNode

    Permalink
    Attributes
    protected
  14. type NodeFilter = (NodeT) ⇒ Boolean

    Permalink
  15. sealed trait NodeOrdering extends Ordering[NodeT] with ElemOrdering

    Permalink

    Ordering for the path dependent type NodeT.

  16. trait NodeSet extends AnySet[NodeT] with ExtSetMethods[NodeT] with Serializable

    Permalink
  17. abstract type NodeSetT <: NodeSet

    Permalink
  18. abstract type NodeT <: InnerNode with Serializable

    Permalink

Abstract Value Members

  1. abstract def edges: EdgeSetT

    Permalink

    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 isDirected: Boolean

    Permalink
  3. abstract def isHyper: Boolean

    Permalink
  4. abstract def isMulti: Boolean

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

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

    Permalink
    Attributes
    protected
  7. abstract def nodes: NodeSetT

    Permalink

    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: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from GraphBase[N, E] to any2stringadd[GraphBase[N, E]] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (GraphBase[N, E], B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from GraphBase[N, E] to ArrowAssoc[GraphBase[N, E]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  6. object Edge extends Serializable

    Permalink
  7. object EdgeOrdering extends Serializable

    Permalink

    Ordering for the path dependent type EdgeT.

  8. object EdgeT

    Permalink
  9. object InnerEdge extends Serializable

    Permalink
  10. object InnerNode extends Serializable

    Permalink
  11. object NoOrdering extends ElemOrdering with Serializable

    Permalink

    The empty ElemOrdering.

  12. object Node extends Serializable

    Permalink
  13. object NodeOrdering extends Serializable

    Permalink
  14. final val anyEdge: EdgeFilter

    Permalink

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

  15. final val anyNode: NodeFilter

    Permalink

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

  16. final lazy val anyOrdering: AnyOrdering[N]

    Permalink
    Attributes
    protected
  17. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  18. def clone(): AnyRef

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

    Permalink
  20. final lazy val defaultNodeOrdering: NodeOrdering

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

    Permalink
    Attributes
    protected
    Annotations
    @inline()
  22. def ensuring(cond: (GraphBase[N, E]) ⇒ Boolean, msg: ⇒ Any): GraphBase[N, E]

    Permalink
    Implicit information
    This member is added by an implicit conversion from GraphBase[N, E] to Ensuring[GraphBase[N, E]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  23. def ensuring(cond: (GraphBase[N, E]) ⇒ Boolean): GraphBase[N, E]

    Permalink
    Implicit information
    This member is added by an implicit conversion from GraphBase[N, E] to Ensuring[GraphBase[N, E]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  24. def ensuring(cond: Boolean, msg: ⇒ Any): GraphBase[N, E]

    Permalink
    Implicit information
    This member is added by an implicit conversion from GraphBase[N, E] to Ensuring[GraphBase[N, E]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  25. def ensuring(cond: Boolean): GraphBase[N, E]

    Permalink
    Implicit information
    This member is added by an implicit conversion from GraphBase[N, E] to Ensuring[GraphBase[N, E]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  26. final def eq(arg0: AnyRef): Boolean

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

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  29. def formatted(fmtstr: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from GraphBase[N, E] to StringFormat[GraphBase[N, E]] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  30. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  31. def graphSize: Int

    Permalink

    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.

  32. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  33. def initialize(nodes: Iterable[N], edges: Iterable[E[N]]): Unit

    Permalink

    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
  34. final def isCustomEdgeFilter(f: EdgeFilter): Boolean

    Permalink

    true if f is not equivalent to anyEdge.

    true if f is not equivalent to anyEdge.

    Annotations
    @inline()
  35. final def isCustomNodeFilter(f: NodeFilter): Boolean

    Permalink

    true if f is not equivalent to anyNode.

    true if f is not equivalent to anyNode.

    Annotations
    @inline()
  36. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  37. final def isTrivial: Boolean

    Permalink

    true if this graph has at most 1 node.

    true if this graph has at most 1 node.

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

    Permalink
    Definition Classes
    AnyRef
  39. final val noNode: NodeFilter

    Permalink

    Node predicate always returning false.

  40. final def nonTrivial: Boolean

    Permalink

    true if this graph has at least 2 nodes.

    true if this graph has at least 2 nodes.

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

    Permalink
    Definition Classes
    AnyRef
  42. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  43. def order: Int

    Permalink

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

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

    Permalink
    Definition Classes
    AnyRef
  45. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  46. def totalWeight: Long

    Permalink
  47. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  50. def [B](y: B): (GraphBase[N, E], B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from GraphBase[N, E] to ArrowAssoc[GraphBase[N, E]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from GraphBase[N, E] to any2stringadd[GraphBase[N, E]]

Inherited by implicit conversion StringFormat from GraphBase[N, E] to StringFormat[GraphBase[N, E]]

Inherited by implicit conversion Ensuring from GraphBase[N, E] to Ensuring[GraphBase[N, E]]

Inherited by implicit conversion ArrowAssoc from GraphBase[N, E] to ArrowAssoc[GraphBase[N, E]]

Ungrouped