Packages

abstract class LHyperEdge[+N, L] extends AbstractHyperEdge[N] with OrderedEndpoints with SingleLabel[L] with ExtendedKeyBySingleLabel with LHyperEdgeToString with MultiLEdgeToString

Template for generic undirected multi-hyperedges with ordered ends and a single label field. To support multigraphs, equality is based on ends and the label field. Mix in GenericHyperEdgeMapper to get your derived multi-hyperedge also mappable.

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

Instance Constructors

  1. new LHyperEdge(ends: Several[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 LHyperEdge[N, L] toany2stringadd[LHyperEdge[N, L]] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (LHyperEdge[N, L], B)
    Implicit
    This member is added by an implicit conversion from LHyperEdge[N, L] toArrowAssoc[LHyperEdge[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
    AnyHyperEdgeEdge
  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
    AnyHyperEdgeEdge
  9. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  10. def baseEquals(other: Edge[_]): Boolean
    Attributes
    protected
    Definition Classes
    EqHyperEq
  11. def baseHashCode: Int
    Attributes
    protected
    Definition Classes
    EqHyperEq
  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. val 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
    AbstractHyperEdgeEdge
  17. def ensuring(cond: (LHyperEdge[N, L]) => Boolean, msg: => Any): LHyperEdge[N, L]
    Implicit
    This member is added by an implicit conversion from LHyperEdge[N, L] toEnsuring[LHyperEdge[N, L]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  18. def ensuring(cond: (LHyperEdge[N, L]) => Boolean): LHyperEdge[N, L]
    Implicit
    This member is added by an implicit conversion from LHyperEdge[N, L] toEnsuring[LHyperEdge[N, L]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  19. def ensuring(cond: Boolean, msg: => Any): LHyperEdge[N, L]
    Implicit
    This member is added by an implicit conversion from LHyperEdge[N, L] toEnsuring[LHyperEdge[N, L]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  20. def ensuring(cond: Boolean): LHyperEdge[N, L]
    Implicit
    This member is added by an implicit conversion from LHyperEdge[N, L] toEnsuring[LHyperEdge[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
    AnyHyperEdgeEdge
  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
    AnyHyperEdgeEdge
  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
    AnyHyperEdgeEdge
  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
    AnyHyperEdgeEdge
  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. def isDirected: Boolean

    Whether this edge is directed.

    Whether this edge is directed.

    Definition Classes
    AnyHyperEdgeEdge
  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
    AnyHyperEdgeEdge
  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
    AnyHyperEdgeEdge
  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
    AnyHyperEdgeEdge
  43. final def matches(fList: List[(N) => Boolean]): Boolean
    Attributes
    protected
    Definition Classes
    AnyHyperEdge
  44. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  45. 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.

  46. def nodesToString: String
    Attributes
    protected
    Definition Classes
    EdgeToString
  47. def nodesToStringSeparator: String
    Attributes
    protected
    Definition Classes
    HyperEdgeToStringEdgeToString
  48. final def nonHyperEdge: Boolean

    Whether this edge has exactly two ends.

    Whether this edge has exactly two ends.

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

    Same as ! looping.

    Same as ! looping.

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

    All source ends of this edge.

    All source ends of this edge.

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

    All target ends of this edge.

    All target ends of this edge.

    Definition Classes
    AnyHyperEdgeEdge
  55. 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
  56. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  57. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  58. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  59. 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
  60. 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
  61. 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
  62. def ~~[NN >: N](n2: NN): HyperEdge[NN]
    Implicit
    This member is added by an implicit conversion from LHyperEdge[N, L] toOrderedHyperFromAny[LHyperEdge[N, L]] performed by method OrderedHyperFromAny in scalax.collection.hyperedges.ordered.
    Definition Classes
    FromAny
  63. def ~~[NN >: N](n2: NN): hyperedges.HyperEdge[NN]
    Implicit
    This member is added by an implicit conversion from LHyperEdge[N, L] toHyperFromAny[LHyperEdge[N, L]] performed by method HyperFromAny in scalax.collection.hyperedges.
    Definition Classes
    FromAny

Shadowed Implicit Value Members

  1. val n1: LHyperEdge[N, L]
    Implicit
    This member is added by an implicit conversion from LHyperEdge[N, L] toOrderedHyperFromAny[LHyperEdge[N, L]] performed by method OrderedHyperFromAny in scalax.collection.hyperedges.ordered.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (lHyperEdge: OrderedHyperFromAny[LHyperEdge[N, L]]).n1
    Definition Classes
    OrderedHyperFromAnyFromAny
  2. val n1: LHyperEdge[N, L]
    Implicit
    This member is added by an implicit conversion from LHyperEdge[N, L] toHyperFromAny[LHyperEdge[N, L]] performed by method HyperFromAny in scalax.collection.hyperedges.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (lHyperEdge: HyperFromAny[LHyperEdge[N, L]]).n1
    Definition Classes
    HyperFromAnyFromAny

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

Inherited from HyperEdgeToString

Inherited from LEdgeToString

Inherited from EdgeToString

Inherited from MultiEdge

Inherited from SingleLabel[L]

Inherited from OrderedEndpoints

Inherited from AbstractHyperEdge[N]

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 OrderedHyperFromAny fromLHyperEdge[N, L] to OrderedHyperFromAny[LHyperEdge[N, L]]

Inherited by implicit conversion HyperFromAny fromLHyperEdge[N, L] to HyperFromAny[LHyperEdge[N, L]]

Inherited by implicit conversion any2stringadd fromLHyperEdge[N, L] to any2stringadd[LHyperEdge[N, L]]

Inherited by implicit conversion StringFormat fromLHyperEdge[N, L] to StringFormat[LHyperEdge[N, L]]

Inherited by implicit conversion Ensuring fromLHyperEdge[N, L] to Ensuring[LHyperEdge[N, L]]

Inherited by implicit conversion ArrowAssoc fromLHyperEdge[N, L] to ArrowAssoc[LHyperEdge[N, L]]

Ungrouped