Packages

abstract class LDiHyperEdge[+N, L] extends AbstractDiHyperEdge[N] with SingleLabel[L] with ExtendedKeyBySingleLabel with LDiHyperEdgeToString with MultiLEdgeToString

Template for generic directed multi-hyperedges with a single label field. To support multigraphs, equality is based on sources, targets and the label field. Mix in GenericDiHyperEdgeMapper to get your derived multi-hyperedge also mappable.

Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. LDiHyperEdge
  2. MultiLEdgeToString
  3. LDiHyperEdgeToString
  4. DiHyperEdgeToString
  5. LEdgeToString
  6. EdgeToString
  7. ExtendedKeyBySingleLabel
  8. MultiEdge
  9. SingleLabel
  10. AbstractDiHyperEdge
  11. AnyDiHyperEdge
  12. EqDiHyper
  13. AnyHyperEdge
  14. EqHyper
  15. Eq
  16. Edge
  17. Equals
  18. AnyRef
  19. Any
Implicitly
  1. by HyperFromAny
  2. by any2stringadd
  3. by StringFormat
  4. by Ensuring
  5. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new LDiHyperEdge(sources: OneOrMore[N], targets: OneOrMore[N])

Abstract Value Members

  1. abstract def label: L
    Definition Classes
    SingleLabel

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from LDiHyperEdge[N, L] toany2stringadd[LDiHyperEdge[N, L]] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (LDiHyperEdge[N, L], B)
    Implicit
    This member is added by an implicit conversion from LDiHyperEdge[N, L] toArrowAssoc[LDiHyperEdge[N, L]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. def _1: N

    The first node of this edge.

    The first node of this edge.

    Definition Classes
    AnyDiHyperEdgeAnyHyperEdgeEdge
  7. def _2: N

    The second node of this edge.

    The second node of this edge.

    Definition Classes
    AnyHyperEdgeEdge
  8. def arity: Int

    Number of the endpoints of this edge.

    Number of the endpoints of this edge. At least two nodes are joined. In case of a hook, the two nodes are identical. Hyperedges may link more than two nodes.

    Definition Classes
    AnyDiHyperEdgeAnyHyperEdgeEdge
  9. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  10. def baseEquals(other: Edge[_]): Boolean
    Attributes
    protected
    Definition Classes
    EqDiHyperEq
  11. def baseHashCode: Int
    Attributes
    protected
    Definition Classes
    EqDiHyperEq
  12. def canEqual(that: Any): Boolean
    Definition Classes
    Edge → Equals
  13. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  14. final def contains[M >: N](node: M): Boolean

    Same as isAt.

    Same as isAt.

    Definition Classes
    Edge
    Annotations
    @inline()
  15. def customMsgPrefix: String
    Attributes
    protected
    Definition Classes
    Edge
  16. def ends: Several[N]

    The endpoints of this edge, in other words the nodes this edge connects.

    The endpoints of this edge, in other words the nodes this edge connects.

    Definition Classes
    AnyDiHyperEdgeEdge
  17. def ensuring(cond: (LDiHyperEdge[N, L]) => Boolean, msg: => Any): LDiHyperEdge[N, L]
    Implicit
    This member is added by an implicit conversion from LDiHyperEdge[N, L] toEnsuring[LDiHyperEdge[N, L]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  18. def ensuring(cond: (LDiHyperEdge[N, L]) => Boolean): LDiHyperEdge[N, L]
    Implicit
    This member is added by an implicit conversion from LDiHyperEdge[N, L] toEnsuring[LDiHyperEdge[N, L]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  19. def ensuring(cond: Boolean, msg: => Any): LDiHyperEdge[N, L]
    Implicit
    This member is added by an implicit conversion from LDiHyperEdge[N, L] toEnsuring[LDiHyperEdge[N, L]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  20. def ensuring(cond: Boolean): LDiHyperEdge[N, L]
    Implicit
    This member is added by an implicit conversion from LDiHyperEdge[N, L] toEnsuring[LDiHyperEdge[N, L]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  21. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  22. def equals(other: Any): Boolean
    Definition Classes
    MultiEdge → AnyRef → Any
  23. def equals(other: Edge[_]): Boolean

    Preconditions: this.directed == that.directed && this.isInstanceOf[Keyed] == that.isInstanceOf[Keyed]

    Preconditions: this.directed == that.directed && this.isInstanceOf[Keyed] == that.isInstanceOf[Keyed]

    Attributes
    protected
    Definition Classes
    Eq
  24. def extendKeyBy: OneOrMore[Any]

    Each element in this sequence references a class member of the custom edge that will be added to the edge key.

    Each element in this sequence references a class member of the custom edge that will be added to the edge key. The edge ends, like source and target, are always part of the key so don't add them here. Once you add class members to the edge key they automatically become part of the edge's hashCode/equality.

    Definition Classes
    ExtendedKeyBySingleLabelMultiEdge
  25. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  26. def hasSource(pred: (N) => Boolean): Boolean

    true if any source end of this edge fulfills pred.

    true if any source end of this edge fulfills pred.

    Definition Classes
    AnyDiHyperEdgeAnyHyperEdgeEdge
  27. def hasSource[M >: N](node: M): Boolean

    true if node is a source of this edge.

    true if node is a source of this edge. In case this edge is undirected this method maps to isAt.

    Definition Classes
    AnyDiHyperEdgeAnyHyperEdgeEdge
  28. def hasTarget(pred: (N) => Boolean): Boolean

    true if any target end of this edge fulfills pred.

    true if any target end of this edge fulfills pred.

    Definition Classes
    AnyDiHyperEdgeAnyHyperEdgeEdge
  29. def hasTarget[M >: N](node: M): Boolean

    true if node is a target of this edge.

    true if node is a target of this edge. In case this edge is undirected this method maps to isAt.

    Definition Classes
    AnyDiHyperEdgeAnyHyperEdgeEdge
  30. def hashCode(): Int
    Definition Classes
    MultiEdge → AnyRef → Any
  31. def isAt(pred: (N) => Boolean): Boolean

    true if any end of this edge fulfills pred.

    true if any end of this edge fulfills pred.

    Definition Classes
    AnyHyperEdgeEdge
  32. def isAt[M >: N](node: M): Boolean

    true if node is incident with this edge.

    true if node is incident with this edge.

    Definition Classes
    AnyHyperEdgeEdge
  33. final def isDirected: Boolean

    Whether this edge is directed.

    Whether this edge is directed.

    Definition Classes
    AnyDiHyperEdgeAnyHyperEdgeEdge
    Annotations
    @inline()
  34. def isHyperEdge: Boolean

    Whether this edge's type is hyperedge meaning that it may have more than two ends.

    Whether this edge's type is hyperedge meaning that it may have more than two ends.

    Definition Classes
    AnyHyperEdgeEdge
  35. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  36. def isLabeled: Boolean
    Definition Classes
    Edge
  37. def isLooping: Boolean

    Whether this edge produces a self-loop.

    Whether this edge produces a self-loop. In case of a non-hyperedge, a loop is given if the incident nodes are equal. In case of a directed hyperedge, a loop is given if any of the targets is included in the sources. In case of an undirected hyperedge, a loop is given if any of the ends is a duplicate.

    Definition Classes
    AnyDiHyperEdgeAnyHyperEdgeEdge
  38. final def isUndirected: Boolean

    Whether this edge is undirected.

    Whether this edge is undirected.

    Definition Classes
    Edge
    Annotations
    @inline()
  39. def labelSeparator: String
    Attributes
    protected
    Definition Classes
    MultiLEdgeToString
  40. def labelToString: String
    Attributes
    protected
    Definition Classes
    SingleLabel
  41. def matches(p1: (N) => Boolean, p2: (N) => Boolean): Boolean

    true if
    a) two distinct ends of this undirected edge exist for which p1 and p2 hold or
    b) p1 holds for a source and p2 for a target of this directed edge.

    true if
    a) two distinct ends of this undirected edge exist for which p1 and p2 hold or
    b) p1 holds for a source and p2 for a target of this directed edge.

    Definition Classes
    AnyDiHyperEdgeAnyHyperEdgeEdge
  42. def matches[M >: N](n1: M, n2: M): Boolean

    true if

    true if

    1. being an undirected edge, both n1 and n2 are at this edge
    2. being a directed edge, n1 is a source and n2 a target of this edge.
    Definition Classes
    AnyDiHyperEdgeAnyHyperEdgeEdge
  43. final def matches(fList: List[(N) => Boolean]): Boolean
    Attributes
    protected
    Definition Classes
    AnyHyperEdge
  44. val n1: LDiHyperEdge[N, L]
    Implicit
    This member is added by an implicit conversion from LDiHyperEdge[N, L] toHyperFromAny[LDiHyperEdge[N, L]] performed by method HyperFromAny in scalax.collection.hyperedges.
    Definition Classes
    HyperFromAnyFromAny
  45. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  46. def node(n: Int): N

    The n'th node of this edge.

    The n'th node of this edge.

    Definition Classes
    AnyHyperEdgeEdge
    Exceptions thrown

    IllegalArgumentException if n does not meet 0 <= n < arity.

  47. def nodesToString: String
    Attributes
    protected
    Definition Classes
    DiHyperEdgeToStringEdgeToString
  48. def nodesToStringSeparator: String
    Attributes
    protected
    Definition Classes
    DiHyperEdgeToStringEdgeToString
  49. final def nonHyperEdge: Boolean

    Whether this edge has exactly two ends.

    Whether this edge has exactly two ends.

    Definition Classes
    Edge
    Annotations
    @inline()
  50. final def nonLooping: Boolean

    Same as ! looping.

    Same as ! looping.

    Definition Classes
    Edge
    Annotations
    @inline()
  51. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  52. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  53. val sources: OneOrMore[N]

    All source ends of this edge.

    All source ends of this edge.

    Definition Classes
    AbstractDiHyperEdgeAnyHyperEdgeEdge
  54. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  55. val targets: OneOrMore[N]

    All target ends of this edge.

    All target ends of this edge.

    Definition Classes
    AbstractDiHyperEdgeAnyHyperEdgeEdge
  56. def toString(): String

    Implemented in terms of the protected methods nodesToString, labelSeparator and labelToString.

    Implemented in terms of the protected methods nodesToString, labelSeparator and labelToString.

    Definition Classes
    LEdgeToStringEdgeToString → AnyRef → Any
  57. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  58. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  59. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  60. def weight: Double

    The weight of this edge with a default of 1.

    The weight of this edge with a default of 1.

    Note that weight is normally not part of the edge key (hashCode). As a result, edges with different weights connecting the same nodes will be evaluated as equal and thus added once and only once to the graph. In case you need multi-edges based on different weights you should define a custom edge class that mixes in ExtendedKey and adds weight to keyAttributes.

    Definition Classes
    Edge
  61. def withSources[U](f: (N) => U): Unit

    Applies f to all source ends of this edge without any memory allocation.

    Applies f to all source ends of this edge without any memory allocation.

    Definition Classes
    AnyHyperEdgeEdge
  62. def withTargets[U](f: (N) => U): Unit

    Applies f to the target ends of this edge without any memory allocation.

    Applies f to the target ends of this edge without any memory allocation.

    Definition Classes
    AnyHyperEdgeEdge
  63. def ~~[NN >: N](n2: NN): HyperEdge[NN]
    Implicit
    This member is added by an implicit conversion from LDiHyperEdge[N, L] toHyperFromAny[LDiHyperEdge[N, L]] performed by method HyperFromAny in scalax.collection.hyperedges.
    Definition Classes
    FromAny

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 LDiHyperEdge[N, L] toStringFormat[LDiHyperEdge[N, L]] 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): (LDiHyperEdge[N, L], B)
    Implicit
    This member is added by an implicit conversion from LDiHyperEdge[N, L] toArrowAssoc[LDiHyperEdge[N, L]] 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 MultiLEdgeToString

Inherited from LDiHyperEdgeToString

Inherited from DiHyperEdgeToString

Inherited from LEdgeToString

Inherited from EdgeToString

Inherited from MultiEdge

Inherited from SingleLabel[L]

Inherited from AbstractDiHyperEdge[N]

Inherited from AnyDiHyperEdge[N]

Inherited from EqDiHyper

Inherited from AnyHyperEdge[N]

Inherited from EqHyper

Inherited from Eq

Inherited from Edge[N]

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion HyperFromAny fromLDiHyperEdge[N, L] to HyperFromAny[LDiHyperEdge[N, L]]

Inherited by implicit conversion any2stringadd fromLDiHyperEdge[N, L] to any2stringadd[LDiHyperEdge[N, L]]

Inherited by implicit conversion StringFormat fromLDiHyperEdge[N, L] to StringFormat[LDiHyperEdge[N, L]]

Inherited by implicit conversion Ensuring fromLDiHyperEdge[N, L] to Ensuring[LDiHyperEdge[N, L]]

Inherited by implicit conversion ArrowAssoc fromLDiHyperEdge[N, L] to ArrowAssoc[LDiHyperEdge[N, L]]

Ungrouped