LinePathBuilder

ostrat.geom.LinePathBuilder
trait LinePathBuilder[B, BB <: LinePathLike[B]] extends BuilderSeqLikeMap[B, BB]

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

Graph
Supertypes
trait BuilderSeqLikeMap[B, BB]
trait BuilderSeqLike[BB]
trait BuilderCollMap[B, BB]
trait BuilderColl[BB]
class Object
trait Matchable
class Any
Show all
Known subtypes
trait LinePathBuilderValueN[B, BB]
trait LinePathIntNMapBuilder[B, BB]
trait LinePathInt2MapBuilder[B, BB]
trait LinePathMapBuilderDblN[B, BB]
trait LinePathDbl2Builder[B, BB]
trait LinePathDbl3MapBuilder[B, BB]
Show all

Members list

Type members

Inherited types

type BuffT <: BuffSequ[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:
BuilderSeqLikeMap

Value members

Inherited methods

def buffGrow(buff: BuffT, newElem: 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:
BuilderCollMap
def buffGrowIter(buff: BuffT, newElems: Iterable[B]): Unit

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

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

Attributes

Inherited from:
BuilderSeqLikeMap
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:
BuilderColl
override def empty: BB

Creates a new empty SeqLike of type BB.

Creates a new empty SeqLike of type BB.

Attributes

Definition Classes
Inherited from:
BuilderSeqLikeMap
def indexSet(seqLike: BB, index: Int, newElem: 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:
BuilderSeqLikeMap
def newBuff(length: Int): BuffT

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

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

Attributes

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

Creates a new uninitialised SeqLike of type BB of the given length.

Creates a new uninitialised SeqLike of type BB of the given length.

Attributes

Inherited from:
BuilderSeqLikeMap