[英]Cannot addAll a sequence of instances of a protobuf auto-generated class
我有兩個protobuf消息,其中
message A {
...
}
message B {
repeated A hoge = 1;
}
和protoc生成Java代碼:
public Builder addAllA(java.lang.Iterable<? extends A> values) {
...
}
但是Scala代碼導致類型不匹配,預期:Iterable [_ <:A],實際:Iterable [A]
B.newBuilder().addAllA(A.newBuilder().build().toIterable)
我怎樣才能添加AllAll?
對於我的簡化示例,這是有效的,所以至少你可以嘗試:
import scala.collection.JavaConverters._
B.newBuilder().addAllA(A.newBuilder().build().toIterable.asJava)
從我的PoV出現錯誤是因為java Iterable和scala協方差類型檢查的不變性,但不確定。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.