我有这样的消息:
import "data.proto"
message topMessage {
optional string foo = 1;
message nestedMessage {
required int index = 1;
required data entry = 2;
}
repeated map = 2;
}
我想做的是让index
根据entry
设置自己。 每条data
消息都有一个用于此目的的 int 字段。 现在我打电话给setEntry(someData)
和setIndex(someData.getInt())
. 能够设置entry
以便每当我打电话时它都会自动设置index
setEntry()
,那就太好了。 这可能吗?
您没有指定使用哪种语言。也没有足够的信息来重现您的问题。话虽如此,作为一般规则,不,不能在您的 .proto 文件中指定。您也许可以覆盖代码中的内容,以便调用类似setFullEntry(someData)
的内容,并且该方法同时调用setEntry
和setIndex
,但这取决于您用于实际逻辑的语言。