@Override public void encode(ProtoWriter writer, FieldDescriptorProto value) throws IOException { if (value.name != null) ProtoAdapter.STRING.encodeTagged(writer, 1, value.name); if (value.doc != null) ProtoAdapter.STRING.encodeTagged(writer, 9, value.doc); if (value.number != null) ProtoAdapter.INT32.encodeTagged(writer, 3, value.number); if (value.label != null) Label.ADAPTER.encodeTagged(writer, 4, value.label); if (value.type != null) Type.ADAPTER.encodeTagged(writer, 5, value.type); if (value.type_name != null) ProtoAdapter.STRING.encodeTagged(writer, 6, value.type_name); if (value.extendee != null) ProtoAdapter.STRING.encodeTagged(writer, 2, value.extendee); if (value.default_value != null) ProtoAdapter.STRING.encodeTagged(writer, 7, value.default_value); if (value.options != null) FieldOptions.ADAPTER.encodeTagged(writer, 8, value.options); writer.writeBytes(value.unknownFields()); }