Spec-Zone.ru › Scala 3.2

Класс ImmutableBuilder.ImmutableBuilder

Исходный код

абстрактный класс ImmutableBuilder[-A, C <: IterableOnce[_]](empty: C) extends ReusableBuilder[A, C]

Переиспользуемый билдер для неизменяемых коллекций

Супертипы
Трейт ReusableBuilder[A, C]
Трейт Builder[A, C]
Трейт Growable[A]
Трейт Clearable
Класс Object
Трейт Matchable
Класс Any

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

Исходный код
def clear(): Unit

Очищает содержимое этого билдера. После выполнения этого метода билдер не будет содержать элементов.

Если выполняется сразу после вызова создания нового экземпляра того же типа коллекции, это позволяет создать новый экземпляр того же типа коллекции.

Исходный код
override def knownSize: Int

Возвращает

Количество элементов в строящейся коллекции, если его можно вычислить без особых затрат, иначе -1. Стандартная реализация всегда возвращает -1.

Определяющие классы Growable

Исходный код
def result(): C

Создает коллекцию из добавленных элементов.

После вызова создания коллекции, поведение всех других методов не определено, за исключением инициализации нового билдера. Если вызывается метод очистки, билдер сбрасывается и может использоваться для построения другого экземпляра.

Возвращает

коллекция, содержащая элементы, добавленные в этот билдер.

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

Исходный код
final def ++=(xs: IterableOnce[A]): Growable.this.type

Псевдоним для добавления элементов из итерируемого объекта.

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

Исходный код
final def +=(elem: A): Growable.this.type

Псевдоним для добавления элемента.

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

Исходный код
def addAll(xs: IterableOnce[A]): Growable.this.type

Добавляет все элементы из переданного IterableOnce в эту изменяемую коллекцию.

Параметры
xs

IterableOnce, генерирующая добавляемые элементы.

Возвращает

изменяемая коллекция.

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

Исходный код
def addOne(elem: A): Growable.this.type

Добавляет один элемент в эту изменяемую коллекцию.

Параметры
elem

добавляемый элемент.

Возвращает

изменяемая коллекция.

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

Исходный код
def mapResult[NewTo](f: C => NewTo): Builder[A, NewTo]

Билдер, полученный из этого билдера путём применения функции к результату.

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

Исходный код
final def sizeHint(coll: IterableOnce[_], delta: Int): Unit

Указание о том, что ожидается, что размер результата этого билдера будет иметь такой же размер, как у данного набора данных, плюс некоторая величина смещения. Это указание будет использовано только в случае, если набор данных имеет известный размер. Некоторые классы билдеров будут оптимизировать свою структуру на основе этого указания. Однако реализации билдеров всё равно должны корректно работать, даже если указание является неверным.

Параметры
coll

набор данных, который служит подсказкой для размера результата.

delta

поправка, которая добавляется к размеру набора данных для получения размера.

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

Исходный код
def sizeHint(size: Int): Unit

Указание о том, сколько элементов ожидается добавить. Некоторые классы билдеров оптимизируют свою структуру на основе этого указания. Однако реализации билдеров всё равно должны корректно работать, даже если указание является неверным.

Параметры
size

указание о том, сколько элементов будет добавлено.

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

Исходный код
final def sizeHintBounded(size: Int, boundingColl: Iterable[_]): Unit

Указание о том, сколько элементов ожидается добавить, вместе с верхним пределом, задаваемым размером другого набора данных. Некоторые классы билдеров оптимизируют свою структуру на основе этого указания. Однако реализации билдеров всё равно должны корректно работать, даже если указание является неверным.

Параметры
boundingColl

ограничивающий набор данных. Если это IndexedSeqLike, то размеры, превышающие размер набора данных, уменьшаются.

size

указание о том, сколько элементов будет добавлено.

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

Конкретные поля

Исходный код
protected var elems: C

© 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/mutable/ImmutableBuilder.html

Spec-Zone.ru

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