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.
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.