Diev

sealed abstract
class Diev[A]

Implementation of a Discrete Interval Encoding Tree https://web.engr.oregonstate.edu/~erwig/diet/ that is actually implemented using a Vector and is balanced at all times as a result.

Companion
object
class Object
trait Matchable
class Any

Value members

Abstract methods

def +(interval: (A, A)): Diev[A]
def +(value: A): Diev[A]
def ++(other: Diev[A]): Diev[A]
def -(interval: (A, A)): Diev[A]
def -(value: A): Diev[A]
def --(other: Diev[A]): Diev[A]
def contains(value: A): Boolean
def contains(interval: (A, A)): Boolean
def filter(f: A => Boolean): Diev[A]
def flatMap[B](f: A => Diev[B])(implicit EB: Enum[B]): Diev[B]
def foldLeft[B](z: B)(f: (B, A) => B): B
def foreach(f: A => Unit): Unit
def intervals: Vector[(A, A)]
def map[B](f: A => B)(implicit EB: Enum[B]): Diev[B]
def toIList(): IList[A]
def toList(): List[A]
def toSet(): Set[A]