Object

scalax.collection

GraphEdge

Related Doc: package collection

Permalink

object GraphEdge

This object serves as a container for all edge-types to be used in the context of Graph. You will usually simply import all its members along with the members of Param:

import scalax.collection.GraphPredef._, scalax.collection.GraphEdge,_
Linear Supertypes
Content Hierarchy Learn more about scaladoc diagrams
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. GraphEdge
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Visibility
  1. Public
  2. All

Type Members

  1. class DiEdge[N] extends UnDiEdge[N] with DiEdgeLike[N] with EdgeCopy[DiEdge] with OuterEdge[N, DiEdge]

    Permalink

    Represents a directed edge (arc / arrow) connecting two nodes.

    Represents a directed edge (arc / arrow) connecting two nodes.

    Annotations
    @SerialVersionUID()
  2. trait DiEdgeLike[+N] extends DiHyperEdgeLike[N] with EqDi

    Permalink
  3. class DiHyperEdge[N] extends HyperEdge[N] with DiHyperEdgeLike[N] with EdgeCopy[DiHyperEdge] with OuterEdge[N, DiHyperEdge]

    Permalink

    Represents a directed edge (link) in a hypergraph with unlimited number of nodes.

    Represents a directed edge (link) in a hypergraph with unlimited number of nodes.

    Annotations
    @SerialVersionUID()
  4. trait DiHyperEdgeLike[+N] extends EdgeLike[N] with EqDiHyper

    Permalink

    Template trait for directed edges.

    Template trait for directed edges.

    Any class representing directed edges must inherit from this trait.

  5. trait EdgeCompanion[+E[N] <: EdgeLike[N]] extends EdgeCompanionBase[E]

    Permalink

    The abstract methods of this trait must be implemented by companion objects of simple (non-weighted, non-labeled) edges.

  6. trait EdgeCompanionBase[+E[N] <: EdgeLike[N]] extends Serializable

    Permalink

    Marker trait for companion objects of any kind of edge.

  7. trait EdgeCopy[+CC[X] <: EdgeLike[_]] extends AnyRef

    Permalink

    This trait is to be mixed in by every class implementing EdgeLike.

  8. case class EdgeException(msg: String) extends Exception with Product with Serializable

    Permalink
  9. sealed trait EdgeLike[+N] extends Iterable[N] with Eq with Serializable

    Permalink

    Template for Edges in a Graph.

    Template for Edges in a Graph.

    Implementation note: Irrespective of the containing Graph all library-provided Edges are immutable.

    N

    the user type of the nodes (ends) of this edge.

  10. sealed trait Eq extends AnyRef

    Permalink
    Attributes
    protected[scalax.collection]
  11. trait EqDi extends Eq

    Permalink
    Attributes
    protected[scalax.collection]
  12. trait EqDiHyper extends Eq

    Permalink
    Attributes
    protected[scalax.collection]
  13. trait EqHyper extends Eq

    Permalink
    Attributes
    protected[scalax.collection]
  14. trait EqUnDi extends Eq

    Permalink
    Attributes
    protected[scalax.collection]
  15. trait ExtendedKey[N] extends EdgeLike[N]

    Permalink

    This trait supports extending the default key of an edge with additional attributes.

    This trait supports extending the default key of an edge with additional attributes.

    As a default, the key - represented by hashCode - of an edge is made up of the participating nodes. Custom edges may need to expand this default key with additional attributes thus enabling the definition of several edges between the same nodes (multi-edges). Edges representing flight connections between airports are a typical example for this requirement because their key must also include something like a flight number. When defining a custom edge for a multi-graph, this trait must be mixed in.

    N

    type of the nodes

  16. class HyperEdge[N] extends EdgeLike[N] with EdgeCopy[HyperEdge] with OuterEdge[N, HyperEdge] with EqHyper

    Permalink

    Represents an undirected hyperedge (hyperlink) in a hypergraph with unlimited number of nodes.

    Represents an undirected hyperedge (hyperlink) in a hypergraph with unlimited number of nodes.

    Annotations
    @SerialVersionUID()
  17. trait HyperEdgeCompanion[+E[N] <: EdgeLike[N]] extends EdgeCompanionBase[E]

    Permalink

    The abstract methods of this trait must be implemented by companion objects of simple (non-weighted, non-labeled) hyperedges.

  18. trait Keyed extends AnyRef

    Permalink
    Attributes
    protected[scalax.collection]
  19. trait LoopFreeEdge[N] extends EdgeLike[N]

    Permalink
  20. class UnDiEdge[N] extends HyperEdge[N] with EdgeCopy[UnDiEdge] with OuterEdge[N, UnDiEdge] with EqUnDi

    Permalink

    Represents an undirected edge.

    Represents an undirected edge.

    Annotations
    @SerialVersionUID()

Value Members

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  4. object DiEdge extends EdgeCompanion[DiEdge]

    Permalink

    Factory for directed edges.

    Factory for directed edges. GraphPredef also supports implicit conversion from node_1 ~> node_2 to DiEdge.

  5. object DiEdgeLike extends Serializable

    Permalink
  6. object DiHyperEdge extends HyperEdgeCompanion[DiHyperEdge]

    Permalink

    Factory for directed hyper-edges.

    Factory for directed hyper-edges. GraphPredef also supports implicit conversion from node_1 ~> node_2 ~> node_3 to DirectedHyperEdge.

  7. object EdgeLike extends Serializable

    Permalink
  8. object ExtendedKey extends Serializable

    Permalink
  9. object HyperEdge extends HyperEdgeCompanion[HyperEdge]

    Permalink

    Factory for undirected hyper-edges.

    Factory for undirected hyper-edges. GraphPredef also supports implicit conversion from node_1 ~ node_2 ~ node_3 to HyperEdge.

  10. object LoopFreeEdge extends Serializable

    Permalink
  11. object NodeProduct

    Permalink

    Helper object to convert edge-factory parameter-lists to tuple-n or list.

  12. object UnDiEdge extends EdgeCompanion[UnDiEdge]

    Permalink

    Factory for undirected edges.

    Factory for undirected edges. GraphPredef also supports implicit conversion from node_1 ~ node_2 to UnDiEdge.

  13. final def asInstanceOf[T0]: T0

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  15. final def eq(arg0: AnyRef): Boolean

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  19. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  20. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  21. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  22. final def notify(): Unit

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

    Permalink
    Definition Classes
    AnyRef
  24. final def synchronized[T0](arg0: ⇒ T0): T0

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

    Permalink
    Definition Classes
    AnyRef → Any
  26. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  29. val ~: UnDiEdge.type

    Permalink

    Allows to replace the edge object with it's shortcut like edge match {case n1 ~ n2 => f(n1, n2)}.

  30. val ~>: DiEdge.type

    Permalink

    Allows to replace the edge object with it's shortcut like edge match {case source ~> target => f(source, target)}.

  31. val ~~: HyperEdge.type

    Permalink

    Allows to replace the edge object with it's shortcut like hyperedge match {case n1 ~~ (n2, n3) => f(n1, n2, n3)}.

  32. val ~~>: DiHyperEdge.type

    Permalink

    Allows to replace the edge object with it's shortcut like diHyperedge match {case source ~~ (t1, t2) => f(source, t1, t2)}.

Inherited from AnyRef

Inherited from Any

Ungrouped