From 256266dc134e85f7bd1f1415627607c9b541b843 Mon Sep 17 00:00:00 2001 From: Andrew Waterman Date: Wed, 22 Jul 2015 18:40:39 -0700 Subject: Clean up Vec; allow <> on Iterable --- src/main/scala/Core.scala | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/main/scala/Core.scala b/src/main/scala/Core.scala index 32f314d8..4e4a4671 100644 --- a/src/main/scala/Core.scala +++ b/src/main/scala/Core.scala @@ -476,9 +476,12 @@ abstract class Aggregate(dirArg: Direction) extends Data(dirArg) { } class Vec[T <: Data](val elts: Iterable[T], dirArg: Direction = NO_DIR) extends Aggregate(dirArg) with VecLike[T] { - val elt0 = elts.head - val self = new ArrayBuffer[T]() - self ++= elts + private val self = elts.toIndexedSeq + private val elt0 = elts.head + + def <> (that: Iterable[T]): Unit = + this <> Vec(that).asInstanceOf[Data] + override def isReg = elt0.isReg override def isFlip = { val isSubFlip = elt0.isFlip -- cgit v1.2.3