diff options
author | Jie Luo <jieluo@google.com> | 2015-05-29 12:48:25 -0700 |
---|---|---|
committer | Jie Luo <jieluo@google.com> | 2015-05-29 13:29:30 -0700 |
commit | f7b417ddfe63cb4d39775e5fd4560894cc547d65 (patch) | |
tree | 2ffb9956310e6aeb46078e7ad58db94d517f1d86 /csharp/src/ProtocolBuffers/GeneratedBuilder.cs | |
parent | 55df12194f5f0348c3ddf0636c63ba2b3978fab5 (diff) | |
download | protobuf-f7b417ddfe63cb4d39775e5fd4560894cc547d65.tar.gz protobuf-f7b417ddfe63cb4d39775e5fd4560894cc547d65.tar.bz2 protobuf-f7b417ddfe63cb4d39775e5fd4560894cc547d65.zip |
Add oneof support for C#
Diffstat (limited to 'csharp/src/ProtocolBuffers/GeneratedBuilder.cs')
-rw-r--r-- | csharp/src/ProtocolBuffers/GeneratedBuilder.cs | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/csharp/src/ProtocolBuffers/GeneratedBuilder.cs b/csharp/src/ProtocolBuffers/GeneratedBuilder.cs index e60a4201..0f121ae8 100644 --- a/csharp/src/ProtocolBuffers/GeneratedBuilder.cs +++ b/csharp/src/ProtocolBuffers/GeneratedBuilder.cs @@ -105,6 +105,16 @@ namespace Google.ProtocolBuffers set { InternalFieldAccessors[field].SetRepeated(ThisBuilder, index, value); }
}
+ public override bool HasOneof(OneofDescriptor oneof)
+ {
+ return MessageBeingBuilt.HasOneof(oneof);
+ }
+
+ public override FieldDescriptor OneofFieldDescriptor(OneofDescriptor oneof)
+ {
+ return MessageBeingBuilt.OneofFieldDescriptor(oneof);
+ }
+
public override bool HasField(FieldDescriptor field)
{
return MessageBeingBuilt.HasField(field);
@@ -121,6 +131,12 @@ namespace Google.ProtocolBuffers return ThisBuilder;
}
+ public override TBuilder ClearOneof(OneofDescriptor oneof)
+ {
+ InternalFieldAccessors.Oneof(oneof).Clear(ThisBuilder);
+ return ThisBuilder;
+ }
+
public override TBuilder MergeFrom(TMessage other)
{
if (other.DescriptorForType != InternalFieldAccessors.Descriptor)
|