implicit def pfIterable[T, C[_]]()

in protobuf/src/main/scala/magnolify/protobuf/ProtobufType.scala [263:280]


  implicit def pfIterable[T, C[_]](implicit
    f: ProtobufField[T],
    ti: C[T] => Iterable[T],
    fc: FactoryCompat[T, C[T]]
  ): ProtobufField[C[T]] =
    new Aux[C[T], ju.List[f.FromT], ju.List[f.ToT]] {
      override val default: Option[C[T]] = Some(fc.newBuilder.result())
      override def from(v: ju.List[f.FromT])(cm: CaseMapper): C[T] = {
        val b = fc.newBuilder
        if (v != null) {
          b ++= v.asScala.iterator.map(f.from(_)(cm))
        }
        b.result()
      }

      override def to(v: C[T], b: Message.Builder)(cm: CaseMapper): ju.List[f.ToT] =
        if (v.isEmpty) null else v.iterator.map(f.to(_, b)(cm)).toList.asJava
    }