sealed abstract class Chain[+A] extends AnyRef

Trivial catenable sequence. Supports O(1) append, and (amortized) O(1) uncons, such that walking the sequence via N successive uncons steps takes O(N).

Source
Chain.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Chain
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def isEmpty: Boolean

    Returns true if there are no elements in this collection.

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ++[A2 >: A](c: Chain[A2]): Chain[A2]

    Alias for concat

  4. final def +:[A2 >: A](a: A2): Chain[A2]

    Alias for prepend.

  5. final def :+[A2 >: A](a: A2): Chain[A2]

    Alias for append.

  6. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  7. def ===[AA >: A](that: Chain[AA])(implicit A: Eq[AA]): Boolean

    Typesafe equality operator.

    Typesafe equality operator.

    This method is similar to == except that it only allows two Chain[A] values to be compared to each other, and uses equality provided by Eq[_] instances, rather than using the universal equality provided by .equals.

  8. final def append[A2 >: A](a: A2): Chain[A2]

    Returns a new Chain consisting of this followed by a.

    Returns a new Chain consisting of this followed by a. O(1) runtime.

  9. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  10. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  11. final def collect[B](pf: PartialFunction[A, B]): Chain[B]

    Collect B from this for which f is defined

  12. final def collectFirst[B](pf: PartialFunction[A, B]): Option[B]

    Finds the first element of this Chain for which the given partial function is defined, and applies the partial function to it.

  13. final def collectFirstSome[B](f: (A) ⇒ Option[B]): Option[B]

    Like collectFirst from scala.collection.Traversable but takes A => Option[B] instead of PartialFunctions.

  14. final def concat[A2 >: A](c: Chain[A2]): Chain[A2]

    Concatenates this with c in O(1) runtime.

  15. final def contains[AA >: A](a: AA)(implicit A: Eq[AA]): Boolean

    Check whether an element is in this structure

  16. final def deleteFirst(f: (A) ⇒ Boolean): Option[(A, Chain[A])]

    Yields to Some(a, Chain[A]) with a removed where f holds for the first time, otherwise yields None, if a was not found Traverses only until a is found.

  17. def distinct[AA >: A](implicit O: Order[AA]): Chain[AA]

    Remove duplicates.

    Remove duplicates. Duplicates are checked using Order[_] instance.

  18. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  19. def equals(o: Any): Boolean
    Definition Classes
    Chain → AnyRef → Any
  20. final def exists(f: (A) ⇒ Boolean): Boolean

    Check whether at least one element satisfies the predicate

  21. final def filter(f: (A) ⇒ Boolean): Chain[A]

    Remove elements not matching the predicate

  22. final def filterNot(f: (A) ⇒ Boolean): Chain[A]

    Remove elements matching the predicate

  23. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  24. final def find(f: (A) ⇒ Boolean): Option[A]

    Find the first element matching the predicate, if one exists

  25. final def flatMap[B](f: (A) ⇒ Chain[B]): Chain[B]

    Applies the supplied function to each element and returns a new Chain from the concatenated results

  26. final def foldLeft[B](z: B)(f: (B, A) ⇒ B): B

    Folds over the elements from left to right using the supplied initial value and function.

  27. final def foldRight[B](z: B)(f: (A, B) ⇒ B): B

    Folds over the elements from right to left using the supplied initial value and function.

  28. final def forall(f: (A) ⇒ Boolean): Boolean

    Check whether all elements satisfy the predicate

  29. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  30. final def groupBy[B](f: (A) ⇒ B)(implicit B: Order[B]): SortedMap[B, NonEmptyChain[A]]

    Groups elements inside this Chain according to the Order of the keys produced by the given mapping function.

  31. def hash[AA >: A](implicit hashA: Hash[AA]): Int
  32. def hashCode(): Int
    Definition Classes
    Chain → AnyRef → Any
  33. def headOption: Option[A]

    Returns the head of this Chain if non empty, none otherwise.

    Returns the head of this Chain if non empty, none otherwise. Amortized O(1).

  34. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  35. final def iterator: Iterator[A]
  36. final def length: Long

    Returns the number of elements in this structure

  37. final def map[B](f: (A) ⇒ B): Chain[B]

    Applies the supplied function to each element and returns a new Chain.

  38. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  39. final def nonEmpty: Boolean

    Returns false if there are no elements in this collection.

  40. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  41. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  42. final def prepend[A2 >: A](a: A2): Chain[A2]

    Returns a new Chain consisting of a followed by this.

    Returns a new Chain consisting of a followed by this. O(1) runtime.

  43. def reverse: Chain[A]

    Reverses this Chain

  44. final def reverseIterator: Iterator[A]
  45. def show[AA >: A](implicit AA: Show[AA]): String
  46. final def size: Long

    Alias for length

  47. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  48. final def toList: List[A]

    Converts to a list.

  49. def toString(): String
    Definition Classes
    Chain → AnyRef → Any
  50. final def toVector: Vector[A]

    Converts to a vector.

  51. final def uncons: Option[(A, Chain[A])]

    Returns the head and tail of this Chain if non empty, none otherwise.

    Returns the head and tail of this Chain if non empty, none otherwise. Amortized O(1).

  52. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  53. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  54. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  55. final def zipWith[B, C](other: Chain[B])(f: (A, B) ⇒ C): Chain[C]

    Zips this Chain with another Chain and applies a function for each pair of elements.

Inherited from AnyRef

Inherited from Any

Ungrouped