TransitiveClosure

final class TransitiveClosure[A](a2i: A => Int, i2a: Int => A, size: Int, directChildren: A => Iterable[A], filter: A => Filter)(implicit evidence$1: UnivEq[A])

Only works with acyclic digraphs. Closure is also reflexive.

Laws

i ∈ [0,size) a2i.i2a = id

Value parameters:
a2i

Global index of a node.

directChildren

Each direct child of a given node. Non-transitive; don't return self.

i2a

Node at global index.

Companion:
object
class Object
trait Matchable
class Any

Value members

Concrete methods

def apply(a: A): Set[A]

Reflexive

Reflexive

def nonRefl(a: A): Set[A]

Non-reflexive

Non-reflexive