abstract class HyperGraph[T, E <: HyperEdge[Node[T]]] extends AnyRef
Represents an abstract hyper graph.
- T
The type of the vertices.
- E
The type of the hyper edges.
- Alphabetic
- By Inheritance
- HyperGraph
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
Abstract Value Members
- abstract def +[X](_edges: Set[E])(implicit arg0: ClassTag[X]): HyperGraph[T, E]
Adds a set of hyper edges to the hyper graph.
Adds a set of hyper edges to the hyper graph.
This will also add vertices if any of the hyper edges contains vertices not yet present in the graph.
- X
ClassTag parameter to ensure generic type is not erased.
- _edges
The hyper edges to be added.
- returns
An updated hyper graph with the added hyper edge (and vertices).
- abstract def +(edge: E): HyperGraph[T, E]
Adds a hyper edge to the hyper graph.
Adds a hyper edge to the hyper graph.
This will also add vertices if the hyper edge contains vertices not yet present in the graph.
- edge
The hyper edge to be added.
- returns
An updated hyper graph with the added hyper edge (and vertices).
- abstract def +(_vertices: Set[Node[T]]): HyperGraph[T, E]
Adds a set of vertices to the hyper graph.
Adds a set of vertices to the hyper graph.
- _vertices
The vertices to be added.
- returns
An updated hyper graph with the added vertices.
- abstract def +(vertex: Node[T]): HyperGraph[T, E]
Adds a vertex to the hyper graph.
Adds a vertex to the hyper graph.
- vertex
The vertex to be added.
- returns
An updated hyper graph with the added vertex.
- abstract def -[X](_edges: Set[E])(implicit arg0: ClassTag[X]): HyperGraph[T, E]
Remove a set of hyper edges from the graph.
Remove a set of hyper edges from the graph.
Hyper edges that are not part of the graph will are ignored.
- X
ClassTag parameter to ensure generic type is not erased.
- _edges
The hyper edges to be removed.
- returns
The graph minus the hyper edges.
- abstract def -(edge: E): HyperGraph[T, E]
Remove a hyper edge from the graph.
Remove a hyper edge from the graph.
If the hyper edge is not part of the graph this function returns the original hyper graph.
- edge
The hyper edge to be removed.
- returns
The graph minus the hyper edge.
- abstract def -(_vertices: Set[Node[T]]): HyperGraph[T, E]
Remove a set of vertices from the graph.
Remove a set of vertices from the graph.
Any hyper edges connected to any of the vertices will also be removed. Vertices that are not part of the hyper graph are ignored.
- _vertices
The vertices to be removed.
- returns
The graph minus the vertices and mines hyper edges that were connected.
- abstract def -(vertex: Node[T]): HyperGraph[T, E]
Remove a vertex from the hyper graph.
Remove a vertex from the hyper graph.
Any hyper edges connected to this vertex will also be removed.
- vertex
The vertex to be removed.
- returns
The graph minus the vertex and mines hyper edges that were connected.
- abstract def merge[G <: HyperGraph[T, E]](that: G): HyperGraph[T, E]
Merge two hyper graphs of the same type.
Merge two hyper graphs of the same type.
- G
The type of the hyper graph to be merged (same as this type).
- that
The hyper graph to be merged with this graph.
- returns
The merged hyper graph.
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
- val edges: Set[E]
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def isEmpty: Boolean
Tests if the hyper graph contains any vertices.
Tests if the hyper graph contains any vertices.
- returns
if the hyper graph contains no vertices,true
otherwise.false
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def noEdges: Boolean
Tests if the hyper graph contains any edges.
Tests if the hyper graph contains any edges.
- returns
if the hyper graph no edges,true
otherwise.false
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- def size: Int
Returns the number of vertices in the hyper graph.
Returns the number of vertices in the hyper graph.
- returns
The number of vertices in the hyper graph.
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- val vertices: Set[Node[T]]
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])