placeholders.foldLeft(PlaceHolder(0,0,0))((acc, p) => PlaceHolder(acc.time + p.time, acc.a + p.a, acc.b + p.b))
or
placeholders.reduce((acc, p) => PlaceHolder(acc.time + p.time, acc.a + p.a, acc.b + p.b))
or you could add a +
operator to PlaceHolder
:
case class PlaceHolder(time: Long, a: Int, b: Int) {
def +(other: PlaceHolder) = PlaceHolder(this.time + other.time, this.a + other.a, this.b + other.b)
}
then you can do:
placeholders.reduce(_ + _)