diff --git a/protobuf/CHANGELOG.md b/protobuf/CHANGELOG.md index 186f72675..32a41e693 100644 --- a/protobuf/CHANGELOG.md +++ b/protobuf/CHANGELOG.md @@ -25,9 +25,20 @@ To migrate, use `PbMap.unmodifiable(map.keyFieldType, map.valueFieldType)` instead of `PbMap.unmodifiable(map)`. ([#902]) +* Messages deserialized from JSON now generate the unknown fields when + serialized as JSON. + + Note that, as before, unknown fields in JSON messages are not stored in the + `unknownFields` of the message. They are only used by the JSON serializers to + support roundtripping. + + ([#49], [#918]) + [#738]: https://github.com/google/protobuf.dart/issues/738 [#896]: https://github.com/google/protobuf.dart/issues/896 [#902]: https://github.com/google/protobuf.dart/issues/902 +[#49]: https://github.com/google/protobuf.dart/issues/49 +[#918]: https://github.com/google/protobuf.dart/pulls/918 ## 3.1.0 diff --git a/protobuf/lib/meta.dart b/protobuf/lib/meta.dart index 7f432638e..9fe7dd005 100644 --- a/protobuf/lib/meta.dart +++ b/protobuf/lib/meta.dart @@ -56,6 +56,7 @@ const GeneratedMessage_reservedNames = [ 'writeToCodedBufferWriter', 'writeToJson', 'writeToJsonMap', + r'$_clearField', r'$_ensure', r'$_get', r'$_getI64', @@ -72,6 +73,7 @@ const GeneratedMessage_reservedNames = [ r'$_setBool', r'$_setBytes', r'$_setDouble', + r'$_setField', r'$_setFloat', r'$_setInt64', r'$_setSignedInt32', diff --git a/protobuf/lib/src/protobuf/field_set.dart b/protobuf/lib/src/protobuf/field_set.dart index 89930dee8..bd9799116 100644 --- a/protobuf/lib/src/protobuf/field_set.dart +++ b/protobuf/lib/src/protobuf/field_set.dart @@ -33,6 +33,9 @@ class _FieldSet { /// Contains all the unknown fields, or null if there aren't any. UnknownFieldSet? _unknownFields; + /// Contains unknown data for messages deserialized from json. + Map? _unknownJsonData; + /// Encodes whether `this` has been frozen, and if so, also memoizes the /// hash code. /// @@ -105,6 +108,7 @@ class _FieldSet { if (_isReadOnly) return UnknownFieldSet.emptyUnknownFieldSet; _unknownFields = UnknownFieldSet(); } + _unknownJsonData = null; return _unknownFields!; } @@ -531,6 +535,8 @@ class _FieldSet { if (_unknownFields != o._unknownFields) return false; } + // Ignore _unknownJsonData to preserve existing equality behavior. + return true; } @@ -597,6 +603,8 @@ class _FieldSet { // Hash with unknown fields. hash = _HashUtils._combine(hash, _unknownFields?.hashCode ?? 0); + // Ignore _unknownJsonData to preserve existing hashing behavior. + if (_isReadOnly) { _frozenState = hash; } @@ -682,6 +690,11 @@ class _FieldSet { } else { out.write(UnknownFieldSet().toString()); } + + final unknownJsonData = _unknownJsonData; + if (unknownJsonData != null) { + out.write(unknownJsonData.toString()); + } } /// Merges the contents of the [other] into this message. @@ -713,6 +726,15 @@ class _FieldSet { if (otherUnknownFields != null) { _ensureUnknownFields().mergeFromUnknownFieldSet(otherUnknownFields); } + + final otherUnknownJsonData = other._unknownJsonData; + if (otherUnknownJsonData != null) { + final newUnknownJsonData = + Map.from(_unknownJsonData ?? {}); + otherUnknownJsonData + .forEach((key, value) => newUnknownJsonData[key] = value); + _unknownJsonData = newUnknownJsonData.isEmpty ? null : newUnknownJsonData; + } } void _mergeField(FieldInfo otherFi, fieldValue, {required bool isExtension}) { @@ -868,6 +890,11 @@ class _FieldSet { _ensureUnknownFields()._fields.addAll(originalUnknownFields._fields); } + final unknownJsonData = original._unknownJsonData; + if (unknownJsonData != null) { + _unknownJsonData = Map.from(unknownJsonData); + } + _oneofCases?.addAll(original._oneofCases!); } } diff --git a/protobuf/lib/src/protobuf/generated_message.dart b/protobuf/lib/src/protobuf/generated_message.dart index d34dac4ad..5a0b51cea 100644 --- a/protobuf/lib/src/protobuf/generated_message.dart +++ b/protobuf/lib/src/protobuf/generated_message.dart @@ -173,6 +173,10 @@ abstract class GeneratedMessage { } /// Serialize the message as the protobuf binary format. + /// + /// Unknown field data, data for which there is no metadata for the associated + /// field, will only be included if this message was deserialized from the + /// same wire format. Uint8List writeToBuffer() { final out = CodedBufferWriter(); writeToCodedBufferWriter(out); @@ -211,6 +215,10 @@ abstract class GeneratedMessage { /// Returns the JSON encoding of this message as a Dart [Map]. /// /// The encoding is described in [GeneratedMessage.writeToJson]. + /// + /// Unknown field data, data for which there is no metadata for the associated + /// field, will only be included if this message was deserialized from the + /// same wire format. Map writeToJsonMap() => _writeToJsonMap(_fieldSet); /// Returns a JSON string that encodes this message. @@ -226,6 +234,10 @@ abstract class GeneratedMessage { /// represented as their integer value. /// /// For the proto3 JSON format use: [toProto3Json]. + /// + /// Unknown field data, data for which there is no metadata for the associated + /// field, will only be included if this message was deserialized from the + /// same wire format. String writeToJson() => jsonEncode(writeToJsonMap()); /// Returns an Object representing Proto3 JSON serialization of `this`. @@ -241,6 +253,9 @@ abstract class GeneratedMessage { /// The [typeRegistry] is be used for encoding `Any` messages. If an `Any` /// message encoding a type not in [typeRegistry] is encountered, an /// error is thrown. + /// + /// Unknown field data, data for which there is no metadata for the associated + /// field, will not be included. Object? toProto3Json( {TypeRegistry typeRegistry = const TypeRegistry.empty()}) => _writeToProto3Json(_fieldSet, typeRegistry); @@ -509,6 +524,17 @@ abstract class GeneratedMessage { /// @nodoc void $_setInt64(int index, Int64 value) => _fieldSet._$set(index, value); + /// For generated code only. Separate from [setField] to distinguish + /// reflective accesses. + /// @nodoc + void $_setField(int tagNumber, Object value) => + _fieldSet._setField(tagNumber, value); + + /// For generated code only. Separate from [clearField] to distinguish + /// reflective accesses. + /// @nodoc + void $_clearField(int tagNumber) => _fieldSet._clearField(tagNumber); + // Support for generating a read-only default singleton instance. static final Map> diff --git a/protobuf/lib/src/protobuf/json.dart b/protobuf/lib/src/protobuf/json.dart index a59d2ca50..1184fa633 100644 --- a/protobuf/lib/src/protobuf/json.dart +++ b/protobuf/lib/src/protobuf/json.dart @@ -89,6 +89,12 @@ Map _writeToJsonMap(_FieldSet fs) { result['$tagNumber'] = convertToMap(value, fi.type); } } + final unknownJsonData = fs._unknownJsonData; + if (unknownJsonData != null) { + unknownJsonData.forEach((key, value) { + result[key] = value; + }); + } return result; } @@ -102,9 +108,11 @@ void _mergeFromJsonMap( for (final key in keys) { var fi = meta.byTagAsString[key]; if (fi == null) { - if (registry == null) continue; // Unknown tag; skip - fi = registry.getExtension(fs._messageName, int.parse(key)); - if (fi == null) continue; // Unknown tag; skip + fi = registry?.getExtension(fs._messageName, int.parse(key)); + if (fi == null) { + (fs._unknownJsonData ??= {})[key] = json[key]; + continue; + } } if (fi.isMapField) { _appendJsonMap( diff --git a/protobuf/test/json_test.dart b/protobuf/test/json_test.dart index e67003896..11005d072 100644 --- a/protobuf/test/json_test.dart +++ b/protobuf/test/json_test.dart @@ -87,7 +87,7 @@ void main() { checkJsonMap(m); }); - test('testMergeFromJson', () { + test('testWriteToJsonMap', () { final t = T(); t.mergeFromJson('''{"1": 123, "2": "hello"}'''); checkMessage(t); @@ -118,13 +118,21 @@ void main() { final decoded = T()..mergeFromJsonMap(encoded); expect(decoded.int64, value); }); + + test('testJsonMapWithUnknown', () { + final m = example.writeToJsonMap(); + m['9999'] = 'world'; + final t = T()..mergeFromJsonMap(m); + checkJsonMap(t.writeToJsonMap(), unknownFields: {'9999': 'world'}); + }); } -void checkJsonMap(Map m) { - expect(m.length, 3); +void checkJsonMap(Map m, {Map? unknownFields}) { + expect(m.length, 3 + (unknownFields?.length ?? 0)); expect(m['1'], 123); expect(m['2'], 'hello'); expect(m['4'], [1, 2, 3]); + unknownFields?.forEach((k, v) => expect(m[k], v)); } void checkMessage(T t) { diff --git a/protoc_plugin/lib/src/generated/dart_options.pb.dart b/protoc_plugin/lib/src/generated/dart_options.pb.dart index c1119da25..f045820bd 100644 --- a/protoc_plugin/lib/src/generated/dart_options.pb.dart +++ b/protoc_plugin/lib/src/generated/dart_options.pb.dart @@ -82,7 +82,7 @@ class DartMixin extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasName() => $_has(0); @$pb.TagNumber(1) - void clearName() => clearField(1); + void clearName() => $_clearField(1); /// A URI pointing to the Dart library that defines the mixin. /// The generated Dart code will use this in an import statement. @@ -96,7 +96,7 @@ class DartMixin extends $pb.GeneratedMessage { @$pb.TagNumber(2) $core.bool hasImportFrom() => $_has(1); @$pb.TagNumber(2) - void clearImportFrom() => clearField(2); + void clearImportFrom() => $_clearField(2); /// The name of another mixin to be applied ahead of this one. /// The generated class for the message will inherit from all mixins @@ -111,7 +111,7 @@ class DartMixin extends $pb.GeneratedMessage { @$pb.TagNumber(3) $core.bool hasParent() => $_has(2); @$pb.TagNumber(3) - void clearParent() => clearField(3); + void clearParent() => $_clearField(3); } /// Defines additional Dart imports to be used with messages in this file. diff --git a/protoc_plugin/lib/src/generated/descriptor.pb.dart b/protoc_plugin/lib/src/generated/descriptor.pb.dart index 11ccb6fc8..d367d33e5 100644 --- a/protoc_plugin/lib/src/generated/descriptor.pb.dart +++ b/protoc_plugin/lib/src/generated/descriptor.pb.dart @@ -200,7 +200,7 @@ class FileDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasName() => $_has(0); @$pb.TagNumber(1) - void clearName() => clearField(1); + void clearName() => $_clearField(1); @$pb.TagNumber(2) $core.String get package => $_getSZ(1); @@ -212,7 +212,7 @@ class FileDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(2) $core.bool hasPackage() => $_has(1); @$pb.TagNumber(2) - void clearPackage() => clearField(2); + void clearPackage() => $_clearField(2); /// Names of files imported by this file. @$pb.TagNumber(3) @@ -235,13 +235,13 @@ class FileDescriptorProto extends $pb.GeneratedMessage { FileOptions get options => $_getN(7); @$pb.TagNumber(8) set options(FileOptions v) { - setField(8, v); + $_setField(8, v); } @$pb.TagNumber(8) $core.bool hasOptions() => $_has(7); @$pb.TagNumber(8) - void clearOptions() => clearField(8); + void clearOptions() => $_clearField(8); @$pb.TagNumber(8) FileOptions ensureOptions() => $_ensure(7); @@ -253,13 +253,13 @@ class FileDescriptorProto extends $pb.GeneratedMessage { SourceCodeInfo get sourceCodeInfo => $_getN(8); @$pb.TagNumber(9) set sourceCodeInfo(SourceCodeInfo v) { - setField(9, v); + $_setField(9, v); } @$pb.TagNumber(9) $core.bool hasSourceCodeInfo() => $_has(8); @$pb.TagNumber(9) - void clearSourceCodeInfo() => clearField(9); + void clearSourceCodeInfo() => $_clearField(9); @$pb.TagNumber(9) SourceCodeInfo ensureSourceCodeInfo() => $_ensure(8); @@ -284,7 +284,7 @@ class FileDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(12) $core.bool hasSyntax() => $_has(11); @$pb.TagNumber(12) - void clearSyntax() => clearField(12); + void clearSyntax() => $_clearField(12); } class DescriptorProto_ExtensionRange extends $pb.GeneratedMessage { @@ -360,7 +360,7 @@ class DescriptorProto_ExtensionRange extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasStart() => $_has(0); @$pb.TagNumber(1) - void clearStart() => clearField(1); + void clearStart() => $_clearField(1); @$pb.TagNumber(2) $core.int get end => $_getIZ(1); @@ -372,19 +372,19 @@ class DescriptorProto_ExtensionRange extends $pb.GeneratedMessage { @$pb.TagNumber(2) $core.bool hasEnd() => $_has(1); @$pb.TagNumber(2) - void clearEnd() => clearField(2); + void clearEnd() => $_clearField(2); @$pb.TagNumber(3) ExtensionRangeOptions get options => $_getN(2); @$pb.TagNumber(3) set options(ExtensionRangeOptions v) { - setField(3, v); + $_setField(3, v); } @$pb.TagNumber(3) $core.bool hasOptions() => $_has(2); @$pb.TagNumber(3) - void clearOptions() => clearField(3); + void clearOptions() => $_clearField(3); @$pb.TagNumber(3) ExtensionRangeOptions ensureOptions() => $_ensure(2); } @@ -460,7 +460,7 @@ class DescriptorProto_ReservedRange extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasStart() => $_has(0); @$pb.TagNumber(1) - void clearStart() => clearField(1); + void clearStart() => $_clearField(1); @$pb.TagNumber(2) $core.int get end => $_getIZ(1); @@ -472,7 +472,7 @@ class DescriptorProto_ReservedRange extends $pb.GeneratedMessage { @$pb.TagNumber(2) $core.bool hasEnd() => $_has(1); @$pb.TagNumber(2) - void clearEnd() => clearField(2); + void clearEnd() => $_clearField(2); } /// Describes a message type. @@ -594,7 +594,7 @@ class DescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasName() => $_has(0); @$pb.TagNumber(1) - void clearName() => clearField(1); + void clearName() => $_clearField(1); @$pb.TagNumber(2) $core.List get field => $_getList(1); @@ -615,13 +615,13 @@ class DescriptorProto extends $pb.GeneratedMessage { MessageOptions get options => $_getN(6); @$pb.TagNumber(7) set options(MessageOptions v) { - setField(7, v); + $_setField(7, v); } @$pb.TagNumber(7) $core.bool hasOptions() => $_has(6); @$pb.TagNumber(7) - void clearOptions() => clearField(7); + void clearOptions() => $_clearField(7); @$pb.TagNumber(7) MessageOptions ensureOptions() => $_ensure(6); @@ -814,7 +814,7 @@ class FieldDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasName() => $_has(0); @$pb.TagNumber(1) - void clearName() => clearField(1); + void clearName() => $_clearField(1); /// For extensions, this is the name of the type being extended. It is /// resolved in the same manner as type_name. @@ -828,7 +828,7 @@ class FieldDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(2) $core.bool hasExtendee() => $_has(1); @$pb.TagNumber(2) - void clearExtendee() => clearField(2); + void clearExtendee() => $_clearField(2); @$pb.TagNumber(3) $core.int get number => $_getIZ(2); @@ -840,19 +840,19 @@ class FieldDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(3) $core.bool hasNumber() => $_has(2); @$pb.TagNumber(3) - void clearNumber() => clearField(3); + void clearNumber() => $_clearField(3); @$pb.TagNumber(4) FieldDescriptorProto_Label get label => $_getN(3); @$pb.TagNumber(4) set label(FieldDescriptorProto_Label v) { - setField(4, v); + $_setField(4, v); } @$pb.TagNumber(4) $core.bool hasLabel() => $_has(3); @$pb.TagNumber(4) - void clearLabel() => clearField(4); + void clearLabel() => $_clearField(4); /// If type_name is set, this need not be set. If both this and type_name /// are set, this must be one of TYPE_ENUM, TYPE_MESSAGE or TYPE_GROUP. @@ -860,13 +860,13 @@ class FieldDescriptorProto extends $pb.GeneratedMessage { FieldDescriptorProto_Type get type => $_getN(4); @$pb.TagNumber(5) set type(FieldDescriptorProto_Type v) { - setField(5, v); + $_setField(5, v); } @$pb.TagNumber(5) $core.bool hasType() => $_has(4); @$pb.TagNumber(5) - void clearType() => clearField(5); + void clearType() => $_clearField(5); /// For message and enum types, this is the name of the type. If the name /// starts with a '.', it is fully-qualified. Otherwise, C++-like scoping @@ -883,7 +883,7 @@ class FieldDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(6) $core.bool hasTypeName() => $_has(5); @$pb.TagNumber(6) - void clearTypeName() => clearField(6); + void clearTypeName() => $_clearField(6); /// For numeric types, contains the original text representation of the value. /// For booleans, "true" or "false". @@ -900,19 +900,19 @@ class FieldDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(7) $core.bool hasDefaultValue() => $_has(6); @$pb.TagNumber(7) - void clearDefaultValue() => clearField(7); + void clearDefaultValue() => $_clearField(7); @$pb.TagNumber(8) FieldOptions get options => $_getN(7); @$pb.TagNumber(8) set options(FieldOptions v) { - setField(8, v); + $_setField(8, v); } @$pb.TagNumber(8) $core.bool hasOptions() => $_has(7); @$pb.TagNumber(8) - void clearOptions() => clearField(8); + void clearOptions() => $_clearField(8); @$pb.TagNumber(8) FieldOptions ensureOptions() => $_ensure(7); @@ -928,7 +928,7 @@ class FieldDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(9) $core.bool hasOneofIndex() => $_has(8); @$pb.TagNumber(9) - void clearOneofIndex() => clearField(9); + void clearOneofIndex() => $_clearField(9); /// JSON name of this field. The value is set by protocol compiler. If the /// user has set a "json_name" option on this field, that option's value @@ -944,7 +944,7 @@ class FieldDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(10) $core.bool hasJsonName() => $_has(9); @$pb.TagNumber(10) - void clearJsonName() => clearField(10); + void clearJsonName() => $_clearField(10); /// If true, this is a proto3 "optional". When a proto3 field is optional, it /// tracks presence regardless of field type. @@ -977,7 +977,7 @@ class FieldDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(17) $core.bool hasProto3Optional() => $_has(10); @$pb.TagNumber(17) - void clearProto3Optional() => clearField(17); + void clearProto3Optional() => $_clearField(17); } /// Describes a oneof. @@ -1046,19 +1046,19 @@ class OneofDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasName() => $_has(0); @$pb.TagNumber(1) - void clearName() => clearField(1); + void clearName() => $_clearField(1); @$pb.TagNumber(2) OneofOptions get options => $_getN(1); @$pb.TagNumber(2) set options(OneofOptions v) { - setField(2, v); + $_setField(2, v); } @$pb.TagNumber(2) $core.bool hasOptions() => $_has(1); @$pb.TagNumber(2) - void clearOptions() => clearField(2); + void clearOptions() => $_clearField(2); @$pb.TagNumber(2) OneofOptions ensureOptions() => $_ensure(1); } @@ -1139,7 +1139,7 @@ class EnumDescriptorProto_EnumReservedRange extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasStart() => $_has(0); @$pb.TagNumber(1) - void clearStart() => clearField(1); + void clearStart() => $_clearField(1); @$pb.TagNumber(2) $core.int get end => $_getIZ(1); @@ -1151,7 +1151,7 @@ class EnumDescriptorProto_EnumReservedRange extends $pb.GeneratedMessage { @$pb.TagNumber(2) $core.bool hasEnd() => $_has(1); @$pb.TagNumber(2) - void clearEnd() => clearField(2); + void clearEnd() => $_clearField(2); } /// Describes an enum type. @@ -1238,7 +1238,7 @@ class EnumDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasName() => $_has(0); @$pb.TagNumber(1) - void clearName() => clearField(1); + void clearName() => $_clearField(1); @$pb.TagNumber(2) $core.List get value => $_getList(1); @@ -1247,13 +1247,13 @@ class EnumDescriptorProto extends $pb.GeneratedMessage { EnumOptions get options => $_getN(2); @$pb.TagNumber(3) set options(EnumOptions v) { - setField(3, v); + $_setField(3, v); } @$pb.TagNumber(3) $core.bool hasOptions() => $_has(2); @$pb.TagNumber(3) - void clearOptions() => clearField(3); + void clearOptions() => $_clearField(3); @$pb.TagNumber(3) EnumOptions ensureOptions() => $_ensure(2); @@ -1342,7 +1342,7 @@ class EnumValueDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasName() => $_has(0); @$pb.TagNumber(1) - void clearName() => clearField(1); + void clearName() => $_clearField(1); @$pb.TagNumber(2) $core.int get number => $_getIZ(1); @@ -1354,19 +1354,19 @@ class EnumValueDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(2) $core.bool hasNumber() => $_has(1); @$pb.TagNumber(2) - void clearNumber() => clearField(2); + void clearNumber() => $_clearField(2); @$pb.TagNumber(3) EnumValueOptions get options => $_getN(2); @$pb.TagNumber(3) set options(EnumValueOptions v) { - setField(3, v); + $_setField(3, v); } @$pb.TagNumber(3) $core.bool hasOptions() => $_has(2); @$pb.TagNumber(3) - void clearOptions() => clearField(3); + void clearOptions() => $_clearField(3); @$pb.TagNumber(3) EnumValueOptions ensureOptions() => $_ensure(2); } @@ -1445,7 +1445,7 @@ class ServiceDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasName() => $_has(0); @$pb.TagNumber(1) - void clearName() => clearField(1); + void clearName() => $_clearField(1); @$pb.TagNumber(2) $core.List get method => $_getList(1); @@ -1454,13 +1454,13 @@ class ServiceDescriptorProto extends $pb.GeneratedMessage { ServiceOptions get options => $_getN(2); @$pb.TagNumber(3) set options(ServiceOptions v) { - setField(3, v); + $_setField(3, v); } @$pb.TagNumber(3) $core.bool hasOptions() => $_has(2); @$pb.TagNumber(3) - void clearOptions() => clearField(3); + void clearOptions() => $_clearField(3); @$pb.TagNumber(3) ServiceOptions ensureOptions() => $_ensure(2); } @@ -1552,7 +1552,7 @@ class MethodDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasName() => $_has(0); @$pb.TagNumber(1) - void clearName() => clearField(1); + void clearName() => $_clearField(1); /// Input and output type names. These are resolved in the same way as /// FieldDescriptorProto.type_name, but must refer to a message type. @@ -1566,7 +1566,7 @@ class MethodDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(2) $core.bool hasInputType() => $_has(1); @$pb.TagNumber(2) - void clearInputType() => clearField(2); + void clearInputType() => $_clearField(2); @$pb.TagNumber(3) $core.String get outputType => $_getSZ(2); @@ -1578,19 +1578,19 @@ class MethodDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(3) $core.bool hasOutputType() => $_has(2); @$pb.TagNumber(3) - void clearOutputType() => clearField(3); + void clearOutputType() => $_clearField(3); @$pb.TagNumber(4) MethodOptions get options => $_getN(3); @$pb.TagNumber(4) set options(MethodOptions v) { - setField(4, v); + $_setField(4, v); } @$pb.TagNumber(4) $core.bool hasOptions() => $_has(3); @$pb.TagNumber(4) - void clearOptions() => clearField(4); + void clearOptions() => $_clearField(4); @$pb.TagNumber(4) MethodOptions ensureOptions() => $_ensure(3); @@ -1605,7 +1605,7 @@ class MethodDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(5) $core.bool hasClientStreaming() => $_has(4); @$pb.TagNumber(5) - void clearClientStreaming() => clearField(5); + void clearClientStreaming() => $_clearField(5); /// Identifies if server streams multiple server messages @$pb.TagNumber(6) @@ -1618,7 +1618,7 @@ class MethodDescriptorProto extends $pb.GeneratedMessage { @$pb.TagNumber(6) $core.bool hasServerStreaming() => $_has(5); @$pb.TagNumber(6) - void clearServerStreaming() => clearField(6); + void clearServerStreaming() => $_clearField(6); } class FileOptions extends $pb.GeneratedMessage { @@ -1793,7 +1793,7 @@ class FileOptions extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasJavaPackage() => $_has(0); @$pb.TagNumber(1) - void clearJavaPackage() => clearField(1); + void clearJavaPackage() => $_clearField(1); /// If set, all the classes from the .proto file are wrapped in a single /// outer class with the given name. This applies to both Proto1 @@ -1810,19 +1810,19 @@ class FileOptions extends $pb.GeneratedMessage { @$pb.TagNumber(8) $core.bool hasJavaOuterClassname() => $_has(1); @$pb.TagNumber(8) - void clearJavaOuterClassname() => clearField(8); + void clearJavaOuterClassname() => $_clearField(8); @$pb.TagNumber(9) FileOptions_OptimizeMode get optimizeFor => $_getN(2); @$pb.TagNumber(9) set optimizeFor(FileOptions_OptimizeMode v) { - setField(9, v); + $_setField(9, v); } @$pb.TagNumber(9) $core.bool hasOptimizeFor() => $_has(2); @$pb.TagNumber(9) - void clearOptimizeFor() => clearField(9); + void clearOptimizeFor() => $_clearField(9); /// If set true, then the Java code generator will generate a separate .java /// file for each top-level message, enum, and service defined in the .proto @@ -1840,7 +1840,7 @@ class FileOptions extends $pb.GeneratedMessage { @$pb.TagNumber(10) $core.bool hasJavaMultipleFiles() => $_has(3); @$pb.TagNumber(10) - void clearJavaMultipleFiles() => clearField(10); + void clearJavaMultipleFiles() => $_clearField(10); /// Sets the Go package where structs generated from this .proto will be /// placed. If omitted, the Go package will be derived from the following: @@ -1857,7 +1857,7 @@ class FileOptions extends $pb.GeneratedMessage { @$pb.TagNumber(11) $core.bool hasGoPackage() => $_has(4); @$pb.TagNumber(11) - void clearGoPackage() => clearField(11); + void clearGoPackage() => $_clearField(11); /// Should generic services be generated in each language? "Generic" services /// are not specific to any particular RPC system. They are generated by the @@ -1879,7 +1879,7 @@ class FileOptions extends $pb.GeneratedMessage { @$pb.TagNumber(16) $core.bool hasCcGenericServices() => $_has(5); @$pb.TagNumber(16) - void clearCcGenericServices() => clearField(16); + void clearCcGenericServices() => $_clearField(16); @$pb.TagNumber(17) $core.bool get javaGenericServices => $_getBF(6); @@ -1891,7 +1891,7 @@ class FileOptions extends $pb.GeneratedMessage { @$pb.TagNumber(17) $core.bool hasJavaGenericServices() => $_has(6); @$pb.TagNumber(17) - void clearJavaGenericServices() => clearField(17); + void clearJavaGenericServices() => $_clearField(17); @$pb.TagNumber(18) $core.bool get pyGenericServices => $_getBF(7); @@ -1903,7 +1903,7 @@ class FileOptions extends $pb.GeneratedMessage { @$pb.TagNumber(18) $core.bool hasPyGenericServices() => $_has(7); @$pb.TagNumber(18) - void clearPyGenericServices() => clearField(18); + void clearPyGenericServices() => $_clearField(18); /// This option does nothing. @$core.Deprecated('This field is deprecated.') @@ -1920,7 +1920,7 @@ class FileOptions extends $pb.GeneratedMessage { $core.bool hasJavaGenerateEqualsAndHash() => $_has(8); @$core.Deprecated('This field is deprecated.') @$pb.TagNumber(20) - void clearJavaGenerateEqualsAndHash() => clearField(20); + void clearJavaGenerateEqualsAndHash() => $_clearField(20); /// Is this file deprecated? /// Depending on the target platform, this can emit Deprecated annotations @@ -1936,7 +1936,7 @@ class FileOptions extends $pb.GeneratedMessage { @$pb.TagNumber(23) $core.bool hasDeprecated() => $_has(9); @$pb.TagNumber(23) - void clearDeprecated() => clearField(23); + void clearDeprecated() => $_clearField(23); /// If set true, then the Java2 code generator will generate code that /// throws an exception whenever an attempt is made to assign a non-UTF-8 @@ -1954,7 +1954,7 @@ class FileOptions extends $pb.GeneratedMessage { @$pb.TagNumber(27) $core.bool hasJavaStringCheckUtf8() => $_has(10); @$pb.TagNumber(27) - void clearJavaStringCheckUtf8() => clearField(27); + void clearJavaStringCheckUtf8() => $_clearField(27); /// Enables the use of arenas for the proto messages in this file. This applies /// only to generated classes for C++. @@ -1968,7 +1968,7 @@ class FileOptions extends $pb.GeneratedMessage { @$pb.TagNumber(31) $core.bool hasCcEnableArenas() => $_has(11); @$pb.TagNumber(31) - void clearCcEnableArenas() => clearField(31); + void clearCcEnableArenas() => $_clearField(31); /// Sets the objective c class prefix which is prepended to all objective c /// generated classes from this .proto. There is no default. @@ -1982,7 +1982,7 @@ class FileOptions extends $pb.GeneratedMessage { @$pb.TagNumber(36) $core.bool hasObjcClassPrefix() => $_has(12); @$pb.TagNumber(36) - void clearObjcClassPrefix() => clearField(36); + void clearObjcClassPrefix() => $_clearField(36); /// Namespace for generated classes; defaults to the package. @$pb.TagNumber(37) @@ -1995,7 +1995,7 @@ class FileOptions extends $pb.GeneratedMessage { @$pb.TagNumber(37) $core.bool hasCsharpNamespace() => $_has(13); @$pb.TagNumber(37) - void clearCsharpNamespace() => clearField(37); + void clearCsharpNamespace() => $_clearField(37); /// By default Swift generators will take the proto package and CamelCase it /// replacing '.' with underscore and use that to prefix the types/symbols @@ -2011,7 +2011,7 @@ class FileOptions extends $pb.GeneratedMessage { @$pb.TagNumber(39) $core.bool hasSwiftPrefix() => $_has(14); @$pb.TagNumber(39) - void clearSwiftPrefix() => clearField(39); + void clearSwiftPrefix() => $_clearField(39); /// Sets the php class prefix which is prepended to all php generated classes /// from this .proto. Default is empty. @@ -2025,7 +2025,7 @@ class FileOptions extends $pb.GeneratedMessage { @$pb.TagNumber(40) $core.bool hasPhpClassPrefix() => $_has(15); @$pb.TagNumber(40) - void clearPhpClassPrefix() => clearField(40); + void clearPhpClassPrefix() => $_clearField(40); /// Use this option to change the namespace of php generated classes. Default /// is empty. When this option is empty, the package name will be used for @@ -2040,7 +2040,7 @@ class FileOptions extends $pb.GeneratedMessage { @$pb.TagNumber(41) $core.bool hasPhpNamespace() => $_has(16); @$pb.TagNumber(41) - void clearPhpNamespace() => clearField(41); + void clearPhpNamespace() => $_clearField(41); @$pb.TagNumber(42) $core.bool get phpGenericServices => $_getBF(17); @@ -2052,7 +2052,7 @@ class FileOptions extends $pb.GeneratedMessage { @$pb.TagNumber(42) $core.bool hasPhpGenericServices() => $_has(17); @$pb.TagNumber(42) - void clearPhpGenericServices() => clearField(42); + void clearPhpGenericServices() => $_clearField(42); /// Use this option to change the namespace of php generated metadata classes. /// Default is empty. When this option is empty, the proto file name will be @@ -2067,7 +2067,7 @@ class FileOptions extends $pb.GeneratedMessage { @$pb.TagNumber(44) $core.bool hasPhpMetadataNamespace() => $_has(18); @$pb.TagNumber(44) - void clearPhpMetadataNamespace() => clearField(44); + void clearPhpMetadataNamespace() => $_clearField(44); /// Use this option to change the package of ruby generated classes. Default /// is empty. When this option is not set, the package name will be used for @@ -2082,7 +2082,7 @@ class FileOptions extends $pb.GeneratedMessage { @$pb.TagNumber(45) $core.bool hasRubyPackage() => $_has(19); @$pb.TagNumber(45) - void clearRubyPackage() => clearField(45); + void clearRubyPackage() => $_clearField(45); /// The parser stores options it doesn't recognize here. /// See the documentation for the "Options" section above. @@ -2189,7 +2189,7 @@ class MessageOptions extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasMessageSetWireFormat() => $_has(0); @$pb.TagNumber(1) - void clearMessageSetWireFormat() => clearField(1); + void clearMessageSetWireFormat() => $_clearField(1); /// Disables the generation of the standard "descriptor()" accessor, which can /// conflict with a field of the same name. This is meant to make migration @@ -2204,7 +2204,7 @@ class MessageOptions extends $pb.GeneratedMessage { @$pb.TagNumber(2) $core.bool hasNoStandardDescriptorAccessor() => $_has(1); @$pb.TagNumber(2) - void clearNoStandardDescriptorAccessor() => clearField(2); + void clearNoStandardDescriptorAccessor() => $_clearField(2); /// Is this message deprecated? /// Depending on the target platform, this can emit Deprecated annotations @@ -2220,7 +2220,7 @@ class MessageOptions extends $pb.GeneratedMessage { @$pb.TagNumber(3) $core.bool hasDeprecated() => $_has(2); @$pb.TagNumber(3) - void clearDeprecated() => clearField(3); + void clearDeprecated() => $_clearField(3); /// Whether the message is an automatically generated map entry type for the /// maps field. @@ -2253,7 +2253,7 @@ class MessageOptions extends $pb.GeneratedMessage { @$pb.TagNumber(7) $core.bool hasMapEntry() => $_has(3); @$pb.TagNumber(7) - void clearMapEntry() => clearField(7); + void clearMapEntry() => $_clearField(7); /// The parser stores options it doesn't recognize here. See above. @$pb.TagNumber(999) @@ -2357,13 +2357,13 @@ class FieldOptions extends $pb.GeneratedMessage { FieldOptions_CType get ctype => $_getN(0); @$pb.TagNumber(1) set ctype(FieldOptions_CType v) { - setField(1, v); + $_setField(1, v); } @$pb.TagNumber(1) $core.bool hasCtype() => $_has(0); @$pb.TagNumber(1) - void clearCtype() => clearField(1); + void clearCtype() => $_clearField(1); /// The packed option can be enabled for repeated primitive fields to enable /// a more efficient representation on the wire. Rather than repeatedly @@ -2380,7 +2380,7 @@ class FieldOptions extends $pb.GeneratedMessage { @$pb.TagNumber(2) $core.bool hasPacked() => $_has(1); @$pb.TagNumber(2) - void clearPacked() => clearField(2); + void clearPacked() => $_clearField(2); /// Is this field deprecated? /// Depending on the target platform, this can emit Deprecated annotations @@ -2396,7 +2396,7 @@ class FieldOptions extends $pb.GeneratedMessage { @$pb.TagNumber(3) $core.bool hasDeprecated() => $_has(2); @$pb.TagNumber(3) - void clearDeprecated() => clearField(3); + void clearDeprecated() => $_clearField(3); /// Should this field be parsed lazily? Lazy applies only to message-type /// fields. It means that when the outer message is initially parsed, the @@ -2436,7 +2436,7 @@ class FieldOptions extends $pb.GeneratedMessage { @$pb.TagNumber(5) $core.bool hasLazy() => $_has(3); @$pb.TagNumber(5) - void clearLazy() => clearField(5); + void clearLazy() => $_clearField(5); /// The jstype option determines the JavaScript type used for values of the /// field. The option is permitted only for 64 bit integral and fixed types @@ -2453,13 +2453,13 @@ class FieldOptions extends $pb.GeneratedMessage { FieldOptions_JSType get jstype => $_getN(4); @$pb.TagNumber(6) set jstype(FieldOptions_JSType v) { - setField(6, v); + $_setField(6, v); } @$pb.TagNumber(6) $core.bool hasJstype() => $_has(4); @$pb.TagNumber(6) - void clearJstype() => clearField(6); + void clearJstype() => $_clearField(6); /// For Google-internal migration only. Do not use. @$pb.TagNumber(10) @@ -2472,7 +2472,7 @@ class FieldOptions extends $pb.GeneratedMessage { @$pb.TagNumber(10) $core.bool hasWeak() => $_has(5); @$pb.TagNumber(10) - void clearWeak() => clearField(10); + void clearWeak() => $_clearField(10); /// The parser stores options it doesn't recognize here. See above. @$pb.TagNumber(999) @@ -2607,7 +2607,7 @@ class EnumOptions extends $pb.GeneratedMessage { @$pb.TagNumber(2) $core.bool hasAllowAlias() => $_has(0); @$pb.TagNumber(2) - void clearAllowAlias() => clearField(2); + void clearAllowAlias() => $_clearField(2); /// Is this enum deprecated? /// Depending on the target platform, this can emit Deprecated annotations @@ -2623,7 +2623,7 @@ class EnumOptions extends $pb.GeneratedMessage { @$pb.TagNumber(3) $core.bool hasDeprecated() => $_has(1); @$pb.TagNumber(3) - void clearDeprecated() => clearField(3); + void clearDeprecated() => $_clearField(3); /// The parser stores options it doesn't recognize here. See above. @$pb.TagNumber(999) @@ -2700,7 +2700,7 @@ class EnumValueOptions extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasDeprecated() => $_has(0); @$pb.TagNumber(1) - void clearDeprecated() => clearField(1); + void clearDeprecated() => $_clearField(1); /// The parser stores options it doesn't recognize here. See above. @$pb.TagNumber(999) @@ -2777,7 +2777,7 @@ class ServiceOptions extends $pb.GeneratedMessage { @$pb.TagNumber(33) $core.bool hasDeprecated() => $_has(0); @$pb.TagNumber(33) - void clearDeprecated() => clearField(33); + void clearDeprecated() => $_clearField(33); /// The parser stores options it doesn't recognize here. See above. @$pb.TagNumber(999) @@ -2863,19 +2863,19 @@ class MethodOptions extends $pb.GeneratedMessage { @$pb.TagNumber(33) $core.bool hasDeprecated() => $_has(0); @$pb.TagNumber(33) - void clearDeprecated() => clearField(33); + void clearDeprecated() => $_clearField(33); @$pb.TagNumber(34) MethodOptions_IdempotencyLevel get idempotencyLevel => $_getN(1); @$pb.TagNumber(34) set idempotencyLevel(MethodOptions_IdempotencyLevel v) { - setField(34, v); + $_setField(34, v); } @$pb.TagNumber(34) $core.bool hasIdempotencyLevel() => $_has(1); @$pb.TagNumber(34) - void clearIdempotencyLevel() => clearField(34); + void clearIdempotencyLevel() => $_clearField(34); /// The parser stores options it doesn't recognize here. See above. @$pb.TagNumber(999) @@ -2955,7 +2955,7 @@ class UninterpretedOption_NamePart extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasNamePart() => $_has(0); @$pb.TagNumber(1) - void clearNamePart() => clearField(1); + void clearNamePart() => $_clearField(1); @$pb.TagNumber(2) $core.bool get isExtension => $_getBF(1); @@ -2967,7 +2967,7 @@ class UninterpretedOption_NamePart extends $pb.GeneratedMessage { @$pb.TagNumber(2) $core.bool hasIsExtension() => $_has(1); @$pb.TagNumber(2) - void clearIsExtension() => clearField(2); + void clearIsExtension() => $_clearField(2); } /// A message representing a option the parser does not recognize. This only @@ -3075,7 +3075,7 @@ class UninterpretedOption extends $pb.GeneratedMessage { @$pb.TagNumber(3) $core.bool hasIdentifierValue() => $_has(1); @$pb.TagNumber(3) - void clearIdentifierValue() => clearField(3); + void clearIdentifierValue() => $_clearField(3); @$pb.TagNumber(4) $fixnum.Int64 get positiveIntValue => $_getI64(2); @@ -3087,7 +3087,7 @@ class UninterpretedOption extends $pb.GeneratedMessage { @$pb.TagNumber(4) $core.bool hasPositiveIntValue() => $_has(2); @$pb.TagNumber(4) - void clearPositiveIntValue() => clearField(4); + void clearPositiveIntValue() => $_clearField(4); @$pb.TagNumber(5) $fixnum.Int64 get negativeIntValue => $_getI64(3); @@ -3099,7 +3099,7 @@ class UninterpretedOption extends $pb.GeneratedMessage { @$pb.TagNumber(5) $core.bool hasNegativeIntValue() => $_has(3); @$pb.TagNumber(5) - void clearNegativeIntValue() => clearField(5); + void clearNegativeIntValue() => $_clearField(5); @$pb.TagNumber(6) $core.double get doubleValue => $_getN(4); @@ -3111,7 +3111,7 @@ class UninterpretedOption extends $pb.GeneratedMessage { @$pb.TagNumber(6) $core.bool hasDoubleValue() => $_has(4); @$pb.TagNumber(6) - void clearDoubleValue() => clearField(6); + void clearDoubleValue() => $_clearField(6); @$pb.TagNumber(7) $core.List<$core.int> get stringValue => $_getN(5); @@ -3123,7 +3123,7 @@ class UninterpretedOption extends $pb.GeneratedMessage { @$pb.TagNumber(7) $core.bool hasStringValue() => $_has(5); @$pb.TagNumber(7) - void clearStringValue() => clearField(7); + void clearStringValue() => $_clearField(7); @$pb.TagNumber(8) $core.String get aggregateValue => $_getSZ(6); @@ -3135,7 +3135,7 @@ class UninterpretedOption extends $pb.GeneratedMessage { @$pb.TagNumber(8) $core.bool hasAggregateValue() => $_has(6); @$pb.TagNumber(8) - void clearAggregateValue() => clearField(8); + void clearAggregateValue() => $_clearField(8); } class SourceCodeInfo_Location extends $pb.GeneratedMessage { @@ -3300,7 +3300,7 @@ class SourceCodeInfo_Location extends $pb.GeneratedMessage { @$pb.TagNumber(3) $core.bool hasLeadingComments() => $_has(2); @$pb.TagNumber(3) - void clearLeadingComments() => clearField(3); + void clearLeadingComments() => $_clearField(3); @$pb.TagNumber(4) $core.String get trailingComments => $_getSZ(3); @@ -3312,7 +3312,7 @@ class SourceCodeInfo_Location extends $pb.GeneratedMessage { @$pb.TagNumber(4) $core.bool hasTrailingComments() => $_has(3); @$pb.TagNumber(4) - void clearTrailingComments() => clearField(4); + void clearTrailingComments() => $_clearField(4); @$pb.TagNumber(6) $core.List<$core.String> get leadingDetachedComments => $_getList(4); @@ -3502,7 +3502,7 @@ class GeneratedCodeInfo_Annotation extends $pb.GeneratedMessage { @$pb.TagNumber(2) $core.bool hasSourceFile() => $_has(1); @$pb.TagNumber(2) - void clearSourceFile() => clearField(2); + void clearSourceFile() => $_clearField(2); /// Identifies the starting offset in bytes in the generated code /// that relates to the identified object. @@ -3516,7 +3516,7 @@ class GeneratedCodeInfo_Annotation extends $pb.GeneratedMessage { @$pb.TagNumber(3) $core.bool hasBegin() => $_has(2); @$pb.TagNumber(3) - void clearBegin() => clearField(3); + void clearBegin() => $_clearField(3); /// Identifies the ending offset in bytes in the generated code that /// relates to the identified offset. The end offset should be one past @@ -3531,7 +3531,7 @@ class GeneratedCodeInfo_Annotation extends $pb.GeneratedMessage { @$pb.TagNumber(4) $core.bool hasEnd() => $_has(3); @$pb.TagNumber(4) - void clearEnd() => clearField(4); + void clearEnd() => $_clearField(4); } /// Describes the relationship between generated code and its original source diff --git a/protoc_plugin/lib/src/generated/plugin.pb.dart b/protoc_plugin/lib/src/generated/plugin.pb.dart index f05dbe11f..bad241898 100644 --- a/protoc_plugin/lib/src/generated/plugin.pb.dart +++ b/protoc_plugin/lib/src/generated/plugin.pb.dart @@ -91,7 +91,7 @@ class Version extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasMajor() => $_has(0); @$pb.TagNumber(1) - void clearMajor() => clearField(1); + void clearMajor() => $_clearField(1); @$pb.TagNumber(2) $core.int get minor => $_getIZ(1); @@ -103,7 +103,7 @@ class Version extends $pb.GeneratedMessage { @$pb.TagNumber(2) $core.bool hasMinor() => $_has(1); @$pb.TagNumber(2) - void clearMinor() => clearField(2); + void clearMinor() => $_clearField(2); @$pb.TagNumber(3) $core.int get patch => $_getIZ(2); @@ -115,7 +115,7 @@ class Version extends $pb.GeneratedMessage { @$pb.TagNumber(3) $core.bool hasPatch() => $_has(2); @$pb.TagNumber(3) - void clearPatch() => clearField(3); + void clearPatch() => $_clearField(3); /// A suffix for alpha, beta or rc release, e.g., "alpha-1", "rc2". It should /// be empty for mainline stable releases. @@ -129,7 +129,7 @@ class Version extends $pb.GeneratedMessage { @$pb.TagNumber(4) $core.bool hasSuffix() => $_has(3); @$pb.TagNumber(4) - void clearSuffix() => clearField(4); + void clearSuffix() => $_clearField(4); } /// An encoded CodeGeneratorRequest is written to the plugin's stdin. @@ -217,20 +217,20 @@ class CodeGeneratorRequest extends $pb.GeneratedMessage { @$pb.TagNumber(2) $core.bool hasParameter() => $_has(1); @$pb.TagNumber(2) - void clearParameter() => clearField(2); + void clearParameter() => $_clearField(2); /// The version number of protocol compiler. @$pb.TagNumber(3) Version get compilerVersion => $_getN(2); @$pb.TagNumber(3) set compilerVersion(Version v) { - setField(3, v); + $_setField(3, v); } @$pb.TagNumber(3) $core.bool hasCompilerVersion() => $_has(2); @$pb.TagNumber(3) - void clearCompilerVersion() => clearField(3); + void clearCompilerVersion() => $_clearField(3); @$pb.TagNumber(3) Version ensureCompilerVersion() => $_ensure(2); @@ -342,7 +342,7 @@ class CodeGeneratorResponse_File extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasName() => $_has(0); @$pb.TagNumber(1) - void clearName() => clearField(1); + void clearName() => $_clearField(1); /// If non-empty, indicates that the named file should already exist, and the /// content here is to be inserted into that file at a defined insertion @@ -391,7 +391,7 @@ class CodeGeneratorResponse_File extends $pb.GeneratedMessage { @$pb.TagNumber(2) $core.bool hasInsertionPoint() => $_has(1); @$pb.TagNumber(2) - void clearInsertionPoint() => clearField(2); + void clearInsertionPoint() => $_clearField(2); /// The file contents. @$pb.TagNumber(15) @@ -404,7 +404,7 @@ class CodeGeneratorResponse_File extends $pb.GeneratedMessage { @$pb.TagNumber(15) $core.bool hasContent() => $_has(2); @$pb.TagNumber(15) - void clearContent() => clearField(15); + void clearContent() => $_clearField(15); /// Information describing the file content being inserted. If an insertion /// point is used, this information will be appropriately offset and inserted @@ -413,13 +413,13 @@ class CodeGeneratorResponse_File extends $pb.GeneratedMessage { $0.GeneratedCodeInfo get generatedCodeInfo => $_getN(3); @$pb.TagNumber(16) set generatedCodeInfo($0.GeneratedCodeInfo v) { - setField(16, v); + $_setField(16, v); } @$pb.TagNumber(16) $core.bool hasGeneratedCodeInfo() => $_has(3); @$pb.TagNumber(16) - void clearGeneratedCodeInfo() => clearField(16); + void clearGeneratedCodeInfo() => $_clearField(16); @$pb.TagNumber(16) $0.GeneratedCodeInfo ensureGeneratedCodeInfo() => $_ensure(3); } @@ -508,7 +508,7 @@ class CodeGeneratorResponse extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasError() => $_has(0); @$pb.TagNumber(1) - void clearError() => clearField(1); + void clearError() => $_clearField(1); /// A bitmask of supported features that the code generator supports. /// This is a bitwise "or" of values from the Feature enum. @@ -522,7 +522,7 @@ class CodeGeneratorResponse extends $pb.GeneratedMessage { @$pb.TagNumber(2) $core.bool hasSupportedFeatures() => $_has(1); @$pb.TagNumber(2) - void clearSupportedFeatures() => clearField(2); + void clearSupportedFeatures() => $_clearField(2); @$pb.TagNumber(15) $core.List get file => $_getList(2); diff --git a/protoc_plugin/lib/src/message_generator.dart b/protoc_plugin/lib/src/message_generator.dart index ee6e099fd..b3020c8fc 100644 --- a/protoc_plugin/lib/src/message_generator.dart +++ b/protoc_plugin/lib/src/message_generator.dart @@ -535,7 +535,7 @@ class MessageGenerator extends ProtobufContainer { out.println('${oneof.oneofEnumName} ${oneof.whichOneofMethodName}() ' '=> ${oneof.byTagMapName}[\$_whichOneof(${oneof.index})]!;'); out.println('void ${oneof.clearMethodName}() ' - '=> clearField(\$_whichOneof(${oneof.index}));'); + '=> \$_clearField(\$_whichOneof(${oneof.index}));'); } void generateFieldAccessorsMutators( @@ -597,7 +597,7 @@ class MessageGenerator extends ProtobufContainer { out.printlnAnnotated( 'set ${names.fieldName}' '($fieldTypeString v) { ' - 'setField(${field.number}, v);' + '\$_setField(${field.number}, v);' ' }', [ NamedLocation( @@ -625,7 +625,7 @@ class MessageGenerator extends ProtobufContainer { _emitIndexAnnotation(field.number, out); out.printlnAnnotated( 'void ${names.clearMethodName}() =>' - ' clearField(${field.number});', + ' \$_clearField(${field.number});', [ NamedLocation( name: names.clearMethodName!, diff --git a/protoc_plugin/test/goldens/deprecations b/protoc_plugin/test/goldens/deprecations index 9a03a7138..97e98f706 100644 --- a/protoc_plugin/test/goldens/deprecations +++ b/protoc_plugin/test/goldens/deprecations @@ -73,7 +73,7 @@ class HelloRequest extends $pb.GeneratedMessage { $core.bool hasName() => $_has(0); @$core.Deprecated('This field is deprecated.') @$pb.TagNumber(1) - void clearName() => clearField(1); + void clearName() => $_clearField(1); } class HelloReply extends $pb.GeneratedMessage { @@ -124,7 +124,7 @@ class HelloReply extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasMessage() => $_has(0); @$pb.TagNumber(1) - void clearMessage() => clearField(1); + void clearMessage() => $_clearField(1); } @$core.Deprecated('This service is deprecated') diff --git a/protoc_plugin/test/goldens/doc_comments b/protoc_plugin/test/goldens/doc_comments index e7964eeb6..9460bcda3 100644 --- a/protoc_plugin/test/goldens/doc_comments +++ b/protoc_plugin/test/goldens/doc_comments @@ -70,7 +70,7 @@ class HelloRequest extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasName() => $_has(0); @$pb.TagNumber(1) - void clearName() => clearField(1); + void clearName() => $_clearField(1); } class HelloReply extends $pb.GeneratedMessage { @@ -121,7 +121,7 @@ class HelloReply extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasMessage() => $_has(0); @$pb.TagNumber(1) - void clearMessage() => clearField(1); + void clearMessage() => $_clearField(1); } /// This is a service. diff --git a/protoc_plugin/test/goldens/imports.pb b/protoc_plugin/test/goldens/imports.pb index 0f8f8913e..288535a43 100644 --- a/protoc_plugin/test/goldens/imports.pb +++ b/protoc_plugin/test/goldens/imports.pb @@ -55,33 +55,33 @@ class M extends $pb.GeneratedMessage { @$pb.TagNumber(1) M get m => $_getN(0); @$pb.TagNumber(1) - set m(M v) { setField(1, v); } + set m(M v) { $_setField(1, v); } @$pb.TagNumber(1) $core.bool hasM() => $_has(0); @$pb.TagNumber(1) - void clearM() => clearField(1); + void clearM() => $_clearField(1); @$pb.TagNumber(1) M ensureM() => $_ensure(0); @$pb.TagNumber(2) $1.M get m1 => $_getN(1); @$pb.TagNumber(2) - set m1($1.M v) { setField(2, v); } + set m1($1.M v) { $_setField(2, v); } @$pb.TagNumber(2) $core.bool hasM1() => $_has(1); @$pb.TagNumber(2) - void clearM1() => clearField(2); + void clearM1() => $_clearField(2); @$pb.TagNumber(2) $1.M ensureM1() => $_ensure(1); @$pb.TagNumber(3) $2.M get m2 => $_getN(2); @$pb.TagNumber(3) - set m2($2.M v) { setField(3, v); } + set m2($2.M v) { $_setField(3, v); } @$pb.TagNumber(3) $core.bool hasM2() => $_has(2); @$pb.TagNumber(3) - void clearM2() => clearField(3); + void clearM2() => $_clearField(3); @$pb.TagNumber(3) $2.M ensureM2() => $_ensure(2); } diff --git a/protoc_plugin/test/goldens/int64.pb b/protoc_plugin/test/goldens/int64.pb index 047e01216..64040add3 100644 --- a/protoc_plugin/test/goldens/int64.pb +++ b/protoc_plugin/test/goldens/int64.pb @@ -55,7 +55,7 @@ class Int64 extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasValue() => $_has(0); @$pb.TagNumber(1) - void clearValue() => clearField(1); + void clearValue() => $_clearField(1); } diff --git a/protoc_plugin/test/goldens/messageGenerator b/protoc_plugin/test/goldens/messageGenerator index b4c504d9a..5eab02036 100644 --- a/protoc_plugin/test/goldens/messageGenerator +++ b/protoc_plugin/test/goldens/messageGenerator @@ -39,16 +39,16 @@ class PhoneNumber extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasNumber() => $_has(0); @$pb.TagNumber(1) - void clearNumber() => clearField(1); + void clearNumber() => $_clearField(1); @$pb.TagNumber(2) PhoneNumber_PhoneType get type => $_getN(1); @$pb.TagNumber(2) - set type(PhoneNumber_PhoneType v) { setField(2, v); } + set type(PhoneNumber_PhoneType v) { $_setField(2, v); } @$pb.TagNumber(2) $core.bool hasType() => $_has(1); @$pb.TagNumber(2) - void clearType() => clearField(2); + void clearType() => $_clearField(2); @$pb.TagNumber(3) $core.String get name => $_getS(2, '\$'); @@ -57,7 +57,7 @@ class PhoneNumber extends $pb.GeneratedMessage { @$pb.TagNumber(3) $core.bool hasName() => $_has(2); @$pb.TagNumber(3) - void clearName() => clearField(3); + void clearName() => $_clearField(3); @$core.Deprecated('This field is deprecated.') @$pb.TagNumber(4) @@ -70,7 +70,7 @@ class PhoneNumber extends $pb.GeneratedMessage { $core.bool hasDeprecatedField() => $_has(3); @$core.Deprecated('This field is deprecated.') @$pb.TagNumber(4) - void clearDeprecatedField() => clearField(4); + void clearDeprecatedField() => $_clearField(4); } diff --git a/protoc_plugin/test/goldens/messageGenerator.meta b/protoc_plugin/test/goldens/messageGenerator.meta index 090ca1514..c398f6031 100644 --- a/protoc_plugin/test/goldens/messageGenerator.meta +++ b/protoc_plugin/test/goldens/messageGenerator.meta @@ -54,8 +54,8 @@ annotation: { path: 2 path: 0 sourceFile: - begin: 2263 - end: 2267 + begin: 2265 + end: 2269 } annotation: { path: 4 @@ -63,8 +63,8 @@ annotation: { path: 2 path: 0 sourceFile: - begin: 2308 - end: 2312 + begin: 2310 + end: 2314 } annotation: { path: 4 @@ -72,8 +72,8 @@ annotation: { path: 2 path: 0 sourceFile: - begin: 2391 - end: 2398 + begin: 2395 + end: 2402 } annotation: { path: 4 @@ -81,8 +81,8 @@ annotation: { path: 2 path: 0 sourceFile: - begin: 2441 - end: 2450 + begin: 2445 + end: 2454 } annotation: { path: 4 @@ -90,8 +90,8 @@ annotation: { path: 2 path: 2 sourceFile: - begin: 2511 - end: 2515 + begin: 2517 + end: 2521 } annotation: { path: 4 @@ -99,8 +99,8 @@ annotation: { path: 2 path: 2 sourceFile: - begin: 2562 - end: 2566 + begin: 2568 + end: 2572 } annotation: { path: 4 @@ -108,8 +108,8 @@ annotation: { path: 2 path: 2 sourceFile: - begin: 2639 - end: 2646 + begin: 2645 + end: 2652 } annotation: { path: 4 @@ -117,8 +117,8 @@ annotation: { path: 2 path: 2 sourceFile: - begin: 2689 - end: 2698 + begin: 2695 + end: 2704 } annotation: { path: 4 @@ -126,8 +126,8 @@ annotation: { path: 2 path: 3 sourceFile: - begin: 2808 - end: 2823 + begin: 2816 + end: 2831 } annotation: { path: 4 @@ -135,8 +135,8 @@ annotation: { path: 2 path: 3 sourceFile: - begin: 2914 - end: 2929 + begin: 2922 + end: 2937 } annotation: { path: 4 @@ -144,8 +144,8 @@ annotation: { path: 2 path: 3 sourceFile: - begin: 3051 - end: 3069 + begin: 3059 + end: 3077 } annotation: { path: 4 @@ -153,6 +153,6 @@ annotation: { path: 2 path: 3 sourceFile: - begin: 3161 - end: 3181 + begin: 3169 + end: 3189 } diff --git a/protoc_plugin/test/goldens/oneMessage.pb b/protoc_plugin/test/goldens/oneMessage.pb index 984bc61b3..c5212f9a7 100644 --- a/protoc_plugin/test/goldens/oneMessage.pb +++ b/protoc_plugin/test/goldens/oneMessage.pb @@ -55,7 +55,7 @@ class PhoneNumber extends $pb.GeneratedMessage { @$pb.TagNumber(1) $core.bool hasNumber() => $_has(0); @$pb.TagNumber(1) - void clearNumber() => clearField(1); + void clearNumber() => $_clearField(1); @$pb.TagNumber(2) $core.int get type => $_getIZ(1); @@ -64,7 +64,7 @@ class PhoneNumber extends $pb.GeneratedMessage { @$pb.TagNumber(2) $core.bool hasType() => $_has(1); @$pb.TagNumber(2) - void clearType() => clearField(2); + void clearType() => $_clearField(2); @$pb.TagNumber(3) $core.String get name => $_getS(2, '\$'); @@ -73,7 +73,7 @@ class PhoneNumber extends $pb.GeneratedMessage { @$pb.TagNumber(3) $core.bool hasName() => $_has(2); @$pb.TagNumber(3) - void clearName() => clearField(3); + void clearName() => $_clearField(3); } diff --git a/protoc_plugin/test/goldens/oneMessage.pb.meta b/protoc_plugin/test/goldens/oneMessage.pb.meta index 9e1a0e93a..20dfc3ca2 100644 --- a/protoc_plugin/test/goldens/oneMessage.pb.meta +++ b/protoc_plugin/test/goldens/oneMessage.pb.meta @@ -54,8 +54,8 @@ annotation: { path: 2 path: 1 sourceFile: test - begin: 2576 - end: 2580 + begin: 2578 + end: 2582 } annotation: { path: 4 @@ -63,8 +63,8 @@ annotation: { path: 2 path: 1 sourceFile: test - begin: 2622 - end: 2626 + begin: 2624 + end: 2628 } annotation: { path: 4 @@ -72,8 +72,8 @@ annotation: { path: 2 path: 1 sourceFile: test - begin: 2701 - end: 2708 + begin: 2703 + end: 2710 } annotation: { path: 4 @@ -81,8 +81,8 @@ annotation: { path: 2 path: 1 sourceFile: test - begin: 2751 - end: 2760 + begin: 2753 + end: 2762 } annotation: { path: 4 @@ -90,8 +90,8 @@ annotation: { path: 2 path: 2 sourceFile: test - begin: 2821 - end: 2825 + begin: 2825 + end: 2829 } annotation: { path: 4 @@ -99,8 +99,8 @@ annotation: { path: 2 path: 2 sourceFile: test - begin: 2872 - end: 2876 + begin: 2876 + end: 2880 } annotation: { path: 4 @@ -108,8 +108,8 @@ annotation: { path: 2 path: 2 sourceFile: test - begin: 2949 - end: 2956 + begin: 2953 + end: 2960 } annotation: { path: 4 @@ -117,6 +117,6 @@ annotation: { path: 2 path: 2 sourceFile: test - begin: 2999 - end: 3008 + begin: 3003 + end: 3012 }