ArrMapBuilder

ostrat.ArrMapBuilder
See theArrMapBuilder companion object
trait ArrMapBuilder[B, ArrB <: Arr[B]] extends SeqLikeMapBuilder[B, ArrB]

A type class for the building of efficient compact Immutable Arrays. Instances for this type class for classes / traits you control should go in the companion object of B not the companion object of BB. This is different from the related ArrBinder[BB] type class where instance should go into the BB companion object. The type parameter is named B rather than A, because normally this will be found by an implicit in the context of a function from A => B or A => M[B]. The methods of this trait mutate and therefore must be used with care. Where ever possible they should not be used directly by end users.

Attributes

Companion:
object
Graph
Supertypes
trait SeqLikeMapBuilder[B, ArrB]
class Object
trait Matchable
class Any
Known subtypes
object AnyArrBuild.type
class ArrTBuild[B]
trait ArrayDblArrMapBuilder[A, ArrT]
trait ArrayIntArrBuilder[A, ArrT]
object BooleanArrBuilder.type
object DblArrBuilder.type
object FloatArrBuilder.type
object IntArrBuilder.type
object LongArrBuilder.type
trait PairArrMapBuilder[B1, ArrB1, B2, B, ArrB]
trait DblNPairArrMapBuilder[B1, ArrB1, B2, B, ArrB]
trait Dbl2PairArrMapBuilder[B1, ArrB1, B2, B, ArrB]
trait Dbl3PairArrMapBuilder[B1, ArrB1, B2, B, ArrB]
trait Dbl4PairArrMapBuilder[B1, ArrB1, B2, B, ArrB]
trait IntNPairArrMapBuilder[B1, ArrB1, B2, B, ArrB]
trait Int2PairArrMapBuilder[B1, ArrB1, B2, B, ArrB]
trait Int3PairArrMapBuilder[B1, ArrB1, B2, B, ArrB]
trait Int4PairArrMapBuilder[B1, ArrB1, B2, B, ArrB]
trait SeqLikePairArrBuilder[B1E, B1, ArrB1, B2, B, ArrB]
trait SeqLikeDblNPairArrBuilder[B1E, B1, ArrB1, B2, B, ArrB]
trait PolygonLikeDblNPairArrBuilder[B1V, B1, ArrB1, A2, B, ArrB]
trait SeqLikeIntNPairArrBuilder[B1E, B1, ArrB1, B2, B, ArrB]
trait PolygonLikePairArrBuilder[B1V, B1, ArrB1, B2, B, ArrB]
trait PolygonIntsLikePairArrBuilder[B1V, B1, ArrB1, A2, B, ArrB]
trait LineSegLikePairArrBuilder[B1V, B1, ArrB1, B2, B, ArrB]
object StringArrBuilder.type
trait ValueNArrMapBuilder[B, ArrB]
trait DblNArrMapBuilder[B, ArrB]
trait Dbl2ArrMapBuilder[B, ArrB]
trait Dbl3ArrMapBuilder[B, ArrB]
trait Dbl4ArrMapBuilder[B, ArrB]
trait Dbl5ArrMapBuilder[B, ArrB]
trait Dbl6ArrMapBuilder[B, ArrB]
trait IntNArrMapBuilder[B, ArrB]
trait Int1ArrMapBuilder[A, ArrT]
trait Int2ArrMapBuilder[B, ArrB]
trait Int3ArrMapBuilder[B, ArrB]
trait Int4ArrMapBuilder[B, ArrB]

Members list

Concise view

Type members

Inherited types

type BuffT <: Buff[B]

BuffT can be inbuilt Jvm type like ArrayBuffer[Int] for B = Int and BB = Ints, or it can be a compile time wrapped Arraybuffer inheriting from BuffProdHomo.

BuffT can be inbuilt Jvm type like ArrayBuffer[Int] for B = Int and BB = Ints, or it can be a compile time wrapped Arraybuffer inheriting from BuffProdHomo.

Attributes

Inherited from:
SeqLikeMapBuilder

Value members

Concrete methods

def buffContains(buff: BuffT, newElem: B): Boolean
def iterMap[A](inp: Iterable[A], f: A => B): ArrB

Inherited methods

def buffGrow(buff: BuffT, value: B): Unit

A mutable operation that extends the ArrayBuffer by a single element of type B.

A mutable operation that extends the ArrayBuffer by a single element of type B.

Attributes

Inherited from:
SeqLikeMapBuilder
def buffGrowIter(buff: BuffT, values: Iterable[B]): Unit

A mutable operation that extends the ArrayBuffer with the elements of the Iterable operand.

A mutable operation that extends the ArrayBuffer with the elements of the Iterable operand.

Attributes

Inherited from:
SeqLikeMapBuilder
def buffToSeqLike(buff: BuffT): BB

converts a the buffer type to the target compound class.

converts a the buffer type to the target compound class.

Attributes

Inherited from:
SeqLikeCommonBuilder
def indexSet(seqLike: ArrB, index: Int, value: B): Unit

Sets the value in a SeqLike of type BB. This is usually used in conjunction with uninitialised method.

Sets the value in a SeqLike of type BB. This is usually used in conjunction with uninitialised method.

Attributes

Inherited from:
SeqLikeMapBuilder
def newBuff(length: Int): BuffT

Creates a new empty Buff with a default capacity of 4 elements.

Creates a new empty Buff with a default capacity of 4 elements.

Attributes

Inherited from:
SeqLikeCommonBuilder
def uninitialised(length: Int): BB

Creates a new uninitialised Arr of type ArrB of the given length.

Creates a new uninitialised Arr of type ArrB of the given length.

Attributes

Inherited from:
SeqLikeMapBuilder