ReusableBuilder is a marker trait that indicates that a Builder can be reused to build more than one instance of a collection. In particular, calling result() followed by clear() will produce a collection and reset the builder to begin building a new collection of the same type.
In general no method other than clear() may be called after result(). It is up to subclasses to implement and to document other allowed sequences of operations (e.g. calling other methods after result() in order to obtain different snapshots of a collection under construction).
| Type parameters |
|
|---|---|
| Supertypes | |
| Known subtypes | 17 types |
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.
| Definition Classes | Builder -> Clearable |
|---|
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.
| Returns | a collection containing the elements added to this builder. |
|---|---|
| Definition Classes | Builder |
Alias for addAll
| Inherited from | Growable |
|---|
Alias for addOne
| Inherited from | Growable |
|---|
Adds all elements produced by an IterableOnce to this growable collection.
| Value parameters |
|
|---|---|
| Returns | the growable collection itself. |
| Inherited from | Growable |
Adds a single element to this growable collection.
| Value parameters |
|
|---|---|
| Returns | the growable collection itself |
| Inherited from | Growable |
| Returns | The number of elements in the collection under construction, if it can be cheaply computed, -1 otherwise. The default implementation always returns -1. |
|---|---|
| Inherited from | Growable |
A builder resulting from this builder my mapping the result using f.
| Inherited from | Builder |
|---|
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 |
|
|---|---|
| Inherited from | Builder |
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 |
|
|---|---|
| Inherited from | Builder |
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 |
|
|---|---|
| Inherited from | Builder |
© 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/ReusableBuilder.html