Packages

object LazyList extends SeqFactory[LazyList]

This object provides a set of operations to create LazyList values.

Annotations
@SerialVersionUID()
Source
LazyList.scala
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. LazyList
  2. SeqFactory
  3. IterableFactory
  4. Serializable
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. final class Deferrer[A] extends AnyVal
  2. final class SerializationProxy[A] extends Serializable

    This serialization proxy is used for LazyLists which start with a sequence of evaluated cons cells.

    This serialization proxy is used for LazyLists which start with a sequence of evaluated cons cells. The forced sequence is serialized in a compact, sequential format, followed by the unevaluated tail, which uses standard Java serialization to store the complete structure of unevaluated thunks. This allows the serialization of long evaluated lazy lists without exhausting the stack through recursive serialization of cons cells.

    Annotations
    @SerialVersionUID()

Value Members

  1. def apply[A](elems: A*): LazyList[A]

    Creates a lazy list with the specified elements.

    Creates a lazy list with the specified elements.

    A

    the type of the lazy list's elements

    elems

    the elements of the created lazy list

    returns

    a new lazy list with elements elems

    Definition Classes
    IterableFactory
  2. def concat[A](xss: collection.Iterable[A]*): LazyList[A]

    Concatenates all argument collections into a single lazy list.

    Concatenates all argument collections into a single lazy list.

    xss

    the collections that are to be concatenated.

    returns

    the concatenation of all the collections.

    Definition Classes
    LazyListIterableFactory
  3. def continually[A](elem: => A): LazyList[A]

    Create an infinite LazyList containing the given element expression (which is computed for each occurrence).

    Create an infinite LazyList containing the given element expression (which is computed for each occurrence).

    elem

    the element composing the resulting LazyList

    returns

    the LazyList containing an infinite number of elem

  4. def empty[A]: LazyList[A]

    An empty collection

    An empty collection

    A

    the type of the lazy list's elements

    Definition Classes
    LazyListIterableFactory
  5. def fill[A](n: Int)(elem: => A): LazyList[A]

    Produces a lazy list containing the results of some element computation a number of times.

    Produces a lazy list containing the results of some element computation a number of times.

    n

    the number of elements contained in the lazy list.

    elem

    the element computation

    returns

    A lazy list that contains the results of n evaluations of elem.

    Definition Classes
    LazyListIterableFactory
  6. def fill[A](n1: Int, n2: Int, n3: Int, n4: Int, n5: Int)(elem: => A): LazyList[LazyList[LazyList[LazyList[LazyList[A]]]]]

    Produces a five-dimensional lazy list containing the results of some element computation a number of times.

    Produces a five-dimensional lazy list containing the results of some element computation a number of times.

    n1

    the number of elements in the 1st dimension

    n2

    the number of elements in the 2nd dimension

    n3

    the number of elements in the 3rd dimension

    n4

    the number of elements in the 4th dimension

    n5

    the number of elements in the 5th dimension

    elem

    the element computation

    returns

    A lazy list that contains the results of n1 x n2 x n3 x n4 x n5 evaluations of elem.

    Definition Classes
    IterableFactory
  7. def fill[A](n1: Int, n2: Int, n3: Int, n4: Int)(elem: => A): LazyList[LazyList[LazyList[LazyList[A]]]]

    Produces a four-dimensional lazy list containing the results of some element computation a number of times.

    Produces a four-dimensional lazy list containing the results of some element computation a number of times.

    n1

    the number of elements in the 1st dimension

    n2

    the number of elements in the 2nd dimension

    n3

    the number of elements in the 3rd dimension

    n4

    the number of elements in the 4th dimension

    elem

    the element computation

    returns

    A lazy list that contains the results of n1 x n2 x n3 x n4 evaluations of elem.

    Definition Classes
    IterableFactory
  8. def fill[A](n1: Int, n2: Int, n3: Int)(elem: => A): LazyList[LazyList[LazyList[A]]]

    Produces a three-dimensional lazy list containing the results of some element computation a number of times.

    Produces a three-dimensional lazy list containing the results of some element computation a number of times.

    n1

    the number of elements in the 1st dimension

    n2

    the number of elements in the 2nd dimension

    n3

    the number of elements in the 3rd dimension

    elem

    the element computation

    returns

    A lazy list that contains the results of n1 x n2 x n3 evaluations of elem.

    Definition Classes
    IterableFactory
  9. def fill[A](n1: Int, n2: Int)(elem: => A): LazyList[LazyList[A]]

    Produces a two-dimensional lazy list containing the results of some element computation a number of times.

    Produces a two-dimensional lazy list containing the results of some element computation a number of times.

    n1

    the number of elements in the 1st dimension

    n2

    the number of elements in the 2nd dimension

    elem

    the element computation

    returns

    A lazy list that contains the results of n1 x n2 evaluations of elem.

    Definition Classes
    IterableFactory
  10. def from(start: Int): LazyList[Int]

    Create an infinite LazyList starting at start and incrementing by 1.

    Create an infinite LazyList starting at start and incrementing by 1.

    start

    the start value of the LazyList

    returns

    the LazyList starting at value start.

  11. def from(start: Int, step: Int): LazyList[Int]

    Create an infinite LazyList starting at start and incrementing by step step.

    Create an infinite LazyList starting at start and incrementing by step step.

    start

    the start value of the LazyList

    step

    the increment value of the LazyList

    returns

    the LazyList starting at value start.

  12. def from[A](coll: IterableOnce[A]): LazyList[A]

    Creates a target lazy list from an existing source collection

    Creates a target lazy list from an existing source collection

    A

    the type of the collection’s elements

    returns

    a new lazy list with the elements of source

    Definition Classes
    LazyListIterableFactory
  13. implicit def iterableFactory[A]: Factory[A, LazyList[A]]
    Definition Classes
    IterableFactory
  14. def iterate[A](start: => A)(f: (A) => A): LazyList[A]

    An infinite LazyList that repeatedly applies a given function to a start value.

    An infinite LazyList that repeatedly applies a given function to a start value.

    start

    the start value of the LazyList

    f

    the function that's repeatedly applied

    returns

    the LazyList returning the infinite sequence of values start, f(start), f(f(start)), ...

  15. def iterate[A](start: A, len: Int)(f: (A) => A): LazyList[A]

    Produces a lazy list containing repeated applications of a function to a start value.

    Produces a lazy list containing repeated applications of a function to a start value.

    start

    the start value of the lazy list

    len

    the number of elements contained in the lazy list

    f

    the function that's repeatedly applied

    returns

    a lazy list with len values in the sequence start, f(start), f(f(start)), ...

    Definition Classes
    IterableFactory
  16. def newBuilder[A]: Builder[A, LazyList[A]]

    The builder returned by this method only evaluates elements of collections added to it as needed.

    The builder returned by this method only evaluates elements of collections added to it as needed.

    A

    the type of the lazy list’s elements

    returns

    A builder for LazyList objects.

    Definition Classes
    LazyListIterableFactory
  17. def range[A](start: A, end: A, step: A)(implicit arg0: Integral[A]): LazyList[A]

    Produces a lazy list containing equally spaced values in some integer interval.

    Produces a lazy list containing equally spaced values in some integer interval.

    start

    the start value of the lazy list

    end

    the end value of the lazy list (the first value NOT contained)

    step

    the difference between successive elements of the lazy list (must be positive or negative)

    returns

    a lazy list with values start, start + step, ... up to, but excluding end

    Definition Classes
    IterableFactory
  18. def range[A](start: A, end: A)(implicit arg0: Integral[A]): LazyList[A]

    Produces a lazy list containing a sequence of increasing of integers.

    Produces a lazy list containing a sequence of increasing of integers.

    start

    the first element of the lazy list

    end

    the end value of the lazy list (the first value NOT contained)

    returns

    a lazy list with values start, start + 1, ..., end - 1

    Definition Classes
    IterableFactory
  19. def tabulate[A](n: Int)(f: (Int) => A): LazyList[A]

    Produces a lazy list containing values of a given function over a range of integer values starting from 0.

    Produces a lazy list containing values of a given function over a range of integer values starting from 0.

    n

    The number of elements in the lazy list

    f

    The function computing element values

    returns

    A lazy list consisting of elements f(0), ..., f(n -1)

    Definition Classes
    LazyListIterableFactory
  20. def tabulate[A](n1: Int, n2: Int, n3: Int, n4: Int, n5: Int)(f: (Int, Int, Int, Int, Int) => A): LazyList[LazyList[LazyList[LazyList[LazyList[A]]]]]

    Produces a five-dimensional lazy list containing values of a given function over ranges of integer values starting from 0.

    Produces a five-dimensional lazy list containing values of a given function over ranges of integer values starting from 0.

    n1

    the number of elements in the 1st dimension

    n2

    the number of elements in the 2nd dimension

    n3

    the number of elements in the 3rd dimension

    n4

    the number of elements in the 4th dimension

    n5

    the number of elements in the 5th dimension

    f

    The function computing element values

    returns

    A lazy list consisting of elements f(i1, i2, i3, i4, i5) for 0 <= i1 < n1, 0 <= i2 < n2, 0 <= i3 < n3, 0 <= i4 < n4, and 0 <= i5 < n5.

    Definition Classes
    IterableFactory
  21. def tabulate[A](n1: Int, n2: Int, n3: Int, n4: Int)(f: (Int, Int, Int, Int) => A): LazyList[LazyList[LazyList[LazyList[A]]]]

    Produces a four-dimensional lazy list containing values of a given function over ranges of integer values starting from 0.

    Produces a four-dimensional lazy list containing values of a given function over ranges of integer values starting from 0.

    n1

    the number of elements in the 1st dimension

    n2

    the number of elements in the 2nd dimension

    n3

    the number of elements in the 3rd dimension

    n4

    the number of elements in the 4th dimension

    f

    The function computing element values

    returns

    A lazy list consisting of elements f(i1, i2, i3, i4) for 0 <= i1 < n1, 0 <= i2 < n2, 0 <= i3 < n3, and 0 <= i4 < n4.

    Definition Classes
    IterableFactory
  22. def tabulate[A](n1: Int, n2: Int, n3: Int)(f: (Int, Int, Int) => A): LazyList[LazyList[LazyList[A]]]

    Produces a three-dimensional lazy list containing values of a given function over ranges of integer values starting from 0.

    Produces a three-dimensional lazy list containing values of a given function over ranges of integer values starting from 0.

    n1

    the number of elements in the 1st dimension

    n2

    the number of elements in the 2nd dimension

    n3

    the number of elements in the 3rd dimension

    f

    The function computing element values

    returns

    A lazy list consisting of elements f(i1, i2, i3) for 0 <= i1 < n1, 0 <= i2 < n2, and 0 <= i3 < n3.

    Definition Classes
    IterableFactory
  23. def tabulate[A](n1: Int, n2: Int)(f: (Int, Int) => A): LazyList[LazyList[A]]

    Produces a two-dimensional lazy list containing values of a given function over ranges of integer values starting from 0.

    Produces a two-dimensional lazy list containing values of a given function over ranges of integer values starting from 0.

    n1

    the number of elements in the 1st dimension

    n2

    the number of elements in the 2nd dimension

    f

    The function computing element values

    returns

    A lazy list consisting of elements f(i1, i2) for 0 <= i1 < n1 and 0 <= i2 < n2.

    Definition Classes
    IterableFactory
  24. implicit def toDeferrer[A](l: => LazyList[A]): Deferrer[A]
  25. final def unapplySeq[A](x: LazyList[A]): UnapplySeqWrapper[A]
    Definition Classes
    SeqFactory
  26. def unfold[A, S](init: S)(f: (S) => Option[(A, S)]): LazyList[A]

    Produces a lazy list that uses a function f to produce elements of type A and update an internal state of type S.

    Produces a lazy list that uses a function f to produce elements of type A and update an internal state of type S.

    A

    Type of the elements

    S

    Type of the internal state

    init

    State initial value

    f

    Computes the next element (or returns None to signal the end of the collection)

    returns

    a lazy list that produces elements using f until f returns None

    Definition Classes
    LazyListIterableFactory
  27. object #::
  28. object cons

    An alternative way of building and matching lazy lists using LazyList.cons(hd, tl).