aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/scalam/collection/DenseVectorBuilder.scala
blob: 84501bdb2805533df0895216f219d45b14e7798d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
package scalam.collection

import scala.collection.mutable.Builder
import scala.collection.mutable.ArrayBuffer
import breeze.linalg.DenseVector

class DenseVectorBuilder[Elem: ClassManifest] extends Builder[Elem, DenseVector[Elem]] {
  private val buffer = new ArrayBuffer[Elem]
  
  override def +=(elem: Elem) = {buffer += elem; this}
  override def clear() = buffer.clear
  override def result() = {
   val a = buffer.mapResult(_.toArray).result
   DenseVector(a)
  }
}