ImmutableBuilder

scala.collection.mutable.ImmutableBuilder
abstract class ImmutableBuilder[-A, C <: IterableOnce[_]](empty: C) extends ReusableBuilder[A, C]

Reusable builder for immutable collections

Attributes

Source
ImmutableBuilder.scala
Graph
Supertypes
trait ReusableBuilder[A, C]
trait Builder[A, C]
trait Growable[A]
trait Clearable
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

def clear(): Unit

Clears the contents of this builder.

Clears the contents of this builder. After execution of this method, the builder will contain no elements.

If executed immediately after a call to result(), this allows a new instance of the same type of collection to be built.

Attributes

Source
ImmutableBuilder.scala
override def knownSize: Int

Attributes

Returns

The number of elements in the collection under construction, if it can be cheaply computed, -1 otherwise. The default implementation always returns -1.

Definition Classes
Source
ImmutableBuilder.scala
def result(): C

Produces a collection from the added elements.

Produces a collection from the added elements.

After a call to result, the behavior of all other methods is undefined save for clear(). If clear() is called, then the builder is reset and may be used to build another instance.

Attributes

Returns

a collection containing the elements added to this builder.

Source
ImmutableBuilder.scala

Inherited methods

final def ++=(xs: IterableOnce[A]): Growable.this.type

Alias for addAll

Alias for addAll

Attributes

Inherited from:
Growable
Source
Growable.scala
final def +=(elem: A): Growable.this.type

Alias for addOne

Alias for addOne

Attributes

Inherited from:
Growable
Source
Growable.scala
def addAll(xs: IterableOnce[A]): Growable.this.type

Adds all elements produced by an IterableOnce to this growable collection.

Adds all elements produced by an IterableOnce to this growable collection.

Value parameters

xs

the IterableOnce producing the elements to add.

Attributes

Returns

the growable collection itself.

Inherited from:
Growable
Source
Growable.scala
def addOne(elem: A): Growable.this.type

Adds a single element to this growable collection.

Adds a single element to this growable collection.

Value parameters

elem

the element to add.

Attributes

Returns

the growable collection itself

Inherited from:
Growable
Source
Growable.scala
def mapResult[NewTo](f: C => NewTo): Builder[A, NewTo]

A builder resulting from this builder my mapping the result using f.

A builder resulting from this builder my mapping the result using f.

Attributes

Inherited from:
Builder
Source
Builder.scala
final def sizeHint(coll: IterableOnce[_], delta: Int): Unit

Gives a hint that one expects the result of this builder to have the same size as the given collection, plus some delta.

Gives a hint that one expects the result of this builder to have the same size as the given collection, plus some delta. This will provide a hint only if the collection has a known size Some builder classes will optimize their representation based on the hint. However, builder implementations are still required to work correctly even if the hint is wrong, i.e. a different number of elements is added.

Value parameters

coll

the collection which serves as a hint for the result's size.

delta

a correction to add to the coll.size to produce the size hint.

Attributes

Inherited from:
Builder
Source
Builder.scala
def sizeHint(size: Int): Unit

Gives a hint how many elements are expected to be added when the next result is called.

Gives a hint how many elements are expected to be added when the next result is called. Some builder classes will optimize their representation based on the hint. However, builder implementations are still required to work correctly even if the hint is wrong, i.e. a different number of elements is added.

Value parameters

size

the hint how many elements will be added.

Attributes

Inherited from:
Builder
Source
Builder.scala
final def sizeHintBounded(size: Int, boundingColl: Iterable[_]): Unit

Gives a hint how many elements are expected to be added when the next result is called, together with an upper bound given by the size of some other collection.

Gives a hint how many elements are expected to be added when the next result is called, together with an upper bound given by the size of some other collection. Some builder classes will optimize their representation based on the hint. However, builder implementations are still required to work correctly even if the hint is wrong, i.e. a different number of elements is added.

Value parameters

boundingColl

the bounding collection. If it is an IndexedSeqLike, then sizes larger than collection's size are reduced.

size

the hint how many elements will be added.

Attributes

Inherited from:
Builder
Source
Builder.scala

Deprecated and Inherited methods

final def +=(elem1: A, elem2: A, elems: A*): Growable.this.type

Adds two or more elements to this growable collection.

Adds two or more elements to this growable collection.

Value parameters

elem1

the first element to add.

elem2

the second element to add.

elems

the remaining elements to add.

Attributes

Returns

the growable collection itself

Deprecated
true
Inherited from:
Growable
Source
Growable.scala

Concrete fields

protected var elems: C

Attributes

Source
ImmutableBuilder.scala