protected void decompileOptions(MessageOrBuilder options) throws IOException {
for (Map.Entry<FieldDescriptor,Object> entry : options.getAllFields().entrySet()) {
FieldDescriptor field = entry.getKey();
Object value = entry.getValue();
String fieldName = field.getName();
if (field.isExtension()) {
fieldName = "(" + fieldName + ")";
}
if (field.getType() == FieldDescriptor.Type.MESSAGE) {
for (Map.Entry<FieldDescriptor,Object> subentry : ((MessageOrBuilder)value).getAllFields().entrySet()) {
FieldDescriptor subfield = subentry.getKey();
Object subvalue = subentry.getValue();
indentedFormat("option %s.%s = %s;", fieldName, subfield.getName(), literal(subvalue, subfield.getType()));
}
}
else {
indentedFormat("option %s = %s;", fieldName, literal(value, field.getType()));
}
}
}
ProtobufDecompiler.java 文件源码
java
阅读 31
收藏 0
点赞 0
评论 0
项目:sql-layer
作者:
评论列表
文章目录