Spec-Zone.ru › Scala 3.2

Объект LazyList.LazyList

Класс-компаньон • Исходный код

объект LazyList extends SeqFactory[LazyList]

Этот объект предоставляет набор операций для создания Iterable значений.

Супертипы
Трейт SeqFactory[LazyList]
Трейт IterableFactory[LazyList]
Трейт Serializable
Класс Object
Трейт Matchable
Класс Any
Тип-«я»
LazyList.type

Классы

Исходный код
объект #::

Исходный код
finalный класс Deferrer[A] extends AnyVal

Исходный код
finalный класс SerializationProxy[A](var coll: LazyList[A]) extends Serializable

Этот прокси-сервис сериализации используется для LazyList, которые начинаются с последовательности вычисленных ячеек cons. Вычисленная последовательность сериализуется в компактном последовательном формате, а затем следует неоценённый хвост, который использует стандартную Java сериализацию для хранения полной структуры неоценённых функций-лямбда. Это позволяет сериализовать длинные вычисленные ленивые списки без исчерпания стека через рекурсивную сериализацию ячеек cons.

Исходный код
объект cons

Альтернативный способ создания и соответствия ленивым спискам, используя LazyList.cons(hd, tl).

Конкретные методы

Исходный код
override def concat[A](xss: Iterable[A]*): LazyList[A]

Конкатенирует все коллекции аргументов в один ленивый список.

Параметры значений
xss

Коллекции, которые должны быть конкатенированы.

Возвращает

Конкатенацию всех коллекций.

Классы определений IterableFactory

Исходный код
def continually[A](elem: => A): LazyList[A]

Создаёт бесконечный LazyList, содержащий данное выражение элемента (которое вычисляется для каждого вхождения).

Параметры значений
elem

элемент, составляющий результирующий LazyList

Возвращает

LazyList, содержащий бесконечное количество elem

Исходный код
def empty[A]: LazyList[A]

Пустая коллекция

Параметры типов
A

Тип элементов ленивого списка

Исходный код
override def fill[A](n: Int)(elem: => A): LazyList[A]

Создаёт ленивый список, содержащий результаты вычисления элемента заданное количество раз.

Параметры значений
elem

вычисление элемента

n

Количество элементов в ленивом списке.

Возвращает

Ленивый список, содержащий результаты n вычислений elem.

Классы определений IterableFactory

Исходный код
def from[A](coll: IterableOnce[A]): LazyList[A]

Создаёт целевой ленивый список из существующей исходной коллекции.

Параметры типов
A

Тип элементов коллекции

Параметры значений
source

Исходная коллекция

Возвращает

Новый ленивый список с элементами source.

Исходный код
def from(start: Int, step: Int): LazyList[Int]

Создаёт бесконечный LazyList, начинающийся с start и увеличивающийся на шаг step.

Параметры значений
start

Начальное значение LazyList

step

Значение приращения LazyList

Возвращает

LazyList, начинающийся со значения start.

Исходный код
def from(start: Int): LazyList[Int]

Создаёт бесконечный LazyList, начинающийся с start и увеличивающийся на 1.

Параметры значений
start

Начальное значение LazyList

Возвращает

LazyList, начинающийся со значения start.

Исходный код
def iterate[A](start: => A)(f: A => A): LazyList[A]

Бесконечный LazyList, который повторно применяет заданную функцию к начальному значению.

Параметры значений
f

Функция, которая многократно применяется

start

Начальное значение LazyList

Возвращает

LazyList, возвращающий бесконечную последовательность значений start, f(start), f(f(start)), ...

Исходный код
def newBuilder[A]: Builder[A, LazyList[A]]

Билдер, возвращаемый этим методом, оценивает элементы коллекций, добавленных в него, только по мере необходимости.

Параметры типов
A

Тип элементов ленивого списка

Возвращает

Билдер для объектов LazyList.

Исходный код
override def tabulate[A](n: Int)(f: Int => A): LazyList[A]

Создаёт ленивый список, содержащий значения заданной функции над диапазоном целочисленных значений, начиная с 0.

Параметры значений
f

Функция вычисления значений элементов

n

Количество элементов в ленивом списке

Возвращает

Ленивый список, состоящий из элементов f(0), ..., f(n -1)

Классы определений IterableFactory

Исходный код
override def unfold[A, S](init: S)(f: S => Option[(A, S)]): LazyList[A]

Создаёт ленивый список, который использует функцию f для создания элементов типа A и обновления внутреннего состояния типа S.

END_OF_DOCUMENT_MARKER
Параметры типа
A

Тип элементов

S

Тип внутреннего состояния

Параметры значения
f

Вычисляет следующий элемент (или возвращает None для сигнализации об окончании коллекции)

init

Начальное значение состояния

Возвращает

ленивый список, который генерирует элементы с использованием f до тех пор, пока f не вернёт None

Классы определения IterableFactory

Наследованные методы

Исходный код
def apply[A](elems: A*): CC[A]

Создаёт коллекцию с указанными элементами.

Параметры типа
A

тип элементов коллекции

Параметры значения
elems

элементы создаваемой коллекции

Возвращает

новая коллекция с элементами elems

Наследованно от IterableFactory

Исходный код
def fill[A](n1: Int, n2: Int, n3: Int, n4: Int, n5: Int)(elem: => A): CC[CC[CC[CC[CC[A]]]]]

Создаёт пятимерную коллекцию, содержащую результаты вычисления элемента заданное число раз.

Параметры значения
elem

вычисление элемента

n1

количество элементов в 1-м измерении

n2

количество элементов во 2-м измерении

n3

количество элементов в 3-м измерении

n4

количество элементов в 4-м измерении

n5

количество элементов в 5-м измерении

Возвращает

Коллекция, содержащая результаты n1 x n2 x n3 x n4 x n5 вычислений elem.

Наследованно от IterableFactory

Исходный код
def fill[A](n1: Int, n2: Int, n3: Int, n4: Int)(elem: => A): CC[CC[CC[CC[A]]]]

Создаёт четырёхмерную коллекцию, содержащую результаты вычисления элемента заданное число раз.

Параметры значения
elem

вычисление элемента

n1

количество элементов в 1-м измерении

n2

количество элементов во 2-м измерении

n3

количество элементов в 3-м измерении

n4

количество элементов в 4-м измерении

Возвращает

Коллекция, содержащая результаты n1 x n2 x n3 x n4 вычислений elem.

Наследованно от IterableFactory

Исходный код
def fill[A](n1: Int, n2: Int, n3: Int)(elem: => A): CC[CC[CC[A]]]

Создаёт трёхмерную коллекцию, содержащую результаты вычисления элемента заданное число раз.

Параметры значения
elem

вычисление элемента

n1

количество элементов в 1-м измерении

n2

количество элементов во 2-м измерении

n3

количество элементов в 3-м измерении

Возвращает

Коллекция, содержащая результаты n1 x n2 x n3 вычислений elem.

Наследованно от IterableFactory

Исходный код
def fill[A](n1: Int, n2: Int)(elem: => A): CC[CC[A]]

Создаёт двумерную коллекцию, содержащую результаты вычисления элемента заданное число раз.

Параметры значения
elem

вычисление элемента

n1

число элементов в первом измерении

n2

число элементов во втором измерении

Возвращает

Коллекция, содержащая результаты вычислений n1 x n2 для elem.

Унаследовано от IterableFactory

Исходный код
def iterate[A](start: A, len: Int)(f: A => A): CC[A]

Создаёт коллекцию, содержащую повторяемые применения функции к начальному значению.

Параметры значения
f

функция, которая многократно применяется

len

число элементов в коллекции

start

начальное значение коллекции

Возвращает

коллекция со значениями len в последовательности start, f(start), f(f(start)), ...

Унаследовано от IterableFactory

Исходный код
def range[A : Integral](start: A, end: A, step: A): CC[A]

Создаёт коллекцию, содержащую равномерно распределённые значения в некотором целочисленном интервале.

Параметры значения
end

конечное значение коллекции (первое значение, НЕ содержащееся)

start

начальное значение коллекции

step

разность между последовательными элементами коллекции (должна быть положительной или отрицательной)

Возвращает

коллекция со значениями start, start + step, ... до, но не включая end

Унаследовано от IterableFactory

Исходный код
def range[A : Integral](start: A, end: A): CC[A]

Создаёт коллекцию, содержащую последовательность возрастающих целых чисел.

Параметры значения
end

конечное значение коллекции (первое значение, НЕ содержащееся)

start

первый элемент коллекции

Возвращает

коллекция со значениями start, start + 1, ..., end - 1

Унаследовано от IterableFactory

Исходный код
def tabulate[A](n1: Int, n2: Int, n3: Int, n4: Int, n5: Int)(f: (Int, Int, Int, Int, Int) => A): CC[CC[CC[CC[CC[A]]]]]

Создаёт пятимерную коллекцию, содержащую значения заданной функции по диапазонам целочисленных значений, начиная с 0.

Параметры значения
f

Функция, вычисляющая значения элементов

n1

число элементов в первом измерении

n2

число элементов во втором измерении

n3

число элементов в третьем измерении

n4

число элементов в четвёртом измерении

n5

число элементов в пятом измерении

Возвращает

Коллекция, состоящая из элементов f(i1, i2, i3, i4, i5) для 0 <= i1 < n1, 0 <= i2 < n2, 0 <= i3 < n3, 0 <= i4 < n4, и 0 <= i5 < n5.

Унаследовано от IterableFactory

Исходный код
def tabulate[A](n1: Int, n2: Int, n3: Int, n4: Int)(f: (Int, Int, Int, Int) => A): CC[CC[CC[CC[A]]]]

Создаёт четырёхмерную коллекцию, содержащую значения заданной функции по диапазонам целочисленных значений, начиная с 0.

Параметры значения
f

Функция вычисления значений элементов

n1

количество элементов в первом измерении

n2

количество элементов во втором измерении

n3

количество элементов в третьем измерении

n4

количество элементов в четвертом измерении

Возвращает

Коллекция, состоящая из элементов f(i1, i2, i3, i4) для 0 <= i1 < n1, 0 <= i2 < n2, 0 <= i3 < n3 и 0 <= i4 < n4.

Унаследовано от IterableFactory

Исходный код
def tabulate[A](n1: Int, n2: Int, n3: Int)(f: (Int, Int, Int) => A): CC[CC[CC[A]]]

Создаёт трёхмерную коллекцию, содержащую значения заданной функции по диапазонам целочисленных значений, начиная с 0.

Параметры значения
f

Функция вычисления значений элементов

n1

количество элементов в первом измерении

n2

количество элементов во втором измерении

n3

количество элементов в третьем измерении

Возвращает

Коллекция, состоящая из элементов f(i1, i2, i3) для 0 <= i1 < n1, 0 <= i2 < n2 и 0 <= i3 < n3.

Унаследовано от IterableFactory

Исходный код
def tabulate[A](n1: Int, n2: Int)(f: (Int, Int) => A): CC[CC[A]]

Создаёт двумерную коллекцию, содержащую значения заданной функции по диапазонам целочисленных значений, начиная с 0.

Параметры значения
f

Функция вычисления значений элементов

n1

количество элементов в первом измерении

n2

количество элементов во втором измерении

Возвращает

Коллекция, состоящая из элементов f(i1, i2) для 0 <= i1 < n1 и 0 <= i2 < n2.

Унаследовано от IterableFactory

Исходный код
final def unapplySeq[A](x: LazyList[A]): UnapplySeqWrapper[A]

Унаследовано от SeqFactory

Неявные типы

Исходный код
implicit def toDeferrer[A](l: => LazyList[A]): Deferrer[A]

Унаследованные неявные типы

Исходный код
implicit def iterableFactory[A]: Factory[A, CC[A]]

Унаследовано от IterableFactory

© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.2.0/scala/collection/immutable/LazyList$.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API