diff --git a/csharp/Makefile.am b/csharp/Makefile.am index d3b10be5..4805a9f1 100644 --- a/csharp/Makefile.am +++ b/csharp/Makefile.am @@ -43,7 +43,8 @@ Google.ProtocolBuffers.dll_sources = \ Google.ProtocolBuffers.dll: $(Google.ProtocolBuffers.dll_sources) cp $(srcdir)/ProtocolBuffers/Properties/Google.ProtocolBuffers.snk . - gmcs -codepage:utf8 -debug -target:library -out:Google.ProtocolBuffers.dll $(Google.ProtocolBuffers.dll_sources) + gmcs -codepage:utf8 -debug -target:library -out:Google.ProtocolBuffers.dll \ + $(Google.ProtocolBuffers.dll_sources) -keyfile Google.ProtocolBuffers.snk install-data-local: Google.ProtocolBuffers.dll gacutil -i Google.ProtocolBuffers.dll -package google diff --git a/csharp/ProtocolBuffers/AbstractBuilder.cs b/csharp/ProtocolBuffers/AbstractBuilder.cs index 8a8554e4..02626f91 100644 --- a/csharp/ProtocolBuffers/AbstractBuilder.cs +++ b/csharp/ProtocolBuffers/AbstractBuilder.cs @@ -25,7 +25,6 @@ namespace Google.ProtocolBuffers { protected abstract IMessage BuildPartialImpl(); protected abstract IBuilder CloneImpl(); protected abstract IMessage DefaultInstanceForTypeImpl { get; } - protected abstract IBuilder CreateBuilderForFieldImpl(FieldDescriptor field); protected abstract IBuilder ClearFieldImpl(FieldDescriptor field); protected abstract IBuilder AddRepeatedFieldImpl(FieldDescriptor field, object value); #endregion @@ -47,9 +46,7 @@ namespace Google.ProtocolBuffers { get { return DefaultInstanceForTypeImpl; } } - IBuilder IBuilder.CreateBuilderForField(FieldDescriptor field) { - return CreateBuilderForFieldImpl(field); - } + public abstract IBuilder CreateBuilderForField(FieldDescriptor field); IBuilder IBuilder.ClearField(FieldDescriptor field) { return ClearFieldImpl(field); @@ -67,7 +64,7 @@ namespace Google.ProtocolBuffers { return this; } - public IBuilder MergeFrom(IMessage other) { + public virtual IBuilder MergeFrom(IMessage other) { if (other.DescriptorForType != DescriptorForType) { throw new ArgumentException("MergeFrom(Message) can only merge messages of the same type."); } @@ -106,18 +103,18 @@ namespace Google.ProtocolBuffers { return this; } - public IBuilder MergeFrom(CodedInputStream input) { - return MergeFrom(input, ExtensionRegistry.Empty); + IBuilder IBuilder.MergeFrom(CodedInputStream input) { + return ((IBuilder)this).MergeFrom(input, ExtensionRegistry.Empty); } - public IBuilder MergeFrom(CodedInputStream input, ExtensionRegistry extensionRegistry) { + IBuilder IBuilder.MergeFrom(CodedInputStream input, ExtensionRegistry extensionRegistry) { UnknownFieldSet.Builder unknownFields = UnknownFieldSet.CreateBuilder(UnknownFields); FieldSet.MergeFrom(input, unknownFields, extensionRegistry, this); UnknownFields = unknownFields.Build(); return this; } - public IBuilder MergeUnknownFields(UnknownFieldSet unknownFields) { + IBuilder IBuilder.MergeUnknownFields(UnknownFieldSet unknownFields) { UnknownFields = UnknownFieldSet.CreateBuilder(UnknownFields) .MergeFrom(unknownFields) .Build(); @@ -126,44 +123,44 @@ namespace Google.ProtocolBuffers { public UnknownFieldSet UnknownFields { get; set; } - public IBuilder MergeFrom(ByteString data) { + IBuilder IBuilder.MergeFrom(ByteString data) { CodedInputStream input = data.CreateCodedInput(); - MergeFrom(input); + ((IBuilder)this).MergeFrom(input); input.CheckLastTagWas(0); return this; } - public IBuilder MergeFrom(ByteString data, ExtensionRegistry extensionRegistry) { + IBuilder IBuilder.MergeFrom(ByteString data, ExtensionRegistry extensionRegistry) { CodedInputStream input = data.CreateCodedInput(); - MergeFrom(input, extensionRegistry); + ((IBuilder)this).MergeFrom(input, extensionRegistry); input.CheckLastTagWas(0); return this; } - public IBuilder MergeFrom(byte[] data) { + IBuilder IBuilder.MergeFrom(byte[] data) { CodedInputStream input = CodedInputStream.CreateInstance(data); - MergeFrom(input); + ((IBuilder)this).MergeFrom(input); input.CheckLastTagWas(0); return this; } - public IBuilder MergeFrom(byte[] data, ExtensionRegistry extensionRegistry) { + IBuilder IBuilder.MergeFrom(byte[] data, ExtensionRegistry extensionRegistry) { CodedInputStream input = CodedInputStream.CreateInstance(data); - MergeFrom(input, extensionRegistry); + ((IBuilder)this).MergeFrom(input, extensionRegistry); input.CheckLastTagWas(0); return this; } - public IBuilder MergeFrom(Stream input) { + IBuilder IBuilder.MergeFrom(Stream input) { CodedInputStream codedInput = CodedInputStream.CreateInstance(input); - MergeFrom(codedInput); + ((IBuilder)this).MergeFrom(codedInput); codedInput.CheckLastTagWas(0); return this; } - public IBuilder MergeFrom(Stream input, ExtensionRegistry extensionRegistry) { + IBuilder IBuilder.MergeFrom(Stream input, ExtensionRegistry extensionRegistry) { CodedInputStream codedInput = CodedInputStream.CreateInstance(input); - MergeFrom(codedInput, extensionRegistry); + ((IBuilder) this).MergeFrom(codedInput, extensionRegistry); codedInput.CheckLastTagWas(0); return this; } diff --git a/csharp/ProtocolBuffers/AbstractMessage.cs b/csharp/ProtocolBuffers/AbstractMessage.cs index 18e09538..9f855a45 100644 --- a/csharp/ProtocolBuffers/AbstractMessage.cs +++ b/csharp/ProtocolBuffers/AbstractMessage.cs @@ -13,11 +13,9 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -using System; using System.Collections; using System.Collections.Generic; using System.IO; -using System.Text; using Google.ProtocolBuffers.Descriptors; namespace Google.ProtocolBuffers { @@ -56,7 +54,7 @@ namespace Google.ProtocolBuffers { } #endregion - public bool IsInitialized { + public virtual bool IsInitialized { get { // Check that all required fields are present. foreach (FieldDescriptor field in DescriptorForType.Fields) { @@ -92,7 +90,7 @@ namespace Google.ProtocolBuffers { return TextFormat.PrintToString(this); } - public void WriteTo(CodedOutputStream output) { + public virtual void WriteTo(CodedOutputStream output) { foreach (KeyValuePair entry in AllFields) { FieldDescriptor field = entry.Key; if (field.IsRepeated) { @@ -107,14 +105,14 @@ namespace Google.ProtocolBuffers { } UnknownFieldSet unknownFields = UnknownFields; - if (DescriptorForType.Options.IsMessageSetWireFormat) { + if (DescriptorForType.Options.MessageSetWireFormat) { unknownFields.WriteAsMessageSetTo(output); } else { unknownFields.WriteTo(output); } } - public int SerializedSize { + public virtual int SerializedSize { get { int size = memoizedSize; if (size != -1) { @@ -134,7 +132,7 @@ namespace Google.ProtocolBuffers { } UnknownFieldSet unknownFields = UnknownFields; - if (DescriptorForType.Options.IsMessageSetWireFormat) { + if (DescriptorForType.Options.MessageSetWireFormat) { size += unknownFields.SerializedSizeAsMessageSet; } else { size += unknownFields.SerializedSize; @@ -184,73 +182,5 @@ namespace Google.ProtocolBuffers { hash = (53 * hash) + AllFields.GetHashCode(); return hash; } - - #region IMessage Members - - MessageDescriptor IMessage.DescriptorForType { - get { throw new NotImplementedException(); } - } - - IDictionary IMessage.AllFields { - get { throw new NotImplementedException(); } - } - - bool IMessage.HasField(FieldDescriptor field) { - throw new NotImplementedException(); - } - - object IMessage.this[FieldDescriptor field] { - get { throw new NotImplementedException(); } - } - - int IMessage.GetRepeatedFieldCount(FieldDescriptor field) { - throw new NotImplementedException(); - } - - object IMessage.this[FieldDescriptor field, int index] { - get { throw new NotImplementedException(); } - } - - UnknownFieldSet IMessage.UnknownFields { - get { throw new NotImplementedException(); } - } - - bool IMessage.IsInitialized { - get { throw new NotImplementedException(); } - } - - void IMessage.WriteTo(CodedOutputStream output) { - throw new NotImplementedException(); - } - - int IMessage.SerializedSize { - get { throw new NotImplementedException(); } - } - - bool IMessage.Equals(object other) { - throw new NotImplementedException(); - } - - int IMessage.GetHashCode() { - throw new NotImplementedException(); - } - - string IMessage.ToString() { - throw new NotImplementedException(); - } - - ByteString IMessage.ToByteString() { - throw new NotImplementedException(); - } - - byte[] IMessage.ToByteArray() { - throw new NotImplementedException(); - } - - void IMessage.WriteTo(Stream output) { - throw new NotImplementedException(); - } - - #endregion } } diff --git a/csharp/ProtocolBuffers/DescriptorProtos/Autogenerated.cs b/csharp/ProtocolBuffers/DescriptorProtos/Autogenerated.cs index 79d78632..86cfdae7 100644 --- a/csharp/ProtocolBuffers/DescriptorProtos/Autogenerated.cs +++ b/csharp/ProtocolBuffers/DescriptorProtos/Autogenerated.cs @@ -5,6 +5,7 @@ namespace Google.ProtocolBuffers.DescriptorProtos { /// /// This only exists until we've got the real code... /// + /* public abstract class TemporaryMessage : IMessage where T : IMessage { #region IMessage Members @@ -84,7 +85,7 @@ namespace Google.ProtocolBuffers.DescriptorProtos { } public partial class MessageOptions : TemporaryMessage { - public bool IsMessageSetWireFormat; + public bool MessageSetWireFormat; } public partial class DescriptorProto : TemporaryMessage { @@ -123,6 +124,7 @@ namespace Google.ProtocolBuffers.DescriptorProtos { public string FullName { get; set; } public FileOptions Options { get; set; } + public string Package { get; set; } } public partial class FileOptions : TemporaryMessage { } @@ -143,5 +145,5 @@ namespace Google.ProtocolBuffers.DescriptorProtos { } - public partial class ServiceOptions : TemporaryMessage { } + public partial class ServiceOptions : TemporaryMessage { } */ } diff --git a/csharp/ProtocolBuffers/DescriptorProtos/Descriptor.cs b/csharp/ProtocolBuffers/DescriptorProtos/Descriptor.cs new file mode 100644 index 00000000..8701420f --- /dev/null +++ b/csharp/ProtocolBuffers/DescriptorProtos/Descriptor.cs @@ -0,0 +1,5715 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! + +using pb = global::Google.ProtocolBuffers; + +namespace Google.ProtocolBuffers.DescriptorProtos { + + public sealed class Descriptor { + private Descriptor() {} + public static pb::Descriptors.FileDescriptor Descriptor { + get { return descriptor; } + } + private static readonly pb::Descriptors.FileDescriptor descriptor = pb::Descriptors.FileDescriptor.InternalBuildGeneratedFileFrom ( + new byte[] { + 0x0a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x65, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0f, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x22, 0xdc, 0x02, 0x0a, 0x13, 0x46, 0x69, 0x6c, 0x65, + 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x12, 0x0f, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x12, 0x12, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x79, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x12, 0x36, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x12, 0x37, 0x0a, 0x09, 0x65, 0x6e, 0x75, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x45, 0x6e, 0x75, 0x6d, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, + 0x38, 0x0a, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, + 0x63, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x38, 0x0a, + 0x09, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, + 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x2d, 0x0a, 0x07, 0x6f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x22, 0xa9, 0x03, 0x0a, 0x0f, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x12, 0x0c, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x12, 0x34, 0x0a, 0x05, + 0x66, 0x69, 0x65, 0x6c, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x38, 0x0a, 0x09, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, + 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x35, 0x0a, 0x0b, 0x6e, 0x65, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x12, 0x37, 0x0a, 0x09, 0x65, 0x6e, 0x75, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, + 0x12, 0x48, 0x0a, 0x0f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, + 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x2e, + 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x30, 0x0a, 0x07, 0x6f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x2c, 0x0a, 0x0e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x6e, + 0x67, 0x65, 0x12, 0x0d, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x12, 0x0b, 0x0a, + 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x22, 0x94, 0x05, 0x0a, 0x14, 0x46, 0x69, 0x65, 0x6c, 0x64, + 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x12, 0x0e, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x12, 0x3a, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, + 0x69, 0x65, 0x6c, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x2e, + 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x38, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, + 0x65, 0x6c, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x11, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x12, 0x10, 0x0a, 0x08, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x12, 0x15, 0x0a, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x09, 0x12, 0x2e, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, + 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xb6, 0x02, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x44, 0x4f, 0x55, 0x42, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x0e, 0x0a, + 0x0a, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x4c, 0x4f, 0x41, 0x54, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x59, 0x50, + 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x36, 0x34, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x49, + 0x4e, 0x54, 0x36, 0x34, 0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x33, 0x32, + 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x49, 0x58, 0x45, 0x44, 0x36, 0x34, 0x10, 0x06, + 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x49, 0x58, 0x45, 0x44, 0x33, 0x32, 0x10, 0x07, 0x12, 0x0d, + 0x0a, 0x09, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x42, 0x4f, 0x4f, 0x4c, 0x10, 0x08, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, + 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x09, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x47, + 0x52, 0x4f, 0x55, 0x50, 0x10, 0x0a, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, 0x45, 0x53, 0x53, 0x41, + 0x47, 0x45, 0x10, 0x0b, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x42, 0x59, 0x54, 0x45, 0x53, 0x10, 0x0c, + 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x49, 0x4e, 0x54, 0x33, 0x32, 0x10, 0x0d, 0x12, 0x0d, 0x0a, + 0x09, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x45, 0x4e, 0x55, 0x4d, 0x10, 0x0e, 0x12, 0x11, 0x0a, 0x0d, 0x54, 0x59, 0x50, 0x45, + 0x5f, 0x53, 0x46, 0x49, 0x58, 0x45, 0x44, 0x33, 0x32, 0x10, 0x0f, 0x12, 0x11, 0x0a, 0x0d, 0x54, 0x59, 0x50, 0x45, 0x5f, + 0x53, 0x46, 0x49, 0x58, 0x45, 0x44, 0x36, 0x34, 0x10, 0x10, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, + 0x49, 0x4e, 0x54, 0x33, 0x32, 0x10, 0x11, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x49, 0x4e, 0x54, + 0x36, 0x34, 0x10, 0x12, 0x22, 0x43, 0x0a, 0x05, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x41, 0x42, + 0x45, 0x4c, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x41, 0x42, + 0x45, 0x4c, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x41, 0x42, + 0x45, 0x4c, 0x5f, 0x52, 0x45, 0x50, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x03, 0x22, 0x8c, 0x01, 0x0a, 0x13, 0x45, 0x6e, + 0x75, 0x6d, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c, 0x0a, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x12, 0x38, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x2d, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x6c, 0x0a, 0x18, + 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x12, 0x0e, + 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x12, 0x32, 0x0a, 0x07, 0x6f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x4f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x90, 0x01, 0x0a, 0x16, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x44, 0x65, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x12, 0x36, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x12, 0x30, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x7f, 0x0a, 0x15, 0x4d, 0x65, 0x74, + 0x68, 0x6f, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x12, 0x12, 0x0a, 0x0a, 0x69, 0x6e, 0x70, 0x75, + 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x12, 0x13, 0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x70, + 0x75, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x12, 0x2f, 0x0a, 0x07, 0x6f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x22, 0x88, 0x03, 0x0a, 0x0b, 0x46, 0x69, 0x6c, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x14, + 0x0a, 0x0c, 0x6a, 0x61, 0x76, 0x61, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x12, 0x1c, 0x0a, 0x14, 0x6a, 0x61, 0x76, 0x61, 0x5f, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x12, 0x22, 0x0a, 0x13, 0x6a, 0x61, 0x76, 0x61, 0x5f, 0x6d, + 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x3a, + 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0c, 0x6f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x5f, 0x66, + 0x6f, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x4f, + 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x3a, 0x09, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x49, + 0x5a, 0x45, 0x12, 0x19, 0x0a, 0x10, 0x63, 0x73, 0x68, 0x61, 0x72, 0x70, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, + 0x63, 0x65, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x09, 0x12, 0x1e, 0x0a, 0x15, 0x63, 0x73, 0x68, 0x61, 0x72, 0x70, 0x5f, + 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0xe9, 0x07, 0x20, 0x01, 0x28, + 0x09, 0x12, 0x25, 0x0a, 0x15, 0x63, 0x73, 0x68, 0x61, 0x72, 0x70, 0x5f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, + 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0xea, 0x07, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, + 0x12, 0x23, 0x0a, 0x13, 0x63, 0x73, 0x68, 0x61, 0x72, 0x70, 0x5f, 0x6e, 0x65, 0x73, 0x74, 0x5f, 0x63, 0x6c, 0x61, 0x73, + 0x73, 0x65, 0x73, 0x18, 0xeb, 0x07, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x12, 0x24, 0x0a, + 0x15, 0x63, 0x73, 0x68, 0x61, 0x72, 0x70, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, + 0x65, 0x73, 0x18, 0xec, 0x07, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x04, 0x74, 0x72, 0x75, 0x65, 0x22, 0x28, 0x0a, 0x0c, 0x4f, + 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x50, 0x45, 0x45, 0x44, + 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x49, 0x5a, 0x45, 0x10, 0x02, 0x22, 0x38, 0x0a, + 0x0e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x26, 0x0a, 0x17, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x77, 0x69, 0x72, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x6d, + 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x22, 0x85, 0x01, 0x0a, 0x0c, + 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x32, 0x0a, 0x05, 0x63, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x43, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x14, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, + 0x5f, 0x6d, 0x61, 0x70, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x22, 0x23, 0x0a, 0x05, 0x43, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x08, 0x0a, 0x04, 0x43, 0x4f, 0x52, 0x44, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x54, 0x52, + 0x49, 0x4e, 0x47, 0x5f, 0x50, 0x49, 0x45, 0x43, 0x45, 0x10, 0x02, 0x22, 0x0d, 0x0a, 0x0b, 0x45, 0x6e, 0x75, 0x6d, 0x4f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x12, 0x0a, 0x10, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x4f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x10, 0x0a, 0x0e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x0f, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x42, 0x59, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x42, 0x10, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, + 0x6f, 0x73, 0x48, 0x01, 0xc2, 0x3e, 0x27, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, + 0x6f, 0x6c, 0x42, 0x75, 0x66, 0x66, 0x65, 0x72, 0x73, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0xd0, 0x3e, 0x00, 0xd8, 0x3e, 0x00, + }, new pb::Descriptors.FileDescriptor[] { + }); + + public sealed class FileDescriptorProto : pb::GeneratedMessage { + // Use FileDescriptorProto.newBuilder() to construct. + private FileDescriptorProto() {} + + private static readonly FileDescriptorProto defaultInstance = new FileDescriptorProto(); + public static FileDescriptorProto DefaultInstance { + get { return defaultInstance; } + } + + public FileDescriptorProto DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pb::Descriptors.Descriptor Descriptor { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_FileDescriptorProto_descriptor; } + } + + protected pb::GeneratedMessage.FieldAccessorTable InternalGetFieldAccessorTable { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_FileDescriptorProto_fieldAccessorTable; } + } + + // optional string name = 1; + private bool hasName; + private string name_ = ""; + public boolean HasName { + get { return hasName; } + } + public string Name { + get { return name_; } + } + + // optional string package = 2; + private bool hasPackage; + private string package_ = ""; + public boolean HasPackage { + get { return hasPackage; } + } + public string Package { + get { return package_; } + } + + // repeated string dependency = 3; + private java.util.List dependency_ = + java.util.Collections.emptyList(); + public java.util.List getDependencyList() { + return dependency_; + } + public int getDependencyCount() { return dependency_.size(); } + public string getDependency(int index) { + return dependency_.get(index); + } + + // repeated .google.protobuf.DescriptorProto message_type = 4; + internal System.Collections.Generic.IList EmptyMessageType = + new System.Collections.ReadOnlyCollection (); + internal System.Collections.Generic.IList messageType_ = EmptyMessageType; + public System.Collections.Generic.IList MessageTypeList { + get { return messageType_; } + } + public int MessageTypeCount { get { return messageType_.Count; } } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto MessageType(int index) { + return messageType_ [index]; + } + + // repeated .google.protobuf.EnumDescriptorProto enum_type = 5; + internal System.Collections.Generic.IList EmptyEnumType = + new System.Collections.ReadOnlyCollection (); + internal System.Collections.Generic.IList enumType_ = EmptyEnumType; + public System.Collections.Generic.IList EnumTypeList { + get { return enumType_; } + } + public int EnumTypeCount { get { return enumType_.Count; } } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto EnumType(int index) { + return enumType_ [index]; + } + + // repeated .google.protobuf.ServiceDescriptorProto service = 6; + internal System.Collections.Generic.IList EmptyService = + new System.Collections.ReadOnlyCollection (); + internal System.Collections.Generic.IList service_ = EmptyService; + public System.Collections.Generic.IList ServiceList { + get { return service_; } + } + public int ServiceCount { get { return service_.Count; } } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto Service(int index) { + return service_ [index]; + } + + // repeated .google.protobuf.FieldDescriptorProto extension = 7; + internal System.Collections.Generic.IList EmptyExtension = + new System.Collections.ReadOnlyCollection (); + internal System.Collections.Generic.IList extension_ = EmptyExtension; + public System.Collections.Generic.IList ExtensionList { + get { return extension_; } + } + public int ExtensionCount { get { return extension_.Count; } } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto Extension(int index) { + return extension_ [index]; + } + + // optional .google.protobuf.FileOptions options = 8; + private boolean hasOptions; + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions options_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions.getDefaultInstance(); + public boolean hasOptions() { return hasOptions; } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions getOptions() { return options_; } + + public final boolean isInitialized() { + return true; + } + + public void writeTo(pb::CodedOutputStream output) { + if (hasName()) { + output.writeString(1, getName()); + } + if (hasPackage()) { + output.writeString(2, getPackage()); + } + for (string element : getDependencyList()) { + output.writeString(3, element); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto element in GetMessageTypeList()) { + output.writeMessage(4, element); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto element in GetEnumTypeList()) { + output.writeMessage(5, element); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto element in GetServiceList()) { + output.writeMessage(6, element); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto element in GetExtensionList()) { + output.writeMessage(7, element); + } + if (hasOptions()) { + output.writeMessage(8, getOptions()); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (hasName()) { + size += pb::CodedOutputStream + .computeStringSize(1, getName()); + } + if (hasPackage()) { + size += pb::CodedOutputStream + .computeStringSize(2, getPackage()); + } + for (string element : getDependencyList()) { + size += pb::CodedOutputStream + .computeStringSize(3, element); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto element in GetMessageTypeList()) { + size += pb::CodedOutputStream + .computeMessageSize(4, element); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto element in GetEnumTypeList()) { + size += pb::CodedOutputStream + .computeMessageSize(5, element); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto element in GetServiceList()) { + size += pb::CodedOutputStream + .computeMessageSize(6, element); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto element in GetExtensionList()) { + size += pb::CodedOutputStream + .computeMessageSize(7, element); + } + if (hasOptions()) { + size += pb::CodedOutputStream + .computeMessageSize(8, getOptions()); + } + size += UnknownFieldsSerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto parseFrom(pb::ByteString data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto parseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto parseFrom(byte[] data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto parseFrom(global::System.IO.Stream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto parseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto parseFrom(pb::CodedInputStream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto parseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + + public static Builder newBuilder() { return new Builder(); } + public Builder newBuilderForType() { return new Builder(); } + public static Builder newBuilder(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto prototype) { + return new Builder().mergeFrom(prototype); + } + + public sealed class Builder : pb::GeneratedMessage.Builder { + // Construct using Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto.newBuilder() + private Builder() {} + + Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto(); + + protected Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto internalGetResult() { + return result; + } + + public Builder clear() { + result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto(); + return this; + } + + public Builder clone() { + return new Builder().mergeFrom(result); + } + + public pb::Descriptors.Descriptor + getDescriptorForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto.getDescriptor(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto getDefaultInstanceForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto.getDefaultInstance(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto build() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result); + } + return buildPartial(); + } + + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto buildParsed() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result).asInvalidProtocolBufferException(); + } + return buildPartial(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto buildPartial() { + if (result.dependency_ != java.util.Collections.EMPTY_LIST) { + result.dependency_ = + java.util.Collections.unmodifiableList(result.dependency_); + } + if (result.messageType_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.EmptyMessageType) { + result.messageType_ = + result.messageType_.AsReadOnly (); + } + if (result.enumType_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.EmptyEnumType) { + result.enumType_ = + result.enumType_.AsReadOnly (); + } + if (result.service_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto.EmptyService) { + result.service_ = + result.service_.AsReadOnly (); + } + if (result.extension_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyExtension) { + result.extension_ = + result.extension_.AsReadOnly (); + } + Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto returnMe = result; + result = null; + return returnMe; + } + + public Builder mergeFrom(pb::Message other) { + if (other instanceof Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto) { + return mergeFrom((Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto other) { + if (other == Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto.getDefaultInstance()) return this; + if (other.hasName()) { + setName(other.getName()); + } + if (other.hasPackage()) { + setPackage(other.getPackage()); + } + if (!other.dependency_.isEmpty()) { + if (result.dependency_.isEmpty()) { + result.dependency_ = new java.util.ArrayList(); + } + result.dependency_.addAll(other.dependency_); + } + if (!other.messageType_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.EmptyMessageType) { + if (result.messageType_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.EmptyMessageType) { + result.messageType_ = new System.Collections.Generic.List(); + } + result.messageType_.AddCollection(other.messageType_); + } + if (!other.enumType_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.EmptyEnumType) { + if (result.enumType_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.EmptyEnumType) { + result.enumType_ = new System.Collections.Generic.List(); + } + result.enumType_.AddCollection(other.enumType_); + } + if (!other.service_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto.EmptyService) { + if (result.service_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto.EmptyService) { + result.service_ = new System.Collections.Generic.List(); + } + result.service_.AddCollection(other.service_); + } + if (!other.extension_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyExtension) { + if (result.extension_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyExtension) { + result.extension_ = new System.Collections.Generic.List(); + } + result.extension_.AddCollection(other.extension_); + } + if (other.hasOptions()) { + mergeOptions(other.getOptions()); + } + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public Builder mergeFrom( + pb::CodedInputStream input) { + return mergeFrom(input, + pb::ExtensionRegistry.getEmptyRegistry()); + } + + public Builder mergeFrom( + pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.newBuilder( + this.getUnknownFields()); + while (true) { + int tag = input.readTag(); + switch (tag) { + case 0: + this.setUnknownFields(unknownFields.build()); + return this; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.setUnknownFields(unknownFields.build()); + return this; + } + break; + } + case 10: { + setName(input.readString()); + break; + } + case 18: { + setPackage(input.readString()); + break; + } + case 26: { + addDependency(input.readString()); + break; + } + case 34: { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.Builder subBuilder = Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.newBuilder(); + input.readMessage(subBuilder, extensionRegistry); + AddMessageType(subBuilder.buildPartial()); + break; + } + case 42: { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.Builder subBuilder = Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.newBuilder(); + input.readMessage(subBuilder, extensionRegistry); + AddEnumType(subBuilder.buildPartial()); + break; + } + case 50: { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto.Builder subBuilder = Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto.newBuilder(); + input.readMessage(subBuilder, extensionRegistry); + AddService(subBuilder.buildPartial()); + break; + } + case 58: { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Builder subBuilder = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.newBuilder(); + input.readMessage(subBuilder, extensionRegistry); + AddExtension(subBuilder.buildPartial()); + break; + } + case 66: { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions.Builder subBuilder = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions.newBuilder(); + if (hasOptions()) { + subBuilder.mergeFrom(getOptions()); + } + input.readMessage(subBuilder, extensionRegistry); + setOptions(subBuilder.buildPartial()); + break; + } + } + } + } + + + // optional string name = 1; + public boolean HasName { + get { return result.HasName; } + } + public string Name { + get { return result.Name; } + set { + result.hasName = true; + result.name_ = value; + } + } + public Builder ClearName() { + result.hasName = false; + result.name_ = ""; + return this; + } + + // optional string package = 2; + public boolean HasPackage { + get { return result.HasPackage; } + } + public string Package { + get { return result.Package; } + set { + result.hasPackage = true; + result.package_ = value; + } + } + public Builder ClearPackage() { + result.hasPackage = false; + result.package_ = ""; + return this; + } + + // repeated string dependency = 3; + public java.util.List getDependencyList() { + return java.util.Collections.unmodifiableList(result.dependency_); + } + public int getDependencyCount() { + return result.getDependencyCount(); + } + public string getDependency(int index) { + return result.getDependency(index); + } + public Builder setDependency(int index, string value) { + result.dependency_.set(index, value); + return this; + } + public Builder addDependency(string value) { + if (result.dependency_.isEmpty()) { + result.dependency_ = new java.util.ArrayList(); + } + result.dependency_.add(value); + return this; + } + public Builder addAllDependency( + java.lang.Iterable values) { + if (result.dependency_.isEmpty()) { + result.dependency_ = new java.util.ArrayList(); + } + super.addAll(values, result.dependency_); + return this; + } + public Builder clearDependency() { + result.dependency_ = java.util.Collections.emptyList(); + return this; + } + + // repeated .google.protobuf.DescriptorProto message_type = 4; + public System.Collections.Generic.IList GetMessageTypeList() { + if (result.messageType_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.EmptyMessageType) + return result.messageType; + return result.messageType_.AsReadOnly (); + } + public int GetMessageTypeCount() { + return result.GetMessageTypeCount(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto GetMessageType(int index) { + return result.GetMessageType(index); + } + public Builder SetMessageType(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto value) { + result.messageType_ [index] = value; + return this; + } + public Builder SetMessageType(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.Builder builderForValue) { + result.messageType_ [index] = builderForValue.build(); + return this; + } + public Builder AddMessageType(Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto value) { + if (result.messageType == Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.EmptyMessageType) + result.messageType = new System.Collections.Generic.List(); + result.messageType_.Add(value); + return this; + } + public Builder AddMessageType(Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.Builder builderForValue) { + if (result.messageType == Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.EmptyMessageType) + result.messageType = new System.Collections.Generic.List(); + result.messageType_.Add(builderForValue.build()); + return this; + } + public Builder AddAllMessageType( + global::System.Collections.Generic.IEnumerable values) where T : Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto { + if (result.messageType == Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.EmptyMessageType) + result.messageType = new System.Collections.Generic.List(); + result.messageType_.AddEnumerable (values); + return this; + } + public Builder ClearMessageType() { + result.messageType_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.EmptyMessageType; + return this; + } + + // repeated .google.protobuf.EnumDescriptorProto enum_type = 5; + public System.Collections.Generic.IList GetEnumTypeList() { + if (result.enumType_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.EmptyEnumType) + return result.enumType; + return result.enumType_.AsReadOnly (); + } + public int GetEnumTypeCount() { + return result.GetEnumTypeCount(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto GetEnumType(int index) { + return result.GetEnumType(index); + } + public Builder SetEnumType(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto value) { + result.enumType_ [index] = value; + return this; + } + public Builder SetEnumType(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.Builder builderForValue) { + result.enumType_ [index] = builderForValue.build(); + return this; + } + public Builder AddEnumType(Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto value) { + if (result.enumType == Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.EmptyEnumType) + result.enumType = new System.Collections.Generic.List(); + result.enumType_.Add(value); + return this; + } + public Builder AddEnumType(Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.Builder builderForValue) { + if (result.enumType == Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.EmptyEnumType) + result.enumType = new System.Collections.Generic.List(); + result.enumType_.Add(builderForValue.build()); + return this; + } + public Builder AddAllEnumType( + global::System.Collections.Generic.IEnumerable values) where T : Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto { + if (result.enumType == Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.EmptyEnumType) + result.enumType = new System.Collections.Generic.List(); + result.enumType_.AddEnumerable (values); + return this; + } + public Builder ClearEnumType() { + result.enumType_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.EmptyEnumType; + return this; + } + + // repeated .google.protobuf.ServiceDescriptorProto service = 6; + public System.Collections.Generic.IList GetServiceList() { + if (result.service_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto.EmptyService) + return result.service; + return result.service_.AsReadOnly (); + } + public int GetServiceCount() { + return result.GetServiceCount(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto GetService(int index) { + return result.GetService(index); + } + public Builder SetService(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto value) { + result.service_ [index] = value; + return this; + } + public Builder SetService(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto.Builder builderForValue) { + result.service_ [index] = builderForValue.build(); + return this; + } + public Builder AddService(Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto value) { + if (result.service == Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto.EmptyService) + result.service = new System.Collections.Generic.List(); + result.service_.Add(value); + return this; + } + public Builder AddService(Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto.Builder builderForValue) { + if (result.service == Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto.EmptyService) + result.service = new System.Collections.Generic.List(); + result.service_.Add(builderForValue.build()); + return this; + } + public Builder AddAllService( + global::System.Collections.Generic.IEnumerable values) where T : Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto { + if (result.service == Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto.EmptyService) + result.service = new System.Collections.Generic.List(); + result.service_.AddEnumerable (values); + return this; + } + public Builder ClearService() { + result.service_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto.EmptyService; + return this; + } + + // repeated .google.protobuf.FieldDescriptorProto extension = 7; + public System.Collections.Generic.IList GetExtensionList() { + if (result.extension_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyExtension) + return result.extension; + return result.extension_.AsReadOnly (); + } + public int GetExtensionCount() { + return result.GetExtensionCount(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto GetExtension(int index) { + return result.GetExtension(index); + } + public Builder SetExtension(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto value) { + result.extension_ [index] = value; + return this; + } + public Builder SetExtension(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Builder builderForValue) { + result.extension_ [index] = builderForValue.build(); + return this; + } + public Builder AddExtension(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto value) { + if (result.extension == Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyExtension) + result.extension = new System.Collections.Generic.List(); + result.extension_.Add(value); + return this; + } + public Builder AddExtension(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Builder builderForValue) { + if (result.extension == Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyExtension) + result.extension = new System.Collections.Generic.List(); + result.extension_.Add(builderForValue.build()); + return this; + } + public Builder AddAllExtension( + global::System.Collections.Generic.IEnumerable values) where T : Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto { + if (result.extension == Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyExtension) + result.extension = new System.Collections.Generic.List(); + result.extension_.AddEnumerable (values); + return this; + } + public Builder ClearExtension() { + result.extension_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyExtension; + return this; + } + + // optional .google.protobuf.FileOptions options = 8; + public boolean hasOptions() { + return result.hasOptions(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions getOptions() { + return result.getOptions(); + } + public Builder setOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions value) { + result.hasOptions = true; + result.options_ = value; + return this; + } + public Builder setOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions.Builder builderForValue) { + result.hasOptions = true; + result.options_ = builderForValue.build(); + return this; + } + public Builder mergeOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions value) { + if (result.hasOptions() && + result.options_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions.getDefaultInstance()) { + result.options_ = + Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions.newBuilder(result.options_).mergeFrom(value).buildPartial(); + } else { + result.options_ = value; + } + result.hasOptions = true; + return this; + } + public Builder clearOptions() { + result.hasOptions = false; + result.options_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions.getDefaultInstance(); + return this; + } + } + } + + public sealed class DescriptorProto : pb::GeneratedMessage { + // Use DescriptorProto.newBuilder() to construct. + private DescriptorProto() {} + + private static readonly DescriptorProto defaultInstance = new DescriptorProto(); + public static DescriptorProto DefaultInstance { + get { return defaultInstance; } + } + + public DescriptorProto DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pb::Descriptors.Descriptor Descriptor { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_DescriptorProto_descriptor; } + } + + protected pb::GeneratedMessage.FieldAccessorTable InternalGetFieldAccessorTable { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_DescriptorProto_fieldAccessorTable; } + } + + public sealed class ExtensionRange : pb::GeneratedMessage { + // Use ExtensionRange.newBuilder() to construct. + private ExtensionRange() {} + + private static readonly ExtensionRange defaultInstance = new ExtensionRange(); + public static ExtensionRange DefaultInstance { + get { return defaultInstance; } + } + + public ExtensionRange DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pb::Descriptors.Descriptor Descriptor { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_DescriptorProto_ExtensionRange_descriptor; } + } + + protected pb::GeneratedMessage.FieldAccessorTable InternalGetFieldAccessorTable { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_DescriptorProto_ExtensionRange_fieldAccessorTable; } + } + + // optional int32 start = 1; + private bool hasStart; + private int start_ = 0; + public boolean HasStart { + get { return hasStart; } + } + public int Start { + get { return start_; } + } + + // optional int32 end = 2; + private bool hasEnd; + private int end_ = 0; + public boolean HasEnd { + get { return hasEnd; } + } + public int End { + get { return end_; } + } + + public final boolean isInitialized() { + return true; + } + + public void writeTo(pb::CodedOutputStream output) { + if (hasStart()) { + output.writeInt32(1, getStart()); + } + if (hasEnd()) { + output.writeInt32(2, getEnd()); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (hasStart()) { + size += pb::CodedOutputStream + .computeInt32Size(1, getStart()); + } + if (hasEnd()) { + size += pb::CodedOutputStream + .computeInt32Size(2, getEnd()); + } + size += UnknownFieldsSerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange parseFrom(pb::ByteString data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange parseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange parseFrom(byte[] data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange parseFrom(global::System.IO.Stream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange parseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange parseFrom(pb::CodedInputStream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange parseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + + public static Builder newBuilder() { return new Builder(); } + public Builder newBuilderForType() { return new Builder(); } + public static Builder newBuilder(Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange prototype) { + return new Builder().mergeFrom(prototype); + } + + public sealed class Builder : pb::GeneratedMessage.Builder { + // Construct using Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange.newBuilder() + private Builder() {} + + Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange(); + + protected Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange internalGetResult() { + return result; + } + + public Builder clear() { + result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange(); + return this; + } + + public Builder clone() { + return new Builder().mergeFrom(result); + } + + public pb::Descriptors.Descriptor + getDescriptorForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange.getDescriptor(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange getDefaultInstanceForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange.getDefaultInstance(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange build() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result); + } + return buildPartial(); + } + + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange buildParsed() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result).asInvalidProtocolBufferException(); + } + return buildPartial(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange buildPartial() { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange returnMe = result; + result = null; + return returnMe; + } + + public Builder mergeFrom(pb::Message other) { + if (other instanceof Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange) { + return mergeFrom((Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange other) { + if (other == Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange.getDefaultInstance()) return this; + if (other.hasStart()) { + setStart(other.getStart()); + } + if (other.hasEnd()) { + setEnd(other.getEnd()); + } + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public Builder mergeFrom( + pb::CodedInputStream input) { + return mergeFrom(input, + pb::ExtensionRegistry.getEmptyRegistry()); + } + + public Builder mergeFrom( + pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.newBuilder( + this.getUnknownFields()); + while (true) { + int tag = input.readTag(); + switch (tag) { + case 0: + this.setUnknownFields(unknownFields.build()); + return this; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.setUnknownFields(unknownFields.build()); + return this; + } + break; + } + case 8: { + setStart(input.readInt32()); + break; + } + case 16: { + setEnd(input.readInt32()); + break; + } + } + } + } + + + // optional int32 start = 1; + public boolean HasStart { + get { return result.HasStart; } + } + public int Start { + get { return result.Start; } + set { + result.hasStart = true; + result.start_ = value; + } + } + public Builder ClearStart() { + result.hasStart = false; + result.start_ = 0; + return this; + } + + // optional int32 end = 2; + public boolean HasEnd { + get { return result.HasEnd; } + } + public int End { + get { return result.End; } + set { + result.hasEnd = true; + result.end_ = value; + } + } + public Builder ClearEnd() { + result.hasEnd = false; + result.end_ = 0; + return this; + } + } + } + + // optional string name = 1; + private bool hasName; + private string name_ = ""; + public boolean HasName { + get { return hasName; } + } + public string Name { + get { return name_; } + } + + // repeated .google.protobuf.FieldDescriptorProto field = 2; + internal System.Collections.Generic.IList EmptyField = + new System.Collections.ReadOnlyCollection (); + internal System.Collections.Generic.IList field_ = EmptyField; + public System.Collections.Generic.IList FieldList { + get { return field_; } + } + public int FieldCount { get { return field_.Count; } } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto Field(int index) { + return field_ [index]; + } + + // repeated .google.protobuf.FieldDescriptorProto extension = 6; + internal System.Collections.Generic.IList EmptyExtension = + new System.Collections.ReadOnlyCollection (); + internal System.Collections.Generic.IList extension_ = EmptyExtension; + public System.Collections.Generic.IList ExtensionList { + get { return extension_; } + } + public int ExtensionCount { get { return extension_.Count; } } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto Extension(int index) { + return extension_ [index]; + } + + // repeated .google.protobuf.DescriptorProto nested_type = 3; + internal System.Collections.Generic.IList EmptyNestedType = + new System.Collections.ReadOnlyCollection (); + internal System.Collections.Generic.IList nestedType_ = EmptyNestedType; + public System.Collections.Generic.IList NestedTypeList { + get { return nestedType_; } + } + public int NestedTypeCount { get { return nestedType_.Count; } } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto NestedType(int index) { + return nestedType_ [index]; + } + + // repeated .google.protobuf.EnumDescriptorProto enum_type = 4; + internal System.Collections.Generic.IList EmptyEnumType = + new System.Collections.ReadOnlyCollection (); + internal System.Collections.Generic.IList enumType_ = EmptyEnumType; + public System.Collections.Generic.IList EnumTypeList { + get { return enumType_; } + } + public int EnumTypeCount { get { return enumType_.Count; } } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto EnumType(int index) { + return enumType_ [index]; + } + + // repeated .google.protobuf.DescriptorProto.ExtensionRange extension_range = 5; + internal System.Collections.Generic.IList EmptyExtensionRange = + new System.Collections.ReadOnlyCollection (); + internal System.Collections.Generic.IList extensionRange_ = EmptyExtensionRange; + public System.Collections.Generic.IList ExtensionRangeList { + get { return extensionRange_; } + } + public int ExtensionRangeCount { get { return extensionRange_.Count; } } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange ExtensionRange(int index) { + return extensionRange_ [index]; + } + + // optional .google.protobuf.MessageOptions options = 7; + private boolean hasOptions; + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions options_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions.getDefaultInstance(); + public boolean hasOptions() { return hasOptions; } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions getOptions() { return options_; } + + public final boolean isInitialized() { + return true; + } + + public void writeTo(pb::CodedOutputStream output) { + if (hasName()) { + output.writeString(1, getName()); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto element in GetFieldList()) { + output.writeMessage(2, element); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto element in GetNestedTypeList()) { + output.writeMessage(3, element); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto element in GetEnumTypeList()) { + output.writeMessage(4, element); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange element in GetExtensionRangeList()) { + output.writeMessage(5, element); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto element in GetExtensionList()) { + output.writeMessage(6, element); + } + if (hasOptions()) { + output.writeMessage(7, getOptions()); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (hasName()) { + size += pb::CodedOutputStream + .computeStringSize(1, getName()); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto element in GetFieldList()) { + size += pb::CodedOutputStream + .computeMessageSize(2, element); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto element in GetNestedTypeList()) { + size += pb::CodedOutputStream + .computeMessageSize(3, element); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto element in GetEnumTypeList()) { + size += pb::CodedOutputStream + .computeMessageSize(4, element); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange element in GetExtensionRangeList()) { + size += pb::CodedOutputStream + .computeMessageSize(5, element); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto element in GetExtensionList()) { + size += pb::CodedOutputStream + .computeMessageSize(6, element); + } + if (hasOptions()) { + size += pb::CodedOutputStream + .computeMessageSize(7, getOptions()); + } + size += UnknownFieldsSerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto parseFrom(pb::ByteString data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto parseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto parseFrom(byte[] data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto parseFrom(global::System.IO.Stream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto parseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto parseFrom(pb::CodedInputStream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto parseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + + public static Builder newBuilder() { return new Builder(); } + public Builder newBuilderForType() { return new Builder(); } + public static Builder newBuilder(Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto prototype) { + return new Builder().mergeFrom(prototype); + } + + public sealed class Builder : pb::GeneratedMessage.Builder { + // Construct using Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.newBuilder() + private Builder() {} + + Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto(); + + protected Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto internalGetResult() { + return result; + } + + public Builder clear() { + result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto(); + return this; + } + + public Builder clone() { + return new Builder().mergeFrom(result); + } + + public pb::Descriptors.Descriptor + getDescriptorForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.getDescriptor(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto getDefaultInstanceForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.getDefaultInstance(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto build() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result); + } + return buildPartial(); + } + + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto buildParsed() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result).asInvalidProtocolBufferException(); + } + return buildPartial(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto buildPartial() { + if (result.field_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyField) { + result.field_ = + result.field_.AsReadOnly (); + } + if (result.extension_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyExtension) { + result.extension_ = + result.extension_.AsReadOnly (); + } + if (result.nestedType_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.EmptyNestedType) { + result.nestedType_ = + result.nestedType_.AsReadOnly (); + } + if (result.enumType_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.EmptyEnumType) { + result.enumType_ = + result.enumType_.AsReadOnly (); + } + if (result.extensionRange_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange.EmptyExtensionRange) { + result.extensionRange_ = + result.extensionRange_.AsReadOnly (); + } + Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto returnMe = result; + result = null; + return returnMe; + } + + public Builder mergeFrom(pb::Message other) { + if (other instanceof Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto) { + return mergeFrom((Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto other) { + if (other == Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.getDefaultInstance()) return this; + if (other.hasName()) { + setName(other.getName()); + } + if (!other.field_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyField) { + if (result.field_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyField) { + result.field_ = new System.Collections.Generic.List(); + } + result.field_.AddCollection(other.field_); + } + if (!other.extension_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyExtension) { + if (result.extension_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyExtension) { + result.extension_ = new System.Collections.Generic.List(); + } + result.extension_.AddCollection(other.extension_); + } + if (!other.nestedType_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.EmptyNestedType) { + if (result.nestedType_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.EmptyNestedType) { + result.nestedType_ = new System.Collections.Generic.List(); + } + result.nestedType_.AddCollection(other.nestedType_); + } + if (!other.enumType_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.EmptyEnumType) { + if (result.enumType_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.EmptyEnumType) { + result.enumType_ = new System.Collections.Generic.List(); + } + result.enumType_.AddCollection(other.enumType_); + } + if (!other.extensionRange_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange.EmptyExtensionRange) { + if (result.extensionRange_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange.EmptyExtensionRange) { + result.extensionRange_ = new System.Collections.Generic.List(); + } + result.extensionRange_.AddCollection(other.extensionRange_); + } + if (other.hasOptions()) { + mergeOptions(other.getOptions()); + } + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public Builder mergeFrom( + pb::CodedInputStream input) { + return mergeFrom(input, + pb::ExtensionRegistry.getEmptyRegistry()); + } + + public Builder mergeFrom( + pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.newBuilder( + this.getUnknownFields()); + while (true) { + int tag = input.readTag(); + switch (tag) { + case 0: + this.setUnknownFields(unknownFields.build()); + return this; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.setUnknownFields(unknownFields.build()); + return this; + } + break; + } + case 10: { + setName(input.readString()); + break; + } + case 18: { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Builder subBuilder = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.newBuilder(); + input.readMessage(subBuilder, extensionRegistry); + AddField(subBuilder.buildPartial()); + break; + } + case 26: { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.Builder subBuilder = Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.newBuilder(); + input.readMessage(subBuilder, extensionRegistry); + AddNestedType(subBuilder.buildPartial()); + break; + } + case 34: { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.Builder subBuilder = Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.newBuilder(); + input.readMessage(subBuilder, extensionRegistry); + AddEnumType(subBuilder.buildPartial()); + break; + } + case 42: { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange.Builder subBuilder = Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange.newBuilder(); + input.readMessage(subBuilder, extensionRegistry); + AddExtensionRange(subBuilder.buildPartial()); + break; + } + case 50: { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Builder subBuilder = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.newBuilder(); + input.readMessage(subBuilder, extensionRegistry); + AddExtension(subBuilder.buildPartial()); + break; + } + case 58: { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions.Builder subBuilder = Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions.newBuilder(); + if (hasOptions()) { + subBuilder.mergeFrom(getOptions()); + } + input.readMessage(subBuilder, extensionRegistry); + setOptions(subBuilder.buildPartial()); + break; + } + } + } + } + + + // optional string name = 1; + public boolean HasName { + get { return result.HasName; } + } + public string Name { + get { return result.Name; } + set { + result.hasName = true; + result.name_ = value; + } + } + public Builder ClearName() { + result.hasName = false; + result.name_ = ""; + return this; + } + + // repeated .google.protobuf.FieldDescriptorProto field = 2; + public System.Collections.Generic.IList GetFieldList() { + if (result.field_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyField) + return result.field; + return result.field_.AsReadOnly (); + } + public int GetFieldCount() { + return result.GetFieldCount(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto GetField(int index) { + return result.GetField(index); + } + public Builder SetField(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto value) { + result.field_ [index] = value; + return this; + } + public Builder SetField(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Builder builderForValue) { + result.field_ [index] = builderForValue.build(); + return this; + } + public Builder AddField(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto value) { + if (result.field == Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyField) + result.field = new System.Collections.Generic.List(); + result.field_.Add(value); + return this; + } + public Builder AddField(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Builder builderForValue) { + if (result.field == Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyField) + result.field = new System.Collections.Generic.List(); + result.field_.Add(builderForValue.build()); + return this; + } + public Builder AddAllField( + global::System.Collections.Generic.IEnumerable values) where T : Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto { + if (result.field == Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyField) + result.field = new System.Collections.Generic.List(); + result.field_.AddEnumerable (values); + return this; + } + public Builder ClearField() { + result.field_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyField; + return this; + } + + // repeated .google.protobuf.FieldDescriptorProto extension = 6; + public System.Collections.Generic.IList GetExtensionList() { + if (result.extension_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyExtension) + return result.extension; + return result.extension_.AsReadOnly (); + } + public int GetExtensionCount() { + return result.GetExtensionCount(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto GetExtension(int index) { + return result.GetExtension(index); + } + public Builder SetExtension(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto value) { + result.extension_ [index] = value; + return this; + } + public Builder SetExtension(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Builder builderForValue) { + result.extension_ [index] = builderForValue.build(); + return this; + } + public Builder AddExtension(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto value) { + if (result.extension == Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyExtension) + result.extension = new System.Collections.Generic.List(); + result.extension_.Add(value); + return this; + } + public Builder AddExtension(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Builder builderForValue) { + if (result.extension == Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyExtension) + result.extension = new System.Collections.Generic.List(); + result.extension_.Add(builderForValue.build()); + return this; + } + public Builder AddAllExtension( + global::System.Collections.Generic.IEnumerable values) where T : Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto { + if (result.extension == Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyExtension) + result.extension = new System.Collections.Generic.List(); + result.extension_.AddEnumerable (values); + return this; + } + public Builder ClearExtension() { + result.extension_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.EmptyExtension; + return this; + } + + // repeated .google.protobuf.DescriptorProto nested_type = 3; + public System.Collections.Generic.IList GetNestedTypeList() { + if (result.nestedType_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.EmptyNestedType) + return result.nestedType; + return result.nestedType_.AsReadOnly (); + } + public int GetNestedTypeCount() { + return result.GetNestedTypeCount(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto GetNestedType(int index) { + return result.GetNestedType(index); + } + public Builder SetNestedType(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto value) { + result.nestedType_ [index] = value; + return this; + } + public Builder SetNestedType(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.Builder builderForValue) { + result.nestedType_ [index] = builderForValue.build(); + return this; + } + public Builder AddNestedType(Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto value) { + if (result.nestedType == Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.EmptyNestedType) + result.nestedType = new System.Collections.Generic.List(); + result.nestedType_.Add(value); + return this; + } + public Builder AddNestedType(Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.Builder builderForValue) { + if (result.nestedType == Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.EmptyNestedType) + result.nestedType = new System.Collections.Generic.List(); + result.nestedType_.Add(builderForValue.build()); + return this; + } + public Builder AddAllNestedType( + global::System.Collections.Generic.IEnumerable values) where T : Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto { + if (result.nestedType == Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.EmptyNestedType) + result.nestedType = new System.Collections.Generic.List(); + result.nestedType_.AddEnumerable (values); + return this; + } + public Builder ClearNestedType() { + result.nestedType_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.EmptyNestedType; + return this; + } + + // repeated .google.protobuf.EnumDescriptorProto enum_type = 4; + public System.Collections.Generic.IList GetEnumTypeList() { + if (result.enumType_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.EmptyEnumType) + return result.enumType; + return result.enumType_.AsReadOnly (); + } + public int GetEnumTypeCount() { + return result.GetEnumTypeCount(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto GetEnumType(int index) { + return result.GetEnumType(index); + } + public Builder SetEnumType(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto value) { + result.enumType_ [index] = value; + return this; + } + public Builder SetEnumType(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.Builder builderForValue) { + result.enumType_ [index] = builderForValue.build(); + return this; + } + public Builder AddEnumType(Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto value) { + if (result.enumType == Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.EmptyEnumType) + result.enumType = new System.Collections.Generic.List(); + result.enumType_.Add(value); + return this; + } + public Builder AddEnumType(Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.Builder builderForValue) { + if (result.enumType == Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.EmptyEnumType) + result.enumType = new System.Collections.Generic.List(); + result.enumType_.Add(builderForValue.build()); + return this; + } + public Builder AddAllEnumType( + global::System.Collections.Generic.IEnumerable values) where T : Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto { + if (result.enumType == Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.EmptyEnumType) + result.enumType = new System.Collections.Generic.List(); + result.enumType_.AddEnumerable (values); + return this; + } + public Builder ClearEnumType() { + result.enumType_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.EmptyEnumType; + return this; + } + + // repeated .google.protobuf.DescriptorProto.ExtensionRange extension_range = 5; + public System.Collections.Generic.IList GetExtensionRangeList() { + if (result.extensionRange_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange.EmptyExtensionRange) + return result.extensionRange; + return result.extensionRange_.AsReadOnly (); + } + public int GetExtensionRangeCount() { + return result.GetExtensionRangeCount(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange GetExtensionRange(int index) { + return result.GetExtensionRange(index); + } + public Builder SetExtensionRange(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange value) { + result.extensionRange_ [index] = value; + return this; + } + public Builder SetExtensionRange(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange.Builder builderForValue) { + result.extensionRange_ [index] = builderForValue.build(); + return this; + } + public Builder AddExtensionRange(Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange value) { + if (result.extensionRange == Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange.EmptyExtensionRange) + result.extensionRange = new System.Collections.Generic.List(); + result.extensionRange_.Add(value); + return this; + } + public Builder AddExtensionRange(Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange.Builder builderForValue) { + if (result.extensionRange == Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange.EmptyExtensionRange) + result.extensionRange = new System.Collections.Generic.List(); + result.extensionRange_.Add(builderForValue.build()); + return this; + } + public Builder AddAllExtensionRange( + global::System.Collections.Generic.IEnumerable values) where T : Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange { + if (result.extensionRange == Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange.EmptyExtensionRange) + result.extensionRange = new System.Collections.Generic.List(); + result.extensionRange_.AddEnumerable (values); + return this; + } + public Builder ClearExtensionRange() { + result.extensionRange_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange.EmptyExtensionRange; + return this; + } + + // optional .google.protobuf.MessageOptions options = 7; + public boolean hasOptions() { + return result.hasOptions(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions getOptions() { + return result.getOptions(); + } + public Builder setOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions value) { + result.hasOptions = true; + result.options_ = value; + return this; + } + public Builder setOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions.Builder builderForValue) { + result.hasOptions = true; + result.options_ = builderForValue.build(); + return this; + } + public Builder mergeOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions value) { + if (result.hasOptions() && + result.options_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions.getDefaultInstance()) { + result.options_ = + Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions.newBuilder(result.options_).mergeFrom(value).buildPartial(); + } else { + result.options_ = value; + } + result.hasOptions = true; + return this; + } + public Builder clearOptions() { + result.hasOptions = false; + result.options_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions.getDefaultInstance(); + return this; + } + } + } + + public sealed class FieldDescriptorProto : pb::GeneratedMessage { + // Use FieldDescriptorProto.newBuilder() to construct. + private FieldDescriptorProto() {} + + private static readonly FieldDescriptorProto defaultInstance = new FieldDescriptorProto(); + public static FieldDescriptorProto DefaultInstance { + get { return defaultInstance; } + } + + public FieldDescriptorProto DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pb::Descriptors.Descriptor Descriptor { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_FieldDescriptorProto_descriptor; } + } + + protected pb::GeneratedMessage.FieldAccessorTable InternalGetFieldAccessorTable { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_FieldDescriptorProto_fieldAccessorTable; } + } + + public enum Type { + [pb::DescriptorIndex(0)] + TYPE_DOUBLE = 1, + [pb::DescriptorIndex(1)] + TYPE_FLOAT = 2, + [pb::DescriptorIndex(2)] + TYPE_INT64 = 3, + [pb::DescriptorIndex(3)] + TYPE_UINT64 = 4, + [pb::DescriptorIndex(4)] + TYPE_INT32 = 5, + [pb::DescriptorIndex(5)] + TYPE_FIXED64 = 6, + [pb::DescriptorIndex(6)] + TYPE_FIXED32 = 7, + [pb::DescriptorIndex(7)] + TYPE_BOOL = 8, + [pb::DescriptorIndex(8)] + TYPE_STRING = 9, + [pb::DescriptorIndex(9)] + TYPE_GROUP = 10, + [pb::DescriptorIndex(10)] + TYPE_MESSAGE = 11, + [pb::DescriptorIndex(11)] + TYPE_BYTES = 12, + [pb::DescriptorIndex(12)] + TYPE_UINT32 = 13, + [pb::DescriptorIndex(13)] + TYPE_ENUM = 14, + [pb::DescriptorIndex(14)] + TYPE_SFIXED32 = 15, + [pb::DescriptorIndex(15)] + TYPE_SFIXED64 = 16, + [pb::DescriptorIndex(16)] + TYPE_SINT32 = 17, + [pb::DescriptorIndex(17)] + TYPE_SINT64 = 18, + } + + public enum Label { + [pb::DescriptorIndex(0)] + LABEL_OPTIONAL = 1, + [pb::DescriptorIndex(1)] + LABEL_REQUIRED = 2, + [pb::DescriptorIndex(2)] + LABEL_REPEATED = 3, + } + + // optional string name = 1; + private bool hasName; + private string name_ = ""; + public boolean HasName { + get { return hasName; } + } + public string Name { + get { return name_; } + } + + // optional int32 number = 3; + private bool hasNumber; + private int number_ = 0; + public boolean HasNumber { + get { return hasNumber; } + } + public int Number { + get { return number_; } + } + + // optional .google.protobuf.FieldDescriptorProto.Label label = 4; + private boolean hasLabel; + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Label label_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Label.LABEL_OPTIONAL; + public boolean HasLabel() { return hasLabel; } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Label GetLabel() { return label_; } + + // optional .google.protobuf.FieldDescriptorProto.Type type = 5; + private boolean hasType; + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Type type_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Type.TYPE_DOUBLE; + public boolean HasType() { return hasType; } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Type GetType() { return type_; } + + // optional string type_name = 6; + private bool hasTypeName; + private string typeName_ = ""; + public boolean HasTypeName { + get { return hasTypeName; } + } + public string TypeName { + get { return typeName_; } + } + + // optional string extendee = 2; + private bool hasExtendee; + private string extendee_ = ""; + public boolean HasExtendee { + get { return hasExtendee; } + } + public string Extendee { + get { return extendee_; } + } + + // optional string default_value = 7; + private bool hasDefaultValue; + private string defaultValue_ = ""; + public boolean HasDefaultValue { + get { return hasDefaultValue; } + } + public string DefaultValue { + get { return defaultValue_; } + } + + // optional .google.protobuf.FieldOptions options = 8; + private boolean hasOptions; + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions options_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions.getDefaultInstance(); + public boolean hasOptions() { return hasOptions; } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions getOptions() { return options_; } + + public final boolean isInitialized() { + return true; + } + + public void writeTo(pb::CodedOutputStream output) { + if (hasName()) { + output.writeString(1, getName()); + } + if (hasExtendee()) { + output.writeString(2, getExtendee()); + } + if (hasNumber()) { + output.writeInt32(3, getNumber()); + } + if (hasLabel()) { + output.writeEnum(4, getLabel().getNumber()); + } + if (hasType()) { + output.writeEnum(5, getType().getNumber()); + } + if (hasTypeName()) { + output.writeString(6, getTypeName()); + } + if (hasDefaultValue()) { + output.writeString(7, getDefaultValue()); + } + if (hasOptions()) { + output.writeMessage(8, getOptions()); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (hasName()) { + size += pb::CodedOutputStream + .computeStringSize(1, getName()); + } + if (hasExtendee()) { + size += pb::CodedOutputStream + .computeStringSize(2, getExtendee()); + } + if (hasNumber()) { + size += pb::CodedOutputStream + .computeInt32Size(3, getNumber()); + } + if (hasLabel()) { + size += pb::CodedOutputStream + .computeEnumSize(4, getLabel().getNumber()); + } + if (hasType()) { + size += pb::CodedOutputStream + .computeEnumSize(5, getType().getNumber()); + } + if (hasTypeName()) { + size += pb::CodedOutputStream + .computeStringSize(6, getTypeName()); + } + if (hasDefaultValue()) { + size += pb::CodedOutputStream + .computeStringSize(7, getDefaultValue()); + } + if (hasOptions()) { + size += pb::CodedOutputStream + .computeMessageSize(8, getOptions()); + } + size += UnknownFieldsSerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto parseFrom(pb::ByteString data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto parseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto parseFrom(byte[] data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto parseFrom(global::System.IO.Stream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto parseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto parseFrom(pb::CodedInputStream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto parseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + + public static Builder newBuilder() { return new Builder(); } + public Builder newBuilderForType() { return new Builder(); } + public static Builder newBuilder(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto prototype) { + return new Builder().mergeFrom(prototype); + } + + public sealed class Builder : pb::GeneratedMessage.Builder { + // Construct using Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.newBuilder() + private Builder() {} + + Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto(); + + protected Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto internalGetResult() { + return result; + } + + public Builder clear() { + result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto(); + return this; + } + + public Builder clone() { + return new Builder().mergeFrom(result); + } + + public pb::Descriptors.Descriptor + getDescriptorForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.getDescriptor(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto getDefaultInstanceForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.getDefaultInstance(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto build() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result); + } + return buildPartial(); + } + + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto buildParsed() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result).asInvalidProtocolBufferException(); + } + return buildPartial(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto buildPartial() { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto returnMe = result; + result = null; + return returnMe; + } + + public Builder mergeFrom(pb::Message other) { + if (other instanceof Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto) { + return mergeFrom((Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto other) { + if (other == Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.getDefaultInstance()) return this; + if (other.hasName()) { + setName(other.getName()); + } + if (other.hasNumber()) { + setNumber(other.getNumber()); + } + if (other.hasLabel()) { + setLabel(other.getLabel()); + } + if (other.hasType()) { + setType(other.getType()); + } + if (other.hasTypeName()) { + setTypeName(other.getTypeName()); + } + if (other.hasExtendee()) { + setExtendee(other.getExtendee()); + } + if (other.hasDefaultValue()) { + setDefaultValue(other.getDefaultValue()); + } + if (other.hasOptions()) { + mergeOptions(other.getOptions()); + } + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public Builder mergeFrom( + pb::CodedInputStream input) { + return mergeFrom(input, + pb::ExtensionRegistry.getEmptyRegistry()); + } + + public Builder mergeFrom( + pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.newBuilder( + this.getUnknownFields()); + while (true) { + int tag = input.readTag(); + switch (tag) { + case 0: + this.setUnknownFields(unknownFields.build()); + return this; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.setUnknownFields(unknownFields.build()); + return this; + } + break; + } + case 10: { + setName(input.readString()); + break; + } + case 18: { + setExtendee(input.readString()); + break; + } + case 24: { + setNumber(input.readInt32()); + break; + } + case 32: { + int rawValue = input.readEnum(); + Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Label value = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Label.valueOf(rawValue); + if (value == null) { + unknownFields.mergeVarintField(4, rawValue); + } else { + setLabel(value); + } + break; + } + case 40: { + int rawValue = input.readEnum(); + Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Type value = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Type.valueOf(rawValue); + if (value == null) { + unknownFields.mergeVarintField(5, rawValue); + } else { + setType(value); + } + break; + } + case 50: { + setTypeName(input.readString()); + break; + } + case 58: { + setDefaultValue(input.readString()); + break; + } + case 66: { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions.Builder subBuilder = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions.newBuilder(); + if (hasOptions()) { + subBuilder.mergeFrom(getOptions()); + } + input.readMessage(subBuilder, extensionRegistry); + setOptions(subBuilder.buildPartial()); + break; + } + } + } + } + + + // optional string name = 1; + public boolean HasName { + get { return result.HasName; } + } + public string Name { + get { return result.Name; } + set { + result.hasName = true; + result.name_ = value; + } + } + public Builder ClearName() { + result.hasName = false; + result.name_ = ""; + return this; + } + + // optional int32 number = 3; + public boolean HasNumber { + get { return result.HasNumber; } + } + public int Number { + get { return result.Number; } + set { + result.hasNumber = true; + result.number_ = value; + } + } + public Builder ClearNumber() { + result.hasNumber = false; + result.number_ = 0; + return this; + } + + // optional .google.protobuf.FieldDescriptorProto.Label label = 4; + public boolean HasLabel() { + return result.HasLabel(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Label GetLabel() { + return result.GetLabel(); + } + public Builder SetLabel(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Label value) { + result.hasLabel = true; + result.label_ = value; + return this; + } + public Builder ClearLabel() { + result.hasLabel = false; + result.label_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Label.LABEL_OPTIONAL; + return this; + } + + // optional .google.protobuf.FieldDescriptorProto.Type type = 5; + public boolean HasType() { + return result.HasType(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Type GetType() { + return result.GetType(); + } + public Builder SetType(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Type value) { + result.hasType = true; + result.type_ = value; + return this; + } + public Builder ClearType() { + result.hasType = false; + result.type_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Type.TYPE_DOUBLE; + return this; + } + + // optional string type_name = 6; + public boolean HasTypeName { + get { return result.HasTypeName; } + } + public string TypeName { + get { return result.TypeName; } + set { + result.hasTypeName = true; + result.typeName_ = value; + } + } + public Builder ClearTypeName() { + result.hasTypeName = false; + result.typeName_ = ""; + return this; + } + + // optional string extendee = 2; + public boolean HasExtendee { + get { return result.HasExtendee; } + } + public string Extendee { + get { return result.Extendee; } + set { + result.hasExtendee = true; + result.extendee_ = value; + } + } + public Builder ClearExtendee() { + result.hasExtendee = false; + result.extendee_ = ""; + return this; + } + + // optional string default_value = 7; + public boolean HasDefaultValue { + get { return result.HasDefaultValue; } + } + public string DefaultValue { + get { return result.DefaultValue; } + set { + result.hasDefaultValue = true; + result.defaultValue_ = value; + } + } + public Builder ClearDefaultValue() { + result.hasDefaultValue = false; + result.defaultValue_ = ""; + return this; + } + + // optional .google.protobuf.FieldOptions options = 8; + public boolean hasOptions() { + return result.hasOptions(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions getOptions() { + return result.getOptions(); + } + public Builder setOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions value) { + result.hasOptions = true; + result.options_ = value; + return this; + } + public Builder setOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions.Builder builderForValue) { + result.hasOptions = true; + result.options_ = builderForValue.build(); + return this; + } + public Builder mergeOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions value) { + if (result.hasOptions() && + result.options_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions.getDefaultInstance()) { + result.options_ = + Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions.newBuilder(result.options_).mergeFrom(value).buildPartial(); + } else { + result.options_ = value; + } + result.hasOptions = true; + return this; + } + public Builder clearOptions() { + result.hasOptions = false; + result.options_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions.getDefaultInstance(); + return this; + } + } + } + + public sealed class EnumDescriptorProto : pb::GeneratedMessage { + // Use EnumDescriptorProto.newBuilder() to construct. + private EnumDescriptorProto() {} + + private static readonly EnumDescriptorProto defaultInstance = new EnumDescriptorProto(); + public static EnumDescriptorProto DefaultInstance { + get { return defaultInstance; } + } + + public EnumDescriptorProto DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pb::Descriptors.Descriptor Descriptor { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_EnumDescriptorProto_descriptor; } + } + + protected pb::GeneratedMessage.FieldAccessorTable InternalGetFieldAccessorTable { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_EnumDescriptorProto_fieldAccessorTable; } + } + + // optional string name = 1; + private bool hasName; + private string name_ = ""; + public boolean HasName { + get { return hasName; } + } + public string Name { + get { return name_; } + } + + // repeated .google.protobuf.EnumValueDescriptorProto value = 2; + internal System.Collections.Generic.IList EmptyValue = + new System.Collections.ReadOnlyCollection (); + internal System.Collections.Generic.IList value_ = EmptyValue; + public System.Collections.Generic.IList ValueList { + get { return value_; } + } + public int ValueCount { get { return value_.Count; } } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto Value(int index) { + return value_ [index]; + } + + // optional .google.protobuf.EnumOptions options = 3; + private boolean hasOptions; + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions options_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions.getDefaultInstance(); + public boolean hasOptions() { return hasOptions; } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions getOptions() { return options_; } + + public final boolean isInitialized() { + return true; + } + + public void writeTo(pb::CodedOutputStream output) { + if (hasName()) { + output.writeString(1, getName()); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto element in GetValueList()) { + output.writeMessage(2, element); + } + if (hasOptions()) { + output.writeMessage(3, getOptions()); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (hasName()) { + size += pb::CodedOutputStream + .computeStringSize(1, getName()); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto element in GetValueList()) { + size += pb::CodedOutputStream + .computeMessageSize(2, element); + } + if (hasOptions()) { + size += pb::CodedOutputStream + .computeMessageSize(3, getOptions()); + } + size += UnknownFieldsSerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto parseFrom(pb::ByteString data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto parseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto parseFrom(byte[] data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto parseFrom(global::System.IO.Stream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto parseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto parseFrom(pb::CodedInputStream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto parseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + + public static Builder newBuilder() { return new Builder(); } + public Builder newBuilderForType() { return new Builder(); } + public static Builder newBuilder(Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto prototype) { + return new Builder().mergeFrom(prototype); + } + + public sealed class Builder : pb::GeneratedMessage.Builder { + // Construct using Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.newBuilder() + private Builder() {} + + Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto(); + + protected Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto internalGetResult() { + return result; + } + + public Builder clear() { + result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto(); + return this; + } + + public Builder clone() { + return new Builder().mergeFrom(result); + } + + public pb::Descriptors.Descriptor + getDescriptorForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.getDescriptor(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto getDefaultInstanceForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.getDefaultInstance(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto build() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result); + } + return buildPartial(); + } + + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto buildParsed() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result).asInvalidProtocolBufferException(); + } + return buildPartial(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto buildPartial() { + if (result.value_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto.EmptyValue) { + result.value_ = + result.value_.AsReadOnly (); + } + Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto returnMe = result; + result = null; + return returnMe; + } + + public Builder mergeFrom(pb::Message other) { + if (other instanceof Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto) { + return mergeFrom((Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto other) { + if (other == Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.getDefaultInstance()) return this; + if (other.hasName()) { + setName(other.getName()); + } + if (!other.value_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto.EmptyValue) { + if (result.value_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto.EmptyValue) { + result.value_ = new System.Collections.Generic.List(); + } + result.value_.AddCollection(other.value_); + } + if (other.hasOptions()) { + mergeOptions(other.getOptions()); + } + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public Builder mergeFrom( + pb::CodedInputStream input) { + return mergeFrom(input, + pb::ExtensionRegistry.getEmptyRegistry()); + } + + public Builder mergeFrom( + pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.newBuilder( + this.getUnknownFields()); + while (true) { + int tag = input.readTag(); + switch (tag) { + case 0: + this.setUnknownFields(unknownFields.build()); + return this; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.setUnknownFields(unknownFields.build()); + return this; + } + break; + } + case 10: { + setName(input.readString()); + break; + } + case 18: { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto.Builder subBuilder = Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto.newBuilder(); + input.readMessage(subBuilder, extensionRegistry); + AddValue(subBuilder.buildPartial()); + break; + } + case 26: { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions.Builder subBuilder = Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions.newBuilder(); + if (hasOptions()) { + subBuilder.mergeFrom(getOptions()); + } + input.readMessage(subBuilder, extensionRegistry); + setOptions(subBuilder.buildPartial()); + break; + } + } + } + } + + + // optional string name = 1; + public boolean HasName { + get { return result.HasName; } + } + public string Name { + get { return result.Name; } + set { + result.hasName = true; + result.name_ = value; + } + } + public Builder ClearName() { + result.hasName = false; + result.name_ = ""; + return this; + } + + // repeated .google.protobuf.EnumValueDescriptorProto value = 2; + public System.Collections.Generic.IList GetValueList() { + if (result.value_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto.EmptyValue) + return result.value; + return result.value_.AsReadOnly (); + } + public int GetValueCount() { + return result.GetValueCount(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto GetValue(int index) { + return result.GetValue(index); + } + public Builder SetValue(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto value) { + result.value_ [index] = value; + return this; + } + public Builder SetValue(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto.Builder builderForValue) { + result.value_ [index] = builderForValue.build(); + return this; + } + public Builder AddValue(Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto value) { + if (result.value == Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto.EmptyValue) + result.value = new System.Collections.Generic.List(); + result.value_.Add(value); + return this; + } + public Builder AddValue(Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto.Builder builderForValue) { + if (result.value == Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto.EmptyValue) + result.value = new System.Collections.Generic.List(); + result.value_.Add(builderForValue.build()); + return this; + } + public Builder AddAllValue( + global::System.Collections.Generic.IEnumerable values) where T : Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto { + if (result.value == Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto.EmptyValue) + result.value = new System.Collections.Generic.List(); + result.value_.AddEnumerable (values); + return this; + } + public Builder ClearValue() { + result.value_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto.EmptyValue; + return this; + } + + // optional .google.protobuf.EnumOptions options = 3; + public boolean hasOptions() { + return result.hasOptions(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions getOptions() { + return result.getOptions(); + } + public Builder setOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions value) { + result.hasOptions = true; + result.options_ = value; + return this; + } + public Builder setOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions.Builder builderForValue) { + result.hasOptions = true; + result.options_ = builderForValue.build(); + return this; + } + public Builder mergeOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions value) { + if (result.hasOptions() && + result.options_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions.getDefaultInstance()) { + result.options_ = + Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions.newBuilder(result.options_).mergeFrom(value).buildPartial(); + } else { + result.options_ = value; + } + result.hasOptions = true; + return this; + } + public Builder clearOptions() { + result.hasOptions = false; + result.options_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions.getDefaultInstance(); + return this; + } + } + } + + public sealed class EnumValueDescriptorProto : pb::GeneratedMessage { + // Use EnumValueDescriptorProto.newBuilder() to construct. + private EnumValueDescriptorProto() {} + + private static readonly EnumValueDescriptorProto defaultInstance = new EnumValueDescriptorProto(); + public static EnumValueDescriptorProto DefaultInstance { + get { return defaultInstance; } + } + + public EnumValueDescriptorProto DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pb::Descriptors.Descriptor Descriptor { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_EnumValueDescriptorProto_descriptor; } + } + + protected pb::GeneratedMessage.FieldAccessorTable InternalGetFieldAccessorTable { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_EnumValueDescriptorProto_fieldAccessorTable; } + } + + // optional string name = 1; + private bool hasName; + private string name_ = ""; + public boolean HasName { + get { return hasName; } + } + public string Name { + get { return name_; } + } + + // optional int32 number = 2; + private bool hasNumber; + private int number_ = 0; + public boolean HasNumber { + get { return hasNumber; } + } + public int Number { + get { return number_; } + } + + // optional .google.protobuf.EnumValueOptions options = 3; + private boolean hasOptions; + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions options_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions.getDefaultInstance(); + public boolean hasOptions() { return hasOptions; } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions getOptions() { return options_; } + + public final boolean isInitialized() { + return true; + } + + public void writeTo(pb::CodedOutputStream output) { + if (hasName()) { + output.writeString(1, getName()); + } + if (hasNumber()) { + output.writeInt32(2, getNumber()); + } + if (hasOptions()) { + output.writeMessage(3, getOptions()); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (hasName()) { + size += pb::CodedOutputStream + .computeStringSize(1, getName()); + } + if (hasNumber()) { + size += pb::CodedOutputStream + .computeInt32Size(2, getNumber()); + } + if (hasOptions()) { + size += pb::CodedOutputStream + .computeMessageSize(3, getOptions()); + } + size += UnknownFieldsSerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto parseFrom(pb::ByteString data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto parseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto parseFrom(byte[] data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto parseFrom(global::System.IO.Stream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto parseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto parseFrom(pb::CodedInputStream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto parseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + + public static Builder newBuilder() { return new Builder(); } + public Builder newBuilderForType() { return new Builder(); } + public static Builder newBuilder(Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto prototype) { + return new Builder().mergeFrom(prototype); + } + + public sealed class Builder : pb::GeneratedMessage.Builder { + // Construct using Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto.newBuilder() + private Builder() {} + + Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto(); + + protected Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto internalGetResult() { + return result; + } + + public Builder clear() { + result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto(); + return this; + } + + public Builder clone() { + return new Builder().mergeFrom(result); + } + + public pb::Descriptors.Descriptor + getDescriptorForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto.getDescriptor(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto getDefaultInstanceForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto.getDefaultInstance(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto build() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result); + } + return buildPartial(); + } + + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto buildParsed() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result).asInvalidProtocolBufferException(); + } + return buildPartial(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto buildPartial() { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto returnMe = result; + result = null; + return returnMe; + } + + public Builder mergeFrom(pb::Message other) { + if (other instanceof Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto) { + return mergeFrom((Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto other) { + if (other == Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto.getDefaultInstance()) return this; + if (other.hasName()) { + setName(other.getName()); + } + if (other.hasNumber()) { + setNumber(other.getNumber()); + } + if (other.hasOptions()) { + mergeOptions(other.getOptions()); + } + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public Builder mergeFrom( + pb::CodedInputStream input) { + return mergeFrom(input, + pb::ExtensionRegistry.getEmptyRegistry()); + } + + public Builder mergeFrom( + pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.newBuilder( + this.getUnknownFields()); + while (true) { + int tag = input.readTag(); + switch (tag) { + case 0: + this.setUnknownFields(unknownFields.build()); + return this; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.setUnknownFields(unknownFields.build()); + return this; + } + break; + } + case 10: { + setName(input.readString()); + break; + } + case 16: { + setNumber(input.readInt32()); + break; + } + case 26: { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions.Builder subBuilder = Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions.newBuilder(); + if (hasOptions()) { + subBuilder.mergeFrom(getOptions()); + } + input.readMessage(subBuilder, extensionRegistry); + setOptions(subBuilder.buildPartial()); + break; + } + } + } + } + + + // optional string name = 1; + public boolean HasName { + get { return result.HasName; } + } + public string Name { + get { return result.Name; } + set { + result.hasName = true; + result.name_ = value; + } + } + public Builder ClearName() { + result.hasName = false; + result.name_ = ""; + return this; + } + + // optional int32 number = 2; + public boolean HasNumber { + get { return result.HasNumber; } + } + public int Number { + get { return result.Number; } + set { + result.hasNumber = true; + result.number_ = value; + } + } + public Builder ClearNumber() { + result.hasNumber = false; + result.number_ = 0; + return this; + } + + // optional .google.protobuf.EnumValueOptions options = 3; + public boolean hasOptions() { + return result.hasOptions(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions getOptions() { + return result.getOptions(); + } + public Builder setOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions value) { + result.hasOptions = true; + result.options_ = value; + return this; + } + public Builder setOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions.Builder builderForValue) { + result.hasOptions = true; + result.options_ = builderForValue.build(); + return this; + } + public Builder mergeOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions value) { + if (result.hasOptions() && + result.options_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions.getDefaultInstance()) { + result.options_ = + Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions.newBuilder(result.options_).mergeFrom(value).buildPartial(); + } else { + result.options_ = value; + } + result.hasOptions = true; + return this; + } + public Builder clearOptions() { + result.hasOptions = false; + result.options_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions.getDefaultInstance(); + return this; + } + } + } + + public sealed class ServiceDescriptorProto : pb::GeneratedMessage { + // Use ServiceDescriptorProto.newBuilder() to construct. + private ServiceDescriptorProto() {} + + private static readonly ServiceDescriptorProto defaultInstance = new ServiceDescriptorProto(); + public static ServiceDescriptorProto DefaultInstance { + get { return defaultInstance; } + } + + public ServiceDescriptorProto DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pb::Descriptors.Descriptor Descriptor { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_ServiceDescriptorProto_descriptor; } + } + + protected pb::GeneratedMessage.FieldAccessorTable InternalGetFieldAccessorTable { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_ServiceDescriptorProto_fieldAccessorTable; } + } + + // optional string name = 1; + private bool hasName; + private string name_ = ""; + public boolean HasName { + get { return hasName; } + } + public string Name { + get { return name_; } + } + + // repeated .google.protobuf.MethodDescriptorProto method = 2; + internal System.Collections.Generic.IList EmptyMethod = + new System.Collections.ReadOnlyCollection (); + internal System.Collections.Generic.IList method_ = EmptyMethod; + public System.Collections.Generic.IList MethodList { + get { return method_; } + } + public int MethodCount { get { return method_.Count; } } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto Method(int index) { + return method_ [index]; + } + + // optional .google.protobuf.ServiceOptions options = 3; + private boolean hasOptions; + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions options_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions.getDefaultInstance(); + public boolean hasOptions() { return hasOptions; } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions getOptions() { return options_; } + + public final boolean isInitialized() { + return true; + } + + public void writeTo(pb::CodedOutputStream output) { + if (hasName()) { + output.writeString(1, getName()); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto element in GetMethodList()) { + output.writeMessage(2, element); + } + if (hasOptions()) { + output.writeMessage(3, getOptions()); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (hasName()) { + size += pb::CodedOutputStream + .computeStringSize(1, getName()); + } + foreach (Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto element in GetMethodList()) { + size += pb::CodedOutputStream + .computeMessageSize(2, element); + } + if (hasOptions()) { + size += pb::CodedOutputStream + .computeMessageSize(3, getOptions()); + } + size += UnknownFieldsSerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto parseFrom(pb::ByteString data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto parseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto parseFrom(byte[] data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto parseFrom(global::System.IO.Stream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto parseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto parseFrom(pb::CodedInputStream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto parseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + + public static Builder newBuilder() { return new Builder(); } + public Builder newBuilderForType() { return new Builder(); } + public static Builder newBuilder(Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto prototype) { + return new Builder().mergeFrom(prototype); + } + + public sealed class Builder : pb::GeneratedMessage.Builder { + // Construct using Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto.newBuilder() + private Builder() {} + + Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto(); + + protected Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto internalGetResult() { + return result; + } + + public Builder clear() { + result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto(); + return this; + } + + public Builder clone() { + return new Builder().mergeFrom(result); + } + + public pb::Descriptors.Descriptor + getDescriptorForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto.getDescriptor(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto getDefaultInstanceForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto.getDefaultInstance(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto build() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result); + } + return buildPartial(); + } + + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto buildParsed() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result).asInvalidProtocolBufferException(); + } + return buildPartial(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto buildPartial() { + if (result.method_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto.EmptyMethod) { + result.method_ = + result.method_.AsReadOnly (); + } + Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto returnMe = result; + result = null; + return returnMe; + } + + public Builder mergeFrom(pb::Message other) { + if (other instanceof Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto) { + return mergeFrom((Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto other) { + if (other == Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto.getDefaultInstance()) return this; + if (other.hasName()) { + setName(other.getName()); + } + if (!other.method_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto.EmptyMethod) { + if (result.method_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto.EmptyMethod) { + result.method_ = new System.Collections.Generic.List(); + } + result.method_.AddCollection(other.method_); + } + if (other.hasOptions()) { + mergeOptions(other.getOptions()); + } + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public Builder mergeFrom( + pb::CodedInputStream input) { + return mergeFrom(input, + pb::ExtensionRegistry.getEmptyRegistry()); + } + + public Builder mergeFrom( + pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.newBuilder( + this.getUnknownFields()); + while (true) { + int tag = input.readTag(); + switch (tag) { + case 0: + this.setUnknownFields(unknownFields.build()); + return this; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.setUnknownFields(unknownFields.build()); + return this; + } + break; + } + case 10: { + setName(input.readString()); + break; + } + case 18: { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto.Builder subBuilder = Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto.newBuilder(); + input.readMessage(subBuilder, extensionRegistry); + AddMethod(subBuilder.buildPartial()); + break; + } + case 26: { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions.Builder subBuilder = Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions.newBuilder(); + if (hasOptions()) { + subBuilder.mergeFrom(getOptions()); + } + input.readMessage(subBuilder, extensionRegistry); + setOptions(subBuilder.buildPartial()); + break; + } + } + } + } + + + // optional string name = 1; + public boolean HasName { + get { return result.HasName; } + } + public string Name { + get { return result.Name; } + set { + result.hasName = true; + result.name_ = value; + } + } + public Builder ClearName() { + result.hasName = false; + result.name_ = ""; + return this; + } + + // repeated .google.protobuf.MethodDescriptorProto method = 2; + public System.Collections.Generic.IList GetMethodList() { + if (result.method_ == Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto.EmptyMethod) + return result.method; + return result.method_.AsReadOnly (); + } + public int GetMethodCount() { + return result.GetMethodCount(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto GetMethod(int index) { + return result.GetMethod(index); + } + public Builder SetMethod(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto value) { + result.method_ [index] = value; + return this; + } + public Builder SetMethod(int index, Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto.Builder builderForValue) { + result.method_ [index] = builderForValue.build(); + return this; + } + public Builder AddMethod(Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto value) { + if (result.method == Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto.EmptyMethod) + result.method = new System.Collections.Generic.List(); + result.method_.Add(value); + return this; + } + public Builder AddMethod(Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto.Builder builderForValue) { + if (result.method == Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto.EmptyMethod) + result.method = new System.Collections.Generic.List(); + result.method_.Add(builderForValue.build()); + return this; + } + public Builder AddAllMethod( + global::System.Collections.Generic.IEnumerable values) where T : Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto { + if (result.method == Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto.EmptyMethod) + result.method = new System.Collections.Generic.List(); + result.method_.AddEnumerable (values); + return this; + } + public Builder ClearMethod() { + result.method_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto.EmptyMethod; + return this; + } + + // optional .google.protobuf.ServiceOptions options = 3; + public boolean hasOptions() { + return result.hasOptions(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions getOptions() { + return result.getOptions(); + } + public Builder setOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions value) { + result.hasOptions = true; + result.options_ = value; + return this; + } + public Builder setOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions.Builder builderForValue) { + result.hasOptions = true; + result.options_ = builderForValue.build(); + return this; + } + public Builder mergeOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions value) { + if (result.hasOptions() && + result.options_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions.getDefaultInstance()) { + result.options_ = + Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions.newBuilder(result.options_).mergeFrom(value).buildPartial(); + } else { + result.options_ = value; + } + result.hasOptions = true; + return this; + } + public Builder clearOptions() { + result.hasOptions = false; + result.options_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions.getDefaultInstance(); + return this; + } + } + } + + public sealed class MethodDescriptorProto : pb::GeneratedMessage { + // Use MethodDescriptorProto.newBuilder() to construct. + private MethodDescriptorProto() {} + + private static readonly MethodDescriptorProto defaultInstance = new MethodDescriptorProto(); + public static MethodDescriptorProto DefaultInstance { + get { return defaultInstance; } + } + + public MethodDescriptorProto DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pb::Descriptors.Descriptor Descriptor { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_MethodDescriptorProto_descriptor; } + } + + protected pb::GeneratedMessage.FieldAccessorTable InternalGetFieldAccessorTable { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_MethodDescriptorProto_fieldAccessorTable; } + } + + // optional string name = 1; + private bool hasName; + private string name_ = ""; + public boolean HasName { + get { return hasName; } + } + public string Name { + get { return name_; } + } + + // optional string input_type = 2; + private bool hasInputType; + private string inputType_ = ""; + public boolean HasInputType { + get { return hasInputType; } + } + public string InputType { + get { return inputType_; } + } + + // optional string output_type = 3; + private bool hasOutputType; + private string outputType_ = ""; + public boolean HasOutputType { + get { return hasOutputType; } + } + public string OutputType { + get { return outputType_; } + } + + // optional .google.protobuf.MethodOptions options = 4; + private boolean hasOptions; + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions options_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions.getDefaultInstance(); + public boolean hasOptions() { return hasOptions; } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions getOptions() { return options_; } + + public final boolean isInitialized() { + return true; + } + + public void writeTo(pb::CodedOutputStream output) { + if (hasName()) { + output.writeString(1, getName()); + } + if (hasInputType()) { + output.writeString(2, getInputType()); + } + if (hasOutputType()) { + output.writeString(3, getOutputType()); + } + if (hasOptions()) { + output.writeMessage(4, getOptions()); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (hasName()) { + size += pb::CodedOutputStream + .computeStringSize(1, getName()); + } + if (hasInputType()) { + size += pb::CodedOutputStream + .computeStringSize(2, getInputType()); + } + if (hasOutputType()) { + size += pb::CodedOutputStream + .computeStringSize(3, getOutputType()); + } + if (hasOptions()) { + size += pb::CodedOutputStream + .computeMessageSize(4, getOptions()); + } + size += UnknownFieldsSerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto parseFrom(pb::ByteString data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto parseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto parseFrom(byte[] data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto parseFrom(global::System.IO.Stream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto parseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto parseFrom(pb::CodedInputStream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto parseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + + public static Builder newBuilder() { return new Builder(); } + public Builder newBuilderForType() { return new Builder(); } + public static Builder newBuilder(Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto prototype) { + return new Builder().mergeFrom(prototype); + } + + public sealed class Builder : pb::GeneratedMessage.Builder { + // Construct using Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto.newBuilder() + private Builder() {} + + Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto(); + + protected Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto internalGetResult() { + return result; + } + + public Builder clear() { + result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto(); + return this; + } + + public Builder clone() { + return new Builder().mergeFrom(result); + } + + public pb::Descriptors.Descriptor + getDescriptorForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto.getDescriptor(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto getDefaultInstanceForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto.getDefaultInstance(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto build() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result); + } + return buildPartial(); + } + + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto buildParsed() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result).asInvalidProtocolBufferException(); + } + return buildPartial(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto buildPartial() { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto returnMe = result; + result = null; + return returnMe; + } + + public Builder mergeFrom(pb::Message other) { + if (other instanceof Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto) { + return mergeFrom((Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto other) { + if (other == Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto.getDefaultInstance()) return this; + if (other.hasName()) { + setName(other.getName()); + } + if (other.hasInputType()) { + setInputType(other.getInputType()); + } + if (other.hasOutputType()) { + setOutputType(other.getOutputType()); + } + if (other.hasOptions()) { + mergeOptions(other.getOptions()); + } + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public Builder mergeFrom( + pb::CodedInputStream input) { + return mergeFrom(input, + pb::ExtensionRegistry.getEmptyRegistry()); + } + + public Builder mergeFrom( + pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.newBuilder( + this.getUnknownFields()); + while (true) { + int tag = input.readTag(); + switch (tag) { + case 0: + this.setUnknownFields(unknownFields.build()); + return this; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.setUnknownFields(unknownFields.build()); + return this; + } + break; + } + case 10: { + setName(input.readString()); + break; + } + case 18: { + setInputType(input.readString()); + break; + } + case 26: { + setOutputType(input.readString()); + break; + } + case 34: { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions.Builder subBuilder = Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions.newBuilder(); + if (hasOptions()) { + subBuilder.mergeFrom(getOptions()); + } + input.readMessage(subBuilder, extensionRegistry); + setOptions(subBuilder.buildPartial()); + break; + } + } + } + } + + + // optional string name = 1; + public boolean HasName { + get { return result.HasName; } + } + public string Name { + get { return result.Name; } + set { + result.hasName = true; + result.name_ = value; + } + } + public Builder ClearName() { + result.hasName = false; + result.name_ = ""; + return this; + } + + // optional string input_type = 2; + public boolean HasInputType { + get { return result.HasInputType; } + } + public string InputType { + get { return result.InputType; } + set { + result.hasInputType = true; + result.inputType_ = value; + } + } + public Builder ClearInputType() { + result.hasInputType = false; + result.inputType_ = ""; + return this; + } + + // optional string output_type = 3; + public boolean HasOutputType { + get { return result.HasOutputType; } + } + public string OutputType { + get { return result.OutputType; } + set { + result.hasOutputType = true; + result.outputType_ = value; + } + } + public Builder ClearOutputType() { + result.hasOutputType = false; + result.outputType_ = ""; + return this; + } + + // optional .google.protobuf.MethodOptions options = 4; + public boolean hasOptions() { + return result.hasOptions(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions getOptions() { + return result.getOptions(); + } + public Builder setOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions value) { + result.hasOptions = true; + result.options_ = value; + return this; + } + public Builder setOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions.Builder builderForValue) { + result.hasOptions = true; + result.options_ = builderForValue.build(); + return this; + } + public Builder mergeOptions(Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions value) { + if (result.hasOptions() && + result.options_ != Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions.getDefaultInstance()) { + result.options_ = + Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions.newBuilder(result.options_).mergeFrom(value).buildPartial(); + } else { + result.options_ = value; + } + result.hasOptions = true; + return this; + } + public Builder clearOptions() { + result.hasOptions = false; + result.options_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions.getDefaultInstance(); + return this; + } + } + } + + public sealed class FileOptions : pb::GeneratedMessage { + // Use FileOptions.newBuilder() to construct. + private FileOptions() {} + + private static readonly FileOptions defaultInstance = new FileOptions(); + public static FileOptions DefaultInstance { + get { return defaultInstance; } + } + + public FileOptions DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pb::Descriptors.Descriptor Descriptor { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_FileOptions_descriptor; } + } + + protected pb::GeneratedMessage.FieldAccessorTable InternalGetFieldAccessorTable { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_FileOptions_fieldAccessorTable; } + } + + public enum OptimizeMode { + [pb::DescriptorIndex(0)] + SPEED = 1, + [pb::DescriptorIndex(1)] + CODE_SIZE = 2, + } + + // optional string java_package = 1; + private bool hasJavaPackage; + private string javaPackage_ = ""; + public boolean HasJavaPackage { + get { return hasJavaPackage; } + } + public string JavaPackage { + get { return javaPackage_; } + } + + // optional string java_outer_classname = 8; + private bool hasJavaOuterClassname; + private string javaOuterClassname_ = ""; + public boolean HasJavaOuterClassname { + get { return hasJavaOuterClassname; } + } + public string JavaOuterClassname { + get { return javaOuterClassname_; } + } + + // optional bool java_multiple_files = 10 [default = false]; + private bool hasJavaMultipleFiles; + private boolean javaMultipleFiles_ = false; + public boolean HasJavaMultipleFiles { + get { return hasJavaMultipleFiles; } + } + public boolean JavaMultipleFiles { + get { return javaMultipleFiles_; } + } + + // optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = CODE_SIZE]; + private boolean hasOptimizeFor; + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions.OptimizeMode optimizeFor_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions.OptimizeMode.CODE_SIZE; + public boolean HasOptimizeFor() { return hasOptimizeFor; } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions.OptimizeMode GetOptimizeFor() { return optimizeFor_; } + + // optional string csharp_namespace = 1000; + private bool hasCsharpNamespace; + private string csharpNamespace_ = ""; + public boolean HasCsharpNamespace { + get { return hasCsharpNamespace; } + } + public string CsharpNamespace { + get { return csharpNamespace_; } + } + + // optional string csharp_file_classname = 1001; + private bool hasCsharpFileClassname; + private string csharpFileClassname_ = ""; + public boolean HasCsharpFileClassname { + get { return hasCsharpFileClassname; } + } + public string CsharpFileClassname { + get { return csharpFileClassname_; } + } + + // optional bool csharp_multiple_files = 1002 [default = false]; + private bool hasCsharpMultipleFiles; + private boolean csharpMultipleFiles_ = false; + public boolean HasCsharpMultipleFiles { + get { return hasCsharpMultipleFiles; } + } + public boolean CsharpMultipleFiles { + get { return csharpMultipleFiles_; } + } + + // optional bool csharp_nest_classes = 1003 [default = false]; + private bool hasCsharpNestClasses; + private boolean csharpNestClasses_ = false; + public boolean HasCsharpNestClasses { + get { return hasCsharpNestClasses; } + } + public boolean CsharpNestClasses { + get { return csharpNestClasses_; } + } + + // optional bool csharp_public_classes = 1004 [default = true]; + private bool hasCsharpPublicClasses; + private boolean csharpPublicClasses_ = true; + public boolean HasCsharpPublicClasses { + get { return hasCsharpPublicClasses; } + } + public boolean CsharpPublicClasses { + get { return csharpPublicClasses_; } + } + + public final boolean isInitialized() { + return true; + } + + public void writeTo(pb::CodedOutputStream output) { + if (hasJavaPackage()) { + output.writeString(1, getJavaPackage()); + } + if (hasJavaOuterClassname()) { + output.writeString(8, getJavaOuterClassname()); + } + if (hasOptimizeFor()) { + output.writeEnum(9, getOptimizeFor().getNumber()); + } + if (hasJavaMultipleFiles()) { + output.writeBool(10, getJavaMultipleFiles()); + } + if (hasCsharpNamespace()) { + output.writeString(1000, getCsharpNamespace()); + } + if (hasCsharpFileClassname()) { + output.writeString(1001, getCsharpFileClassname()); + } + if (hasCsharpMultipleFiles()) { + output.writeBool(1002, getCsharpMultipleFiles()); + } + if (hasCsharpNestClasses()) { + output.writeBool(1003, getCsharpNestClasses()); + } + if (hasCsharpPublicClasses()) { + output.writeBool(1004, getCsharpPublicClasses()); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (hasJavaPackage()) { + size += pb::CodedOutputStream + .computeStringSize(1, getJavaPackage()); + } + if (hasJavaOuterClassname()) { + size += pb::CodedOutputStream + .computeStringSize(8, getJavaOuterClassname()); + } + if (hasOptimizeFor()) { + size += pb::CodedOutputStream + .computeEnumSize(9, getOptimizeFor().getNumber()); + } + if (hasJavaMultipleFiles()) { + size += pb::CodedOutputStream + .computeBoolSize(10, getJavaMultipleFiles()); + } + if (hasCsharpNamespace()) { + size += pb::CodedOutputStream + .computeStringSize(1000, getCsharpNamespace()); + } + if (hasCsharpFileClassname()) { + size += pb::CodedOutputStream + .computeStringSize(1001, getCsharpFileClassname()); + } + if (hasCsharpMultipleFiles()) { + size += pb::CodedOutputStream + .computeBoolSize(1002, getCsharpMultipleFiles()); + } + if (hasCsharpNestClasses()) { + size += pb::CodedOutputStream + .computeBoolSize(1003, getCsharpNestClasses()); + } + if (hasCsharpPublicClasses()) { + size += pb::CodedOutputStream + .computeBoolSize(1004, getCsharpPublicClasses()); + } + size += UnknownFieldsSerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions parseFrom(pb::ByteString data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions parseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions parseFrom(byte[] data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions parseFrom(global::System.IO.Stream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions parseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions parseFrom(pb::CodedInputStream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions parseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + + public static Builder newBuilder() { return new Builder(); } + public Builder newBuilderForType() { return new Builder(); } + public static Builder newBuilder(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions prototype) { + return new Builder().mergeFrom(prototype); + } + + public sealed class Builder : pb::GeneratedMessage.Builder { + // Construct using Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions.newBuilder() + private Builder() {} + + Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions(); + + protected Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions internalGetResult() { + return result; + } + + public Builder clear() { + result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions(); + return this; + } + + public Builder clone() { + return new Builder().mergeFrom(result); + } + + public pb::Descriptors.Descriptor + getDescriptorForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions.getDescriptor(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions getDefaultInstanceForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions.getDefaultInstance(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions build() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result); + } + return buildPartial(); + } + + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions buildParsed() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result).asInvalidProtocolBufferException(); + } + return buildPartial(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions buildPartial() { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions returnMe = result; + result = null; + return returnMe; + } + + public Builder mergeFrom(pb::Message other) { + if (other instanceof Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions) { + return mergeFrom((Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions other) { + if (other == Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions.getDefaultInstance()) return this; + if (other.hasJavaPackage()) { + setJavaPackage(other.getJavaPackage()); + } + if (other.hasJavaOuterClassname()) { + setJavaOuterClassname(other.getJavaOuterClassname()); + } + if (other.hasJavaMultipleFiles()) { + setJavaMultipleFiles(other.getJavaMultipleFiles()); + } + if (other.hasOptimizeFor()) { + setOptimizeFor(other.getOptimizeFor()); + } + if (other.hasCsharpNamespace()) { + setCsharpNamespace(other.getCsharpNamespace()); + } + if (other.hasCsharpFileClassname()) { + setCsharpFileClassname(other.getCsharpFileClassname()); + } + if (other.hasCsharpMultipleFiles()) { + setCsharpMultipleFiles(other.getCsharpMultipleFiles()); + } + if (other.hasCsharpNestClasses()) { + setCsharpNestClasses(other.getCsharpNestClasses()); + } + if (other.hasCsharpPublicClasses()) { + setCsharpPublicClasses(other.getCsharpPublicClasses()); + } + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public Builder mergeFrom( + pb::CodedInputStream input) { + return mergeFrom(input, + pb::ExtensionRegistry.getEmptyRegistry()); + } + + public Builder mergeFrom( + pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.newBuilder( + this.getUnknownFields()); + while (true) { + int tag = input.readTag(); + switch (tag) { + case 0: + this.setUnknownFields(unknownFields.build()); + return this; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.setUnknownFields(unknownFields.build()); + return this; + } + break; + } + case 10: { + setJavaPackage(input.readString()); + break; + } + case 66: { + setJavaOuterClassname(input.readString()); + break; + } + case 72: { + int rawValue = input.readEnum(); + Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions.OptimizeMode value = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions.OptimizeMode.valueOf(rawValue); + if (value == null) { + unknownFields.mergeVarintField(9, rawValue); + } else { + setOptimizeFor(value); + } + break; + } + case 80: { + setJavaMultipleFiles(input.readBool()); + break; + } + case 8002: { + setCsharpNamespace(input.readString()); + break; + } + case 8010: { + setCsharpFileClassname(input.readString()); + break; + } + case 8016: { + setCsharpMultipleFiles(input.readBool()); + break; + } + case 8024: { + setCsharpNestClasses(input.readBool()); + break; + } + case 8032: { + setCsharpPublicClasses(input.readBool()); + break; + } + } + } + } + + + // optional string java_package = 1; + public boolean HasJavaPackage { + get { return result.HasJavaPackage; } + } + public string JavaPackage { + get { return result.JavaPackage; } + set { + result.hasJavaPackage = true; + result.javaPackage_ = value; + } + } + public Builder ClearJavaPackage() { + result.hasJavaPackage = false; + result.javaPackage_ = ""; + return this; + } + + // optional string java_outer_classname = 8; + public boolean HasJavaOuterClassname { + get { return result.HasJavaOuterClassname; } + } + public string JavaOuterClassname { + get { return result.JavaOuterClassname; } + set { + result.hasJavaOuterClassname = true; + result.javaOuterClassname_ = value; + } + } + public Builder ClearJavaOuterClassname() { + result.hasJavaOuterClassname = false; + result.javaOuterClassname_ = ""; + return this; + } + + // optional bool java_multiple_files = 10 [default = false]; + public boolean HasJavaMultipleFiles { + get { return result.HasJavaMultipleFiles; } + } + public boolean JavaMultipleFiles { + get { return result.JavaMultipleFiles; } + set { + result.hasJavaMultipleFiles = true; + result.javaMultipleFiles_ = value; + } + } + public Builder ClearJavaMultipleFiles() { + result.hasJavaMultipleFiles = false; + result.javaMultipleFiles_ = false; + return this; + } + + // optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = CODE_SIZE]; + public boolean HasOptimizeFor() { + return result.HasOptimizeFor(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions.OptimizeMode GetOptimizeFor() { + return result.GetOptimizeFor(); + } + public Builder SetOptimizeFor(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions.OptimizeMode value) { + result.hasOptimizeFor = true; + result.optimizeFor_ = value; + return this; + } + public Builder ClearOptimizeFor() { + result.hasOptimizeFor = false; + result.optimizeFor_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions.OptimizeMode.CODE_SIZE; + return this; + } + + // optional string csharp_namespace = 1000; + public boolean HasCsharpNamespace { + get { return result.HasCsharpNamespace; } + } + public string CsharpNamespace { + get { return result.CsharpNamespace; } + set { + result.hasCsharpNamespace = true; + result.csharpNamespace_ = value; + } + } + public Builder ClearCsharpNamespace() { + result.hasCsharpNamespace = false; + result.csharpNamespace_ = ""; + return this; + } + + // optional string csharp_file_classname = 1001; + public boolean HasCsharpFileClassname { + get { return result.HasCsharpFileClassname; } + } + public string CsharpFileClassname { + get { return result.CsharpFileClassname; } + set { + result.hasCsharpFileClassname = true; + result.csharpFileClassname_ = value; + } + } + public Builder ClearCsharpFileClassname() { + result.hasCsharpFileClassname = false; + result.csharpFileClassname_ = ""; + return this; + } + + // optional bool csharp_multiple_files = 1002 [default = false]; + public boolean HasCsharpMultipleFiles { + get { return result.HasCsharpMultipleFiles; } + } + public boolean CsharpMultipleFiles { + get { return result.CsharpMultipleFiles; } + set { + result.hasCsharpMultipleFiles = true; + result.csharpMultipleFiles_ = value; + } + } + public Builder ClearCsharpMultipleFiles() { + result.hasCsharpMultipleFiles = false; + result.csharpMultipleFiles_ = false; + return this; + } + + // optional bool csharp_nest_classes = 1003 [default = false]; + public boolean HasCsharpNestClasses { + get { return result.HasCsharpNestClasses; } + } + public boolean CsharpNestClasses { + get { return result.CsharpNestClasses; } + set { + result.hasCsharpNestClasses = true; + result.csharpNestClasses_ = value; + } + } + public Builder ClearCsharpNestClasses() { + result.hasCsharpNestClasses = false; + result.csharpNestClasses_ = false; + return this; + } + + // optional bool csharp_public_classes = 1004 [default = true]; + public boolean HasCsharpPublicClasses { + get { return result.HasCsharpPublicClasses; } + } + public boolean CsharpPublicClasses { + get { return result.CsharpPublicClasses; } + set { + result.hasCsharpPublicClasses = true; + result.csharpPublicClasses_ = value; + } + } + public Builder ClearCsharpPublicClasses() { + result.hasCsharpPublicClasses = false; + result.csharpPublicClasses_ = true; + return this; + } + } + } + + public sealed class MessageOptions : pb::GeneratedMessage { + // Use MessageOptions.newBuilder() to construct. + private MessageOptions() {} + + private static readonly MessageOptions defaultInstance = new MessageOptions(); + public static MessageOptions DefaultInstance { + get { return defaultInstance; } + } + + public MessageOptions DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pb::Descriptors.Descriptor Descriptor { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_MessageOptions_descriptor; } + } + + protected pb::GeneratedMessage.FieldAccessorTable InternalGetFieldAccessorTable { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_MessageOptions_fieldAccessorTable; } + } + + // optional bool message_set_wire_format = 1 [default = false]; + private bool hasMessageSetWireFormat; + private boolean messageSetWireFormat_ = false; + public boolean HasMessageSetWireFormat { + get { return hasMessageSetWireFormat; } + } + public boolean MessageSetWireFormat { + get { return messageSetWireFormat_; } + } + + public final boolean isInitialized() { + return true; + } + + public void writeTo(pb::CodedOutputStream output) { + if (hasMessageSetWireFormat()) { + output.writeBool(1, getMessageSetWireFormat()); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (hasMessageSetWireFormat()) { + size += pb::CodedOutputStream + .computeBoolSize(1, getMessageSetWireFormat()); + } + size += UnknownFieldsSerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions parseFrom(pb::ByteString data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions parseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions parseFrom(byte[] data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions parseFrom(global::System.IO.Stream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions parseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions parseFrom(pb::CodedInputStream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions parseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + + public static Builder newBuilder() { return new Builder(); } + public Builder newBuilderForType() { return new Builder(); } + public static Builder newBuilder(Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions prototype) { + return new Builder().mergeFrom(prototype); + } + + public sealed class Builder : pb::GeneratedMessage.Builder { + // Construct using Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions.newBuilder() + private Builder() {} + + Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions(); + + protected Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions internalGetResult() { + return result; + } + + public Builder clear() { + result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions(); + return this; + } + + public Builder clone() { + return new Builder().mergeFrom(result); + } + + public pb::Descriptors.Descriptor + getDescriptorForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions.getDescriptor(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions getDefaultInstanceForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions.getDefaultInstance(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions build() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result); + } + return buildPartial(); + } + + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions buildParsed() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result).asInvalidProtocolBufferException(); + } + return buildPartial(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions buildPartial() { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions returnMe = result; + result = null; + return returnMe; + } + + public Builder mergeFrom(pb::Message other) { + if (other instanceof Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions) { + return mergeFrom((Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions other) { + if (other == Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions.getDefaultInstance()) return this; + if (other.hasMessageSetWireFormat()) { + setMessageSetWireFormat(other.getMessageSetWireFormat()); + } + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public Builder mergeFrom( + pb::CodedInputStream input) { + return mergeFrom(input, + pb::ExtensionRegistry.getEmptyRegistry()); + } + + public Builder mergeFrom( + pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.newBuilder( + this.getUnknownFields()); + while (true) { + int tag = input.readTag(); + switch (tag) { + case 0: + this.setUnknownFields(unknownFields.build()); + return this; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.setUnknownFields(unknownFields.build()); + return this; + } + break; + } + case 8: { + setMessageSetWireFormat(input.readBool()); + break; + } + } + } + } + + + // optional bool message_set_wire_format = 1 [default = false]; + public boolean HasMessageSetWireFormat { + get { return result.HasMessageSetWireFormat; } + } + public boolean MessageSetWireFormat { + get { return result.MessageSetWireFormat; } + set { + result.hasMessageSetWireFormat = true; + result.messageSetWireFormat_ = value; + } + } + public Builder ClearMessageSetWireFormat() { + result.hasMessageSetWireFormat = false; + result.messageSetWireFormat_ = false; + return this; + } + } + } + + public sealed class FieldOptions : pb::GeneratedMessage { + // Use FieldOptions.newBuilder() to construct. + private FieldOptions() {} + + private static readonly FieldOptions defaultInstance = new FieldOptions(); + public static FieldOptions DefaultInstance { + get { return defaultInstance; } + } + + public FieldOptions DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pb::Descriptors.Descriptor Descriptor { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_FieldOptions_descriptor; } + } + + protected pb::GeneratedMessage.FieldAccessorTable InternalGetFieldAccessorTable { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_FieldOptions_fieldAccessorTable; } + } + + public enum CType { + [pb::DescriptorIndex(0)] + CORD = 1, + [pb::DescriptorIndex(1)] + STRING_PIECE = 2, + } + + // optional .google.protobuf.FieldOptions.CType ctype = 1; + private boolean hasCtype; + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions.CType ctype_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions.CType.CORD; + public boolean HasCtype() { return hasCtype; } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions.CType GetCtype() { return ctype_; } + + // optional string experimental_map_key = 9; + private bool hasExperimentalMapKey; + private string experimentalMapKey_ = ""; + public boolean HasExperimentalMapKey { + get { return hasExperimentalMapKey; } + } + public string ExperimentalMapKey { + get { return experimentalMapKey_; } + } + + public final boolean isInitialized() { + return true; + } + + public void writeTo(pb::CodedOutputStream output) { + if (hasCtype()) { + output.writeEnum(1, getCtype().getNumber()); + } + if (hasExperimentalMapKey()) { + output.writeString(9, getExperimentalMapKey()); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (hasCtype()) { + size += pb::CodedOutputStream + .computeEnumSize(1, getCtype().getNumber()); + } + if (hasExperimentalMapKey()) { + size += pb::CodedOutputStream + .computeStringSize(9, getExperimentalMapKey()); + } + size += UnknownFieldsSerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions parseFrom(pb::ByteString data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions parseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions parseFrom(byte[] data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions parseFrom(global::System.IO.Stream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions parseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions parseFrom(pb::CodedInputStream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions parseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + + public static Builder newBuilder() { return new Builder(); } + public Builder newBuilderForType() { return new Builder(); } + public static Builder newBuilder(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions prototype) { + return new Builder().mergeFrom(prototype); + } + + public sealed class Builder : pb::GeneratedMessage.Builder { + // Construct using Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions.newBuilder() + private Builder() {} + + Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions(); + + protected Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions internalGetResult() { + return result; + } + + public Builder clear() { + result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions(); + return this; + } + + public Builder clone() { + return new Builder().mergeFrom(result); + } + + public pb::Descriptors.Descriptor + getDescriptorForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions.getDescriptor(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions getDefaultInstanceForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions.getDefaultInstance(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions build() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result); + } + return buildPartial(); + } + + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions buildParsed() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result).asInvalidProtocolBufferException(); + } + return buildPartial(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions buildPartial() { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions returnMe = result; + result = null; + return returnMe; + } + + public Builder mergeFrom(pb::Message other) { + if (other instanceof Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions) { + return mergeFrom((Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions other) { + if (other == Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions.getDefaultInstance()) return this; + if (other.hasCtype()) { + setCtype(other.getCtype()); + } + if (other.hasExperimentalMapKey()) { + setExperimentalMapKey(other.getExperimentalMapKey()); + } + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public Builder mergeFrom( + pb::CodedInputStream input) { + return mergeFrom(input, + pb::ExtensionRegistry.getEmptyRegistry()); + } + + public Builder mergeFrom( + pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.newBuilder( + this.getUnknownFields()); + while (true) { + int tag = input.readTag(); + switch (tag) { + case 0: + this.setUnknownFields(unknownFields.build()); + return this; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.setUnknownFields(unknownFields.build()); + return this; + } + break; + } + case 8: { + int rawValue = input.readEnum(); + Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions.CType value = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions.CType.valueOf(rawValue); + if (value == null) { + unknownFields.mergeVarintField(1, rawValue); + } else { + setCtype(value); + } + break; + } + case 74: { + setExperimentalMapKey(input.readString()); + break; + } + } + } + } + + + // optional .google.protobuf.FieldOptions.CType ctype = 1; + public boolean HasCtype() { + return result.HasCtype(); + } + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions.CType GetCtype() { + return result.GetCtype(); + } + public Builder SetCtype(Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions.CType value) { + result.hasCtype = true; + result.ctype_ = value; + return this; + } + public Builder ClearCtype() { + result.hasCtype = false; + result.ctype_ = Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions.CType.CORD; + return this; + } + + // optional string experimental_map_key = 9; + public boolean HasExperimentalMapKey { + get { return result.HasExperimentalMapKey; } + } + public string ExperimentalMapKey { + get { return result.ExperimentalMapKey; } + set { + result.hasExperimentalMapKey = true; + result.experimentalMapKey_ = value; + } + } + public Builder ClearExperimentalMapKey() { + result.hasExperimentalMapKey = false; + result.experimentalMapKey_ = ""; + return this; + } + } + } + + public sealed class EnumOptions : pb::GeneratedMessage { + // Use EnumOptions.newBuilder() to construct. + private EnumOptions() {} + + private static readonly EnumOptions defaultInstance = new EnumOptions(); + public static EnumOptions DefaultInstance { + get { return defaultInstance; } + } + + public EnumOptions DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pb::Descriptors.Descriptor Descriptor { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_EnumOptions_descriptor; } + } + + protected pb::GeneratedMessage.FieldAccessorTable InternalGetFieldAccessorTable { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_EnumOptions_fieldAccessorTable; } + } + + public final boolean isInitialized() { + return true; + } + + public void writeTo(pb::CodedOutputStream output) { + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + size += UnknownFieldsSerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions parseFrom(pb::ByteString data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions parseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions parseFrom(byte[] data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions parseFrom(global::System.IO.Stream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions parseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions parseFrom(pb::CodedInputStream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions parseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + + public static Builder newBuilder() { return new Builder(); } + public Builder newBuilderForType() { return new Builder(); } + public static Builder newBuilder(Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions prototype) { + return new Builder().mergeFrom(prototype); + } + + public sealed class Builder : pb::GeneratedMessage.Builder { + // Construct using Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions.newBuilder() + private Builder() {} + + Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions(); + + protected Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions internalGetResult() { + return result; + } + + public Builder clear() { + result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions(); + return this; + } + + public Builder clone() { + return new Builder().mergeFrom(result); + } + + public pb::Descriptors.Descriptor + getDescriptorForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions.getDescriptor(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions getDefaultInstanceForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions.getDefaultInstance(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions build() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result); + } + return buildPartial(); + } + + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions buildParsed() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result).asInvalidProtocolBufferException(); + } + return buildPartial(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions buildPartial() { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions returnMe = result; + result = null; + return returnMe; + } + + public Builder mergeFrom(pb::Message other) { + if (other instanceof Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions) { + return mergeFrom((Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions other) { + if (other == Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions.getDefaultInstance()) return this; + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public Builder mergeFrom( + pb::CodedInputStream input) { + return mergeFrom(input, + pb::ExtensionRegistry.getEmptyRegistry()); + } + + public Builder mergeFrom( + pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.newBuilder( + this.getUnknownFields()); + while (true) { + int tag = input.readTag(); + switch (tag) { + case 0: + this.setUnknownFields(unknownFields.build()); + return this; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.setUnknownFields(unknownFields.build()); + return this; + } + break; + } + } + } + } + + } + } + + public sealed class EnumValueOptions : pb::GeneratedMessage { + // Use EnumValueOptions.newBuilder() to construct. + private EnumValueOptions() {} + + private static readonly EnumValueOptions defaultInstance = new EnumValueOptions(); + public static EnumValueOptions DefaultInstance { + get { return defaultInstance; } + } + + public EnumValueOptions DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pb::Descriptors.Descriptor Descriptor { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_EnumValueOptions_descriptor; } + } + + protected pb::GeneratedMessage.FieldAccessorTable InternalGetFieldAccessorTable { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_EnumValueOptions_fieldAccessorTable; } + } + + public final boolean isInitialized() { + return true; + } + + public void writeTo(pb::CodedOutputStream output) { + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + size += UnknownFieldsSerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions parseFrom(pb::ByteString data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions parseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions parseFrom(byte[] data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions parseFrom(global::System.IO.Stream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions parseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions parseFrom(pb::CodedInputStream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions parseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + + public static Builder newBuilder() { return new Builder(); } + public Builder newBuilderForType() { return new Builder(); } + public static Builder newBuilder(Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions prototype) { + return new Builder().mergeFrom(prototype); + } + + public sealed class Builder : pb::GeneratedMessage.Builder { + // Construct using Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions.newBuilder() + private Builder() {} + + Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions(); + + protected Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions internalGetResult() { + return result; + } + + public Builder clear() { + result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions(); + return this; + } + + public Builder clone() { + return new Builder().mergeFrom(result); + } + + public pb::Descriptors.Descriptor + getDescriptorForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions.getDescriptor(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions getDefaultInstanceForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions.getDefaultInstance(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions build() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result); + } + return buildPartial(); + } + + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions buildParsed() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result).asInvalidProtocolBufferException(); + } + return buildPartial(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions buildPartial() { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions returnMe = result; + result = null; + return returnMe; + } + + public Builder mergeFrom(pb::Message other) { + if (other instanceof Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions) { + return mergeFrom((Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions other) { + if (other == Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions.getDefaultInstance()) return this; + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public Builder mergeFrom( + pb::CodedInputStream input) { + return mergeFrom(input, + pb::ExtensionRegistry.getEmptyRegistry()); + } + + public Builder mergeFrom( + pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.newBuilder( + this.getUnknownFields()); + while (true) { + int tag = input.readTag(); + switch (tag) { + case 0: + this.setUnknownFields(unknownFields.build()); + return this; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.setUnknownFields(unknownFields.build()); + return this; + } + break; + } + } + } + } + + } + } + + public sealed class ServiceOptions : pb::GeneratedMessage { + // Use ServiceOptions.newBuilder() to construct. + private ServiceOptions() {} + + private static readonly ServiceOptions defaultInstance = new ServiceOptions(); + public static ServiceOptions DefaultInstance { + get { return defaultInstance; } + } + + public ServiceOptions DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pb::Descriptors.Descriptor Descriptor { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_ServiceOptions_descriptor; } + } + + protected pb::GeneratedMessage.FieldAccessorTable InternalGetFieldAccessorTable { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_ServiceOptions_fieldAccessorTable; } + } + + public final boolean isInitialized() { + return true; + } + + public void writeTo(pb::CodedOutputStream output) { + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + size += UnknownFieldsSerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions parseFrom(pb::ByteString data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions parseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions parseFrom(byte[] data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions parseFrom(global::System.IO.Stream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions parseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions parseFrom(pb::CodedInputStream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions parseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + + public static Builder newBuilder() { return new Builder(); } + public Builder newBuilderForType() { return new Builder(); } + public static Builder newBuilder(Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions prototype) { + return new Builder().mergeFrom(prototype); + } + + public sealed class Builder : pb::GeneratedMessage.Builder { + // Construct using Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions.newBuilder() + private Builder() {} + + Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions(); + + protected Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions internalGetResult() { + return result; + } + + public Builder clear() { + result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions(); + return this; + } + + public Builder clone() { + return new Builder().mergeFrom(result); + } + + public pb::Descriptors.Descriptor + getDescriptorForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions.getDescriptor(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions getDefaultInstanceForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions.getDefaultInstance(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions build() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result); + } + return buildPartial(); + } + + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions buildParsed() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result).asInvalidProtocolBufferException(); + } + return buildPartial(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions buildPartial() { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions returnMe = result; + result = null; + return returnMe; + } + + public Builder mergeFrom(pb::Message other) { + if (other instanceof Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions) { + return mergeFrom((Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions other) { + if (other == Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions.getDefaultInstance()) return this; + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public Builder mergeFrom( + pb::CodedInputStream input) { + return mergeFrom(input, + pb::ExtensionRegistry.getEmptyRegistry()); + } + + public Builder mergeFrom( + pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.newBuilder( + this.getUnknownFields()); + while (true) { + int tag = input.readTag(); + switch (tag) { + case 0: + this.setUnknownFields(unknownFields.build()); + return this; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.setUnknownFields(unknownFields.build()); + return this; + } + break; + } + } + } + } + + } + } + + public sealed class MethodOptions : pb::GeneratedMessage { + // Use MethodOptions.newBuilder() to construct. + private MethodOptions() {} + + private static readonly MethodOptions defaultInstance = new MethodOptions(); + public static MethodOptions DefaultInstance { + get { return defaultInstance; } + } + + public MethodOptions DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pb::Descriptors.Descriptor Descriptor { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_MethodOptions_descriptor; } + } + + protected pb::GeneratedMessage.FieldAccessorTable InternalGetFieldAccessorTable { + get { return Google.ProtocolBuffers.DescriptorProtos.Descriptor.internal_static_google_protobuf_MethodOptions_fieldAccessorTable; } + } + + public final boolean isInitialized() { + return true; + } + + public void writeTo(pb::CodedOutputStream output) { + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + size += UnknownFieldsSerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions parseFrom(pb::ByteString data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions parseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions parseFrom(byte[] data) { + return newBuilder().mergeFrom(data).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(data, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions parseFrom(global::System.IO.Stream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions parseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions parseFrom(pb::CodedInputStream input) { + return newBuilder().mergeFrom(input).buildParsed(); + } + public static Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions parseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return newBuilder().mergeFrom(input, extensionRegistry) + .buildParsed(); + } + + public static Builder newBuilder() { return new Builder(); } + public Builder newBuilderForType() { return new Builder(); } + public static Builder newBuilder(Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions prototype) { + return new Builder().mergeFrom(prototype); + } + + public sealed class Builder : pb::GeneratedMessage.Builder { + // Construct using Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions.newBuilder() + private Builder() {} + + Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions(); + + protected Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions internalGetResult() { + return result; + } + + public Builder clear() { + result = new Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions(); + return this; + } + + public Builder clone() { + return new Builder().mergeFrom(result); + } + + public pb::Descriptors.Descriptor + getDescriptorForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions.getDescriptor(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions getDefaultInstanceForType() { + return Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions.getDefaultInstance(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions build() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result); + } + return buildPartial(); + } + + private Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions buildParsed() { + if (!isInitialized()) { + throw new pb::UninitializedMessageException( + result).asInvalidProtocolBufferException(); + } + return buildPartial(); + } + + public Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions buildPartial() { + Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions returnMe = result; + result = null; + return returnMe; + } + + public Builder mergeFrom(pb::Message other) { + if (other instanceof Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions) { + return mergeFrom((Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions)other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions other) { + if (other == Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions.getDefaultInstance()) return this; + this.mergeUnknownFields(other.getUnknownFields()); + return this; + } + + public Builder mergeFrom( + pb::CodedInputStream input) { + return mergeFrom(input, + pb::ExtensionRegistry.getEmptyRegistry()); + } + + public Builder mergeFrom( + pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.newBuilder( + this.getUnknownFields()); + while (true) { + int tag = input.readTag(); + switch (tag) { + case 0: + this.setUnknownFields(unknownFields.build()); + return this; + default: { + if (!parseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.setUnknownFields(unknownFields.build()); + return this; + } + break; + } + } + } + } + + } + } + + private static readonly pb::Descriptors.Descriptor + internal_static_google_protobuf_FileDescriptorProto_descriptor = + getDescriptor().getMessageTypes().get(0); + private static + pb::GeneratedMessage.FieldAccessorTable + internal_static_google_protobuf_FileDescriptorProto_fieldAccessorTable = new + pb::GeneratedMessage.FieldAccessorTable( + internal_static_google_protobuf_FileDescriptorProto_descriptor, + new string[] { "Name", "Package", "Dependency", "MessageType", "EnumType", "Service", "Extension", "Options", }, + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto), + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileDescriptorProto.Builder)); + private static readonly pb::Descriptors.Descriptor + internal_static_google_protobuf_DescriptorProto_descriptor = + getDescriptor().getMessageTypes().get(1); + private static + pb::GeneratedMessage.FieldAccessorTable + internal_static_google_protobuf_DescriptorProto_fieldAccessorTable = new + pb::GeneratedMessage.FieldAccessorTable( + internal_static_google_protobuf_DescriptorProto_descriptor, + new string[] { "Name", "Field", "Extension", "NestedType", "EnumType", "ExtensionRange", "Options", }, + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto), + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.Builder)); + private static readonly pb::Descriptors.Descriptor + internal_static_google_protobuf_DescriptorProto_ExtensionRange_descriptor = + internal_static_google_protobuf_DescriptorProto_descriptor.getNestedTypes().get(0); + private static + pb::GeneratedMessage.FieldAccessorTable + internal_static_google_protobuf_DescriptorProto_ExtensionRange_fieldAccessorTable = new + pb::GeneratedMessage.FieldAccessorTable( + internal_static_google_protobuf_DescriptorProto_ExtensionRange_descriptor, + new string[] { "Start", "End", }, + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange), + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.DescriptorProto.ExtensionRange.Builder)); + private static readonly pb::Descriptors.Descriptor + internal_static_google_protobuf_FieldDescriptorProto_descriptor = + getDescriptor().getMessageTypes().get(2); + private static + pb::GeneratedMessage.FieldAccessorTable + internal_static_google_protobuf_FieldDescriptorProto_fieldAccessorTable = new + pb::GeneratedMessage.FieldAccessorTable( + internal_static_google_protobuf_FieldDescriptorProto_descriptor, + new string[] { "Name", "Number", "Label", "Type", "TypeName", "Extendee", "DefaultValue", "Options", }, + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto), + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldDescriptorProto.Builder)); + private static readonly pb::Descriptors.Descriptor + internal_static_google_protobuf_EnumDescriptorProto_descriptor = + getDescriptor().getMessageTypes().get(3); + private static + pb::GeneratedMessage.FieldAccessorTable + internal_static_google_protobuf_EnumDescriptorProto_fieldAccessorTable = new + pb::GeneratedMessage.FieldAccessorTable( + internal_static_google_protobuf_EnumDescriptorProto_descriptor, + new string[] { "Name", "Value", "Options", }, + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto), + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumDescriptorProto.Builder)); + private static readonly pb::Descriptors.Descriptor + internal_static_google_protobuf_EnumValueDescriptorProto_descriptor = + getDescriptor().getMessageTypes().get(4); + private static + pb::GeneratedMessage.FieldAccessorTable + internal_static_google_protobuf_EnumValueDescriptorProto_fieldAccessorTable = new + pb::GeneratedMessage.FieldAccessorTable( + internal_static_google_protobuf_EnumValueDescriptorProto_descriptor, + new string[] { "Name", "Number", "Options", }, + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto), + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueDescriptorProto.Builder)); + private static readonly pb::Descriptors.Descriptor + internal_static_google_protobuf_ServiceDescriptorProto_descriptor = + getDescriptor().getMessageTypes().get(5); + private static + pb::GeneratedMessage.FieldAccessorTable + internal_static_google_protobuf_ServiceDescriptorProto_fieldAccessorTable = new + pb::GeneratedMessage.FieldAccessorTable( + internal_static_google_protobuf_ServiceDescriptorProto_descriptor, + new string[] { "Name", "Method", "Options", }, + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto), + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceDescriptorProto.Builder)); + private static readonly pb::Descriptors.Descriptor + internal_static_google_protobuf_MethodDescriptorProto_descriptor = + getDescriptor().getMessageTypes().get(6); + private static + pb::GeneratedMessage.FieldAccessorTable + internal_static_google_protobuf_MethodDescriptorProto_fieldAccessorTable = new + pb::GeneratedMessage.FieldAccessorTable( + internal_static_google_protobuf_MethodDescriptorProto_descriptor, + new string[] { "Name", "InputType", "OutputType", "Options", }, + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto), + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodDescriptorProto.Builder)); + private static readonly pb::Descriptors.Descriptor + internal_static_google_protobuf_FileOptions_descriptor = + getDescriptor().getMessageTypes().get(7); + private static + pb::GeneratedMessage.FieldAccessorTable + internal_static_google_protobuf_FileOptions_fieldAccessorTable = new + pb::GeneratedMessage.FieldAccessorTable( + internal_static_google_protobuf_FileOptions_descriptor, + new string[] { "JavaPackage", "JavaOuterClassname", "JavaMultipleFiles", "OptimizeFor", "CsharpNamespace", "CsharpFileClassname", "CsharpMultipleFiles", "CsharpNestClasses", "CsharpPublicClasses", }, + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions), + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.FileOptions.Builder)); + private static readonly pb::Descriptors.Descriptor + internal_static_google_protobuf_MessageOptions_descriptor = + getDescriptor().getMessageTypes().get(8); + private static + pb::GeneratedMessage.FieldAccessorTable + internal_static_google_protobuf_MessageOptions_fieldAccessorTable = new + pb::GeneratedMessage.FieldAccessorTable( + internal_static_google_protobuf_MessageOptions_descriptor, + new string[] { "MessageSetWireFormat", }, + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions), + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.MessageOptions.Builder)); + private static readonly pb::Descriptors.Descriptor + internal_static_google_protobuf_FieldOptions_descriptor = + getDescriptor().getMessageTypes().get(9); + private static + pb::GeneratedMessage.FieldAccessorTable + internal_static_google_protobuf_FieldOptions_fieldAccessorTable = new + pb::GeneratedMessage.FieldAccessorTable( + internal_static_google_protobuf_FieldOptions_descriptor, + new string[] { "Ctype", "ExperimentalMapKey", }, + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions), + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.FieldOptions.Builder)); + private static readonly pb::Descriptors.Descriptor + internal_static_google_protobuf_EnumOptions_descriptor = + getDescriptor().getMessageTypes().get(10); + private static + pb::GeneratedMessage.FieldAccessorTable + internal_static_google_protobuf_EnumOptions_fieldAccessorTable = new + pb::GeneratedMessage.FieldAccessorTable( + internal_static_google_protobuf_EnumOptions_descriptor, + new string[] { }, + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions), + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumOptions.Builder)); + private static readonly pb::Descriptors.Descriptor + internal_static_google_protobuf_EnumValueOptions_descriptor = + getDescriptor().getMessageTypes().get(11); + private static + pb::GeneratedMessage.FieldAccessorTable + internal_static_google_protobuf_EnumValueOptions_fieldAccessorTable = new + pb::GeneratedMessage.FieldAccessorTable( + internal_static_google_protobuf_EnumValueOptions_descriptor, + new string[] { }, + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions), + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.EnumValueOptions.Builder)); + private static readonly pb::Descriptors.Descriptor + internal_static_google_protobuf_ServiceOptions_descriptor = + getDescriptor().getMessageTypes().get(12); + private static + pb::GeneratedMessage.FieldAccessorTable + internal_static_google_protobuf_ServiceOptions_fieldAccessorTable = new + pb::GeneratedMessage.FieldAccessorTable( + internal_static_google_protobuf_ServiceOptions_descriptor, + new string[] { }, + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions), + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.ServiceOptions.Builder)); + private static readonly pb::Descriptors.Descriptor + internal_static_google_protobuf_MethodOptions_descriptor = + getDescriptor().getMessageTypes().get(13); + private static + pb::GeneratedMessage.FieldAccessorTable + internal_static_google_protobuf_MethodOptions_fieldAccessorTable = new + pb::GeneratedMessage.FieldAccessorTable( + internal_static_google_protobuf_MethodOptions_descriptor, + new string[] { }, + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions), + typeof (Google.ProtocolBuffers.DescriptorProtos.Descriptor.MethodOptions.Builder)); + } +} diff --git a/csharp/ProtocolBuffers/DescriptorProtos/DescriptorProtoFile.cs b/csharp/ProtocolBuffers/DescriptorProtos/DescriptorProtoFile.cs new file mode 100644 index 00000000..becb23cc --- /dev/null +++ b/csharp/ProtocolBuffers/DescriptorProtos/DescriptorProtoFile.cs @@ -0,0 +1,5436 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! + +using pb = global::Google.ProtocolBuffers; +using pbc = global::Google.ProtocolBuffers.Collections; +using pbd = global::Google.ProtocolBuffers.Descriptors; +using scg = global::System.Collections.Generic; +using self = global::Google.ProtocolBuffers.DescriptorProtos; + +namespace Google.ProtocolBuffers.DescriptorProtos { + + public static partial class DescriptorProtoFile { + + #region Descriptor + public static pbd::FileDescriptor Descriptor { + get { return descriptor; } + } + private static readonly pbd::FileDescriptor descriptor = pbd::FileDescriptor.InternalBuildGeneratedFileFrom ( + new byte[] { + 0x0a, 0x24, 0x73, 0x72, 0x63, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0f, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x22, 0xdc, 0x02, 0x0a, 0x13, + 0x46, 0x69, 0x6c, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, + 0x0c, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x12, 0x0f, 0x0a, 0x07, 0x70, 0x61, 0x63, + 0x6b, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x12, 0x12, 0x0a, 0x0a, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, + 0x65, 0x6e, 0x63, 0x79, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x12, 0x36, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, + 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x37, 0x0a, 0x09, 0x65, 0x6e, 0x75, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x12, 0x38, 0x0a, 0x07, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, + 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, + 0x6f, 0x12, 0x38, 0x0a, 0x09, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, + 0x69, 0x65, 0x6c, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, + 0x2d, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x4f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xa9, 0x03, 0x0a, 0x0f, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, + 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x12, 0x34, 0x0a, 0x05, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x44, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x38, 0x0a, 0x09, 0x65, 0x78, + 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x44, 0x65, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x35, 0x0a, 0x0b, 0x6e, 0x65, 0x73, 0x74, + 0x65, 0x64, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x37, 0x0a, 0x09, 0x65, 0x6e, 0x75, 0x6d, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, + 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x48, 0x0a, 0x0f, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x61, + 0x6e, 0x67, 0x65, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x30, + 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x2c, 0x0a, 0x0e, 0x45, 0x78, 0x74, 0x65, 0x6e, 0x73, 0x69, 0x6f, + 0x6e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x0d, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x12, 0x0b, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x22, 0x94, 0x05, 0x0a, 0x14, 0x46, + 0x69, 0x65, 0x6c, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, + 0x0c, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x12, 0x0e, 0x0a, 0x06, 0x6e, 0x75, 0x6d, + 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x12, 0x3a, 0x0a, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x38, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x11, 0x0a, 0x09, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x12, 0x10, 0x0a, 0x08, 0x65, 0x78, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x12, 0x15, 0x0a, 0x0d, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x12, 0x2e, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xb6, 0x02, 0x0a, 0x04, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x44, 0x4f, 0x55, 0x42, 0x4c, 0x45, 0x10, + 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x4c, 0x4f, 0x41, 0x54, 0x10, 0x02, 0x12, 0x0e, 0x0a, + 0x0a, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x36, 0x34, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, + 0x45, 0x5f, 0x55, 0x49, 0x4e, 0x54, 0x36, 0x34, 0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x49, + 0x4e, 0x54, 0x33, 0x32, 0x10, 0x05, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x49, 0x58, 0x45, 0x44, + 0x36, 0x34, 0x10, 0x06, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x46, 0x49, 0x58, 0x45, 0x44, 0x33, 0x32, + 0x10, 0x07, 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x42, 0x4f, 0x4f, 0x4c, 0x10, 0x08, 0x12, 0x0f, 0x0a, + 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x09, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x59, + 0x50, 0x45, 0x5f, 0x47, 0x52, 0x4f, 0x55, 0x50, 0x10, 0x0a, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4d, + 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x10, 0x0b, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x42, 0x59, 0x54, + 0x45, 0x53, 0x10, 0x0c, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x49, 0x4e, 0x54, 0x33, 0x32, 0x10, + 0x0d, 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x45, 0x4e, 0x55, 0x4d, 0x10, 0x0e, 0x12, 0x11, 0x0a, 0x0d, + 0x54, 0x59, 0x50, 0x45, 0x5f, 0x53, 0x46, 0x49, 0x58, 0x45, 0x44, 0x33, 0x32, 0x10, 0x0f, 0x12, 0x11, 0x0a, 0x0d, 0x54, + 0x59, 0x50, 0x45, 0x5f, 0x53, 0x46, 0x49, 0x58, 0x45, 0x44, 0x36, 0x34, 0x10, 0x10, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, + 0x50, 0x45, 0x5f, 0x53, 0x49, 0x4e, 0x54, 0x33, 0x32, 0x10, 0x11, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x59, 0x50, 0x45, 0x5f, + 0x53, 0x49, 0x4e, 0x54, 0x36, 0x34, 0x10, 0x12, 0x22, 0x43, 0x0a, 0x05, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x12, 0x12, 0x0a, + 0x0e, 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x5f, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x12, 0x0a, + 0x0e, 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x49, 0x52, 0x45, 0x44, 0x10, 0x02, 0x12, 0x12, 0x0a, + 0x0e, 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x5f, 0x52, 0x45, 0x50, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x03, 0x22, 0x8c, 0x01, + 0x0a, 0x13, 0x45, 0x6e, 0x75, 0x6d, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, + 0x6f, 0x12, 0x0c, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x12, 0x38, 0x0a, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x44, 0x65, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x2d, 0x0a, 0x07, 0x6f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x22, 0x6c, 0x0a, 0x18, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x12, 0x0e, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x12, 0x32, + 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x90, 0x01, 0x0a, 0x16, 0x53, 0x65, 0x72, 0x76, 0x69, + 0x63, 0x65, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c, 0x0a, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x12, 0x36, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, + 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x30, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x7f, 0x0a, + 0x15, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x12, 0x0c, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x12, 0x12, 0x0a, 0x0a, + 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x12, 0x13, 0x0a, 0x0b, + 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x12, 0x2f, 0x0a, + 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x88, 0x03, 0x0a, 0x0b, 0x46, 0x69, 0x6c, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x12, 0x14, 0x0a, 0x0c, 0x6a, 0x61, 0x76, 0x61, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x12, 0x1c, 0x0a, 0x14, 0x6a, 0x61, 0x76, 0x61, 0x5f, 0x6f, 0x75, 0x74, 0x65, 0x72, 0x5f, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x12, 0x22, 0x0a, 0x13, 0x6a, 0x61, + 0x76, 0x61, 0x5f, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0c, 0x6f, 0x70, 0x74, 0x69, 0x6d, 0x69, + 0x7a, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x2e, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x3a, 0x09, 0x43, 0x4f, 0x44, + 0x45, 0x5f, 0x53, 0x49, 0x5a, 0x45, 0x12, 0x19, 0x0a, 0x10, 0x63, 0x73, 0x68, 0x61, 0x72, 0x70, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0xe8, 0x07, 0x20, 0x01, 0x28, 0x09, 0x12, 0x1e, 0x0a, 0x15, 0x63, 0x73, 0x68, + 0x61, 0x72, 0x70, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0xe9, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x12, 0x25, 0x0a, 0x15, 0x63, 0x73, 0x68, 0x61, 0x72, 0x70, 0x5f, 0x6d, 0x75, 0x6c, 0x74, + 0x69, 0x70, 0x6c, 0x65, 0x5f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0xea, 0x07, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, + 0x61, 0x6c, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x13, 0x63, 0x73, 0x68, 0x61, 0x72, 0x70, 0x5f, 0x6e, 0x65, 0x73, 0x74, 0x5f, + 0x63, 0x6c, 0x61, 0x73, 0x73, 0x65, 0x73, 0x18, 0xeb, 0x07, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, + 0x65, 0x12, 0x24, 0x0a, 0x15, 0x63, 0x73, 0x68, 0x61, 0x72, 0x70, 0x5f, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x63, + 0x6c, 0x61, 0x73, 0x73, 0x65, 0x73, 0x18, 0xec, 0x07, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x04, 0x74, 0x72, 0x75, 0x65, 0x22, + 0x28, 0x0a, 0x0c, 0x4f, 0x70, 0x74, 0x69, 0x6d, 0x69, 0x7a, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x09, 0x0a, 0x05, 0x53, + 0x50, 0x45, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x49, 0x5a, 0x45, 0x10, + 0x02, 0x22, 0x38, 0x0a, 0x0e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, + 0x26, 0x0a, 0x17, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x5f, 0x77, 0x69, 0x72, 0x65, 0x5f, + 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x3a, 0x05, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x22, + 0x85, 0x01, 0x0a, 0x0c, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x32, 0x0a, 0x05, + 0x63, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x2e, 0x43, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x14, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, + 0x6e, 0x74, 0x61, 0x6c, 0x5f, 0x6d, 0x61, 0x70, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x22, 0x23, + 0x0a, 0x05, 0x43, 0x54, 0x79, 0x70, 0x65, 0x12, 0x08, 0x0a, 0x04, 0x43, 0x4f, 0x52, 0x44, 0x10, 0x01, 0x12, 0x10, 0x0a, + 0x0c, 0x53, 0x54, 0x52, 0x49, 0x4e, 0x47, 0x5f, 0x50, 0x49, 0x45, 0x43, 0x45, 0x10, 0x02, 0x22, 0x0d, 0x0a, 0x0b, 0x45, + 0x6e, 0x75, 0x6d, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x12, 0x0a, 0x10, 0x45, 0x6e, 0x75, 0x6d, 0x56, 0x61, + 0x6c, 0x75, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x10, 0x0a, 0x0e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, + 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x0f, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x4f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x72, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x42, 0x10, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x6f, 0x72, + 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x48, 0x01, 0xc2, 0x3e, 0x27, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x42, 0x75, 0x66, 0x66, 0x65, 0x72, 0x73, 0x2e, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0xca, 0x3e, 0x13, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x6f, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x46, 0x69, 0x6c, 0x65, 0xd0, 0x3e, 0x00, 0xd8, 0x3e, 0x00, 0xe0, 0x3e, + 0x01, + }, new pbd::FileDescriptor[] { + }); + #endregion + + #region Extensions + #endregion + + #region Static variables + internal static readonly pbd::MessageDescriptor internal__static_google_protobuf_FileDescriptorProto__Descriptor + = Descriptor.MessageTypes[0]; + internal static pb::FieldAccess.FieldAccessorTable internal__static_google_protobuf_FileDescriptorProto__FieldAccessorTable + = new pb::FieldAccess.FieldAccessorTable(internal__static_google_protobuf_FileDescriptorProto__Descriptor, + new string[] { "Name", "Package", "Dependency", "MessageType", "EnumType", "Service", "Extension", "Options", }, + typeof (self::FileDescriptorProto), + typeof (self::FileDescriptorProto.Builder)); + internal static readonly pbd::MessageDescriptor internal__static_google_protobuf_DescriptorProto__Descriptor + = Descriptor.MessageTypes[1]; + internal static pb::FieldAccess.FieldAccessorTable internal__static_google_protobuf_DescriptorProto__FieldAccessorTable + = new pb::FieldAccess.FieldAccessorTable(internal__static_google_protobuf_DescriptorProto__Descriptor, + new string[] { "Name", "Field", "Extension", "NestedType", "EnumType", "ExtensionRange", "Options", }, + typeof (self::DescriptorProto), + typeof (self::DescriptorProto.Builder)); + internal static readonly pbd::MessageDescriptor internal__static_google_protobuf_DescriptorProto_ExtensionRange__Descriptor + = internal__static_google_protobuf_DescriptorProto__Descriptor.NestedTypes[0]; + internal static pb::FieldAccess.FieldAccessorTable internal__static_google_protobuf_DescriptorProto_ExtensionRange__FieldAccessorTable + = new pb::FieldAccess.FieldAccessorTable(internal__static_google_protobuf_DescriptorProto_ExtensionRange__Descriptor, + new string[] { "Start", "End", }, + typeof (self::DescriptorProto.Types.ExtensionRange), + typeof (self::DescriptorProto.Types.ExtensionRange.Builder)); + internal static readonly pbd::MessageDescriptor internal__static_google_protobuf_FieldDescriptorProto__Descriptor + = Descriptor.MessageTypes[2]; + internal static pb::FieldAccess.FieldAccessorTable internal__static_google_protobuf_FieldDescriptorProto__FieldAccessorTable + = new pb::FieldAccess.FieldAccessorTable(internal__static_google_protobuf_FieldDescriptorProto__Descriptor, + new string[] { "Name", "Number", "Label", "Type", "TypeName", "Extendee", "DefaultValue", "Options", }, + typeof (self::FieldDescriptorProto), + typeof (self::FieldDescriptorProto.Builder)); + internal static readonly pbd::MessageDescriptor internal__static_google_protobuf_EnumDescriptorProto__Descriptor + = Descriptor.MessageTypes[3]; + internal static pb::FieldAccess.FieldAccessorTable internal__static_google_protobuf_EnumDescriptorProto__FieldAccessorTable + = new pb::FieldAccess.FieldAccessorTable(internal__static_google_protobuf_EnumDescriptorProto__Descriptor, + new string[] { "Name", "Value", "Options", }, + typeof (self::EnumDescriptorProto), + typeof (self::EnumDescriptorProto.Builder)); + internal static readonly pbd::MessageDescriptor internal__static_google_protobuf_EnumValueDescriptorProto__Descriptor + = Descriptor.MessageTypes[4]; + internal static pb::FieldAccess.FieldAccessorTable internal__static_google_protobuf_EnumValueDescriptorProto__FieldAccessorTable + = new pb::FieldAccess.FieldAccessorTable(internal__static_google_protobuf_EnumValueDescriptorProto__Descriptor, + new string[] { "Name", "Number", "Options", }, + typeof (self::EnumValueDescriptorProto), + typeof (self::EnumValueDescriptorProto.Builder)); + internal static readonly pbd::MessageDescriptor internal__static_google_protobuf_ServiceDescriptorProto__Descriptor + = Descriptor.MessageTypes[5]; + internal static pb::FieldAccess.FieldAccessorTable internal__static_google_protobuf_ServiceDescriptorProto__FieldAccessorTable + = new pb::FieldAccess.FieldAccessorTable(internal__static_google_protobuf_ServiceDescriptorProto__Descriptor, + new string[] { "Name", "Method", "Options", }, + typeof (self::ServiceDescriptorProto), + typeof (self::ServiceDescriptorProto.Builder)); + internal static readonly pbd::MessageDescriptor internal__static_google_protobuf_MethodDescriptorProto__Descriptor + = Descriptor.MessageTypes[6]; + internal static pb::FieldAccess.FieldAccessorTable internal__static_google_protobuf_MethodDescriptorProto__FieldAccessorTable + = new pb::FieldAccess.FieldAccessorTable(internal__static_google_protobuf_MethodDescriptorProto__Descriptor, + new string[] { "Name", "InputType", "OutputType", "Options", }, + typeof (self::MethodDescriptorProto), + typeof (self::MethodDescriptorProto.Builder)); + internal static readonly pbd::MessageDescriptor internal__static_google_protobuf_FileOptions__Descriptor + = Descriptor.MessageTypes[7]; + internal static pb::FieldAccess.FieldAccessorTable internal__static_google_protobuf_FileOptions__FieldAccessorTable + = new pb::FieldAccess.FieldAccessorTable(internal__static_google_protobuf_FileOptions__Descriptor, + new string[] { "JavaPackage", "JavaOuterClassname", "JavaMultipleFiles", "OptimizeFor", "CsharpNamespace", "CsharpFileClassname", "CsharpMultipleFiles", "CsharpNestClasses", "CsharpPublicClasses", }, + typeof (self::FileOptions), + typeof (self::FileOptions.Builder)); + internal static readonly pbd::MessageDescriptor internal__static_google_protobuf_MessageOptions__Descriptor + = Descriptor.MessageTypes[8]; + internal static pb::FieldAccess.FieldAccessorTable internal__static_google_protobuf_MessageOptions__FieldAccessorTable + = new pb::FieldAccess.FieldAccessorTable(internal__static_google_protobuf_MessageOptions__Descriptor, + new string[] { "MessageSetWireFormat", }, + typeof (self::MessageOptions), + typeof (self::MessageOptions.Builder)); + internal static readonly pbd::MessageDescriptor internal__static_google_protobuf_FieldOptions__Descriptor + = Descriptor.MessageTypes[9]; + internal static pb::FieldAccess.FieldAccessorTable internal__static_google_protobuf_FieldOptions__FieldAccessorTable + = new pb::FieldAccess.FieldAccessorTable(internal__static_google_protobuf_FieldOptions__Descriptor, + new string[] { "Ctype", "ExperimentalMapKey", }, + typeof (self::FieldOptions), + typeof (self::FieldOptions.Builder)); + internal static readonly pbd::MessageDescriptor internal__static_google_protobuf_EnumOptions__Descriptor + = Descriptor.MessageTypes[10]; + internal static pb::FieldAccess.FieldAccessorTable internal__static_google_protobuf_EnumOptions__FieldAccessorTable + = new pb::FieldAccess.FieldAccessorTable(internal__static_google_protobuf_EnumOptions__Descriptor, + new string[] { }, + typeof (self::EnumOptions), + typeof (self::EnumOptions.Builder)); + internal static readonly pbd::MessageDescriptor internal__static_google_protobuf_EnumValueOptions__Descriptor + = Descriptor.MessageTypes[11]; + internal static pb::FieldAccess.FieldAccessorTable internal__static_google_protobuf_EnumValueOptions__FieldAccessorTable + = new pb::FieldAccess.FieldAccessorTable(internal__static_google_protobuf_EnumValueOptions__Descriptor, + new string[] { }, + typeof (self::EnumValueOptions), + typeof (self::EnumValueOptions.Builder)); + internal static readonly pbd::MessageDescriptor internal__static_google_protobuf_ServiceOptions__Descriptor + = Descriptor.MessageTypes[12]; + internal static pb::FieldAccess.FieldAccessorTable internal__static_google_protobuf_ServiceOptions__FieldAccessorTable + = new pb::FieldAccess.FieldAccessorTable(internal__static_google_protobuf_ServiceOptions__Descriptor, + new string[] { }, + typeof (self::ServiceOptions), + typeof (self::ServiceOptions.Builder)); + internal static readonly pbd::MessageDescriptor internal__static_google_protobuf_MethodOptions__Descriptor + = Descriptor.MessageTypes[13]; + internal static pb::FieldAccess.FieldAccessorTable internal__static_google_protobuf_MethodOptions__FieldAccessorTable + = new pb::FieldAccess.FieldAccessorTable(internal__static_google_protobuf_MethodOptions__Descriptor, + new string[] { }, + typeof (self::MethodOptions), + typeof (self::MethodOptions.Builder)); + #endregion + + } + + #region Enums + #endregion + + #region Messages + public sealed partial class FileDescriptorProto : pb::GeneratedMessage { + // Use FileDescriptorProto.CreateBuilder() to construct. + private FileDescriptorProto() {} + + private static readonly FileDescriptorProto defaultInstance = new FileDescriptorProto(); + public static FileDescriptorProto DefaultInstance { + get { return defaultInstance; } + } + + public override FileDescriptorProto DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pbd::MessageDescriptor Descriptor { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_FileDescriptorProto__Descriptor; } + } + + protected internal override pb::FieldAccess.FieldAccessorTable InternalFieldAccessors { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_FileDescriptorProto__FieldAccessorTable; } + } + + // optional string name = 1; + private bool hasName; + private string name_ = ""; + public bool HasName { + get { return hasName; } + } + public string Name { + get { return name_; } + } + + // optional string package = 2; + private bool hasPackage; + private string package_ = ""; + public bool HasPackage { + get { return hasPackage; } + } + public string Package { + get { return package_; } + } + + // repeated string dependency = 3; + private scg::IList dependency_ = pbc::Lists.Empty; + public scg::IList DependencyList { + get { return dependency_; } + } + public int DependencyCount { + get { return dependency_.Count; } + } + public string GetDependency(int index) { + return dependency_[index]; + } + + // repeated .google.protobuf.DescriptorProto message_type = 4; + private scg::IList messageType_ = pbc::Lists.Empty; + public scg::IList MessageTypeList { + get { return messageType_; } + } + public int MessageTypeCount + { get { return messageType_.Count; } + } + public self::DescriptorProto GetMessageType(int index) { + return messageType_ [index]; + } + + // repeated .google.protobuf.EnumDescriptorProto enum_type = 5; + private scg::IList enumType_ = pbc::Lists.Empty; + public scg::IList EnumTypeList { + get { return enumType_; } + } + public int EnumTypeCount + { get { return enumType_.Count; } + } + public self::EnumDescriptorProto GetEnumType(int index) { + return enumType_ [index]; + } + + // repeated .google.protobuf.ServiceDescriptorProto service = 6; + private scg::IList service_ = pbc::Lists.Empty; + public scg::IList ServiceList { + get { return service_; } + } + public int ServiceCount + { get { return service_.Count; } + } + public self::ServiceDescriptorProto GetService(int index) { + return service_ [index]; + } + + // repeated .google.protobuf.FieldDescriptorProto extension = 7; + private scg::IList extension_ = pbc::Lists.Empty; + public scg::IList ExtensionList { + get { return extension_; } + } + public int ExtensionCount + { get { return extension_.Count; } + } + public self::FieldDescriptorProto GetExtension(int index) { + return extension_ [index]; + } + + // optional .google.protobuf.FileOptions options = 8; + private bool hasOptions; + private self::FileOptions options_ = self::FileOptions.DefaultInstance; + public bool HasOptions { + get { return hasOptions; } + } + public self::FileOptions Options { + get { return options_; } + } + + public override bool IsInitialized { + get { + return true; + } + } + + public override void WriteTo(pb::CodedOutputStream output) { + if (HasName) { + output.WriteString(1, Name); + } + if (HasPackage) { + output.WriteString(2, Package); + } + foreach (string element in DependencyList) { + output.WriteString(3, element); + } + foreach (self::DescriptorProto element in MessageTypeList) { + output.WriteMessage(4, element); + } + foreach (self::EnumDescriptorProto element in EnumTypeList) { + output.WriteMessage(5, element); + } + foreach (self::ServiceDescriptorProto element in ServiceList) { + output.WriteMessage(6, element); + } + foreach (self::FieldDescriptorProto element in ExtensionList) { + output.WriteMessage(7, element); + } + if (HasOptions) { + output.WriteMessage(8, Options); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public override int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (HasName) { + size += pb::CodedOutputStream.ComputeStringSize(1, Name); + } + if (HasPackage) { + size += pb::CodedOutputStream.ComputeStringSize(2, Package); + } + foreach (string element in DependencyList) { + size += pb::CodedOutputStream + .ComputeStringSize(3, element); + } + foreach (self::DescriptorProto element in MessageTypeList) { + size += pb::CodedOutputStream.ComputeMessageSize(4, element); + } + foreach (self::EnumDescriptorProto element in EnumTypeList) { + size += pb::CodedOutputStream.ComputeMessageSize(5, element); + } + foreach (self::ServiceDescriptorProto element in ServiceList) { + size += pb::CodedOutputStream.ComputeMessageSize(6, element); + } + foreach (self::FieldDescriptorProto element in ExtensionList) { + size += pb::CodedOutputStream.ComputeMessageSize(7, element); + } + if (HasOptions) { + size += pb::CodedOutputStream.ComputeMessageSize(8, Options); + } + size += UnknownFields.SerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static self::FileDescriptorProto ParseFrom(pb::ByteString data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::FileDescriptorProto ParseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::FileDescriptorProto ParseFrom(byte[] data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::FileDescriptorProto parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::FileDescriptorProto ParseFrom(global::System.IO.Stream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::FileDescriptorProto ParseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + public static self::FileDescriptorProto ParseFrom(pb::CodedInputStream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::FileDescriptorProto ParseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + + public static Builder CreateBuilder() { return new Builder(); } + public override IBuilder CreateBuilderForType() { return new Builder(); } + public static Builder CreateBuilder(self::FileDescriptorProto prototype) { + return (Builder) new Builder().MergeFrom(prototype); + } + + public sealed partial class Builder : pb::GeneratedBuilder { + // Construct using self::FileDescriptorProto.CreateBuilder() + internal Builder() {} + + self::FileDescriptorProto result = new self::FileDescriptorProto(); + + protected override self::FileDescriptorProto MessageBeingBuilt { + get { return result; } + } + + public override IBuilder Clear() { + result = new self::FileDescriptorProto(); + return this; + } + + public override IBuilder Clone() { + return new Builder().MergeFrom(result); + } + + public override pbd::MessageDescriptor DescriptorForType { + get { return self::FileDescriptorProto.Descriptor; } + } + + public override self::FileDescriptorProto DefaultInstanceForType { + get { return self::FileDescriptorProto.DefaultInstance; } + } + + public override self::FileDescriptorProto BuildPartial() { + result.dependency_ = pbc::Lists.AsReadOnly(result.dependency_); + if (result.messageType_ != pbc::Lists.Empty) { + result.messageType_ = pbc::Lists.AsReadOnly(result.messageType_); + } + if (result.enumType_ != pbc::Lists.Empty) { + result.enumType_ = pbc::Lists.AsReadOnly(result.enumType_); + } + if (result.service_ != pbc::Lists.Empty) { + result.service_ = pbc::Lists.AsReadOnly(result.service_); + } + if (result.extension_ != pbc::Lists.Empty) { + result.extension_ = pbc::Lists.AsReadOnly(result.extension_); + } + self::FileDescriptorProto returnMe = result; + result = null; + return returnMe; + } + + public override IBuilder MergeFrom(pb::IMessage other) { + if (other is self::FileDescriptorProto) { + return MergeFrom((self::FileDescriptorProto) other); + } else { + base.MergeFrom(other); + return this; + } + } + + public override IBuilder MergeFrom(self::FileDescriptorProto other) { + if (other == self::FileDescriptorProto.DefaultInstance) return this; + if (other.HasName) { + Name = other.Name; + } + if (other.HasPackage) { + Package = other.Package; + } + if (other.dependency_.Count != 0) { + if (result.dependency_.Count == 0) { + result.dependency_ = new scg::List(); + } + base.AddRange(other.dependency_, result.dependency_); + } + if (other.messageType_.Count != 0) { + if (result.messageType_.Count == 0) { + result.messageType_ = new scg::List(); + } + base.AddRange(other.messageType_, result.messageType_); + } + if (other.enumType_.Count != 0) { + if (result.enumType_.Count == 0) { + result.enumType_ = new scg::List(); + } + base.AddRange(other.enumType_, result.enumType_); + } + if (other.service_.Count != 0) { + if (result.service_.Count == 0) { + result.service_ = new scg::List(); + } + base.AddRange(other.service_, result.service_); + } + if (other.extension_.Count != 0) { + if (result.extension_.Count == 0) { + result.extension_ = new scg::List(); + } + base.AddRange(other.extension_, result.extension_); + } + if (other.HasOptions) { + MergeOptions(other.Options); + } + this.MergeUnknownFields(other.UnknownFields); + return this; + } + + public override IBuilder MergeFrom(pb::CodedInputStream input) { + return MergeFrom(input, pb::ExtensionRegistry.Empty); + } + + public override IBuilder MergeFrom(pb::CodedInputStream input, pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.CreateBuilder(this.UnknownFields); + while (true) { + uint tag = input.ReadTag(); + switch (tag) { + case 0: + this.UnknownFields = unknownFields.Build(); + return this; + default: { + if (!ParseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.UnknownFields = unknownFields.Build(); + return this; + } + break; + } + case 10: { + Name = input.ReadString(); + break; + } + case 18: { + Package = input.ReadString(); + break; + } + case 26: { + AddDependency(input.ReadString()); + break; + } + case 34: { + self::DescriptorProto.Builder subBuilder = self::DescriptorProto.CreateBuilder(); + input.ReadMessage(subBuilder, extensionRegistry); + AddMessageType(subBuilder.BuildPartial()); + break; + } + case 42: { + self::EnumDescriptorProto.Builder subBuilder = self::EnumDescriptorProto.CreateBuilder(); + input.ReadMessage(subBuilder, extensionRegistry); + AddEnumType(subBuilder.BuildPartial()); + break; + } + case 50: { + self::ServiceDescriptorProto.Builder subBuilder = self::ServiceDescriptorProto.CreateBuilder(); + input.ReadMessage(subBuilder, extensionRegistry); + AddService(subBuilder.BuildPartial()); + break; + } + case 58: { + self::FieldDescriptorProto.Builder subBuilder = self::FieldDescriptorProto.CreateBuilder(); + input.ReadMessage(subBuilder, extensionRegistry); + AddExtension(subBuilder.BuildPartial()); + break; + } + case 66: { + self::FileOptions.Builder subBuilder = self::FileOptions.CreateBuilder(); + if (HasOptions) { + subBuilder.MergeFrom(Options); + } + input.ReadMessage(subBuilder, extensionRegistry); + Options = subBuilder.BuildPartial(); + break; + } + } + } + } + + + // optional string name = 1; + public bool HasName { + get { return result.HasName; } + } + public string Name { + get { return result.Name; } + set { SetName(value); } + } + public Builder SetName(string value) { + result.hasName = true; + result.name_ = value; + return this; + } + public Builder ClearName() { + result.hasName = false; + result.name_ = ""; + return this; + } + + // optional string package = 2; + public bool HasPackage { + get { return result.HasPackage; } + } + public string Package { + get { return result.Package; } + set { SetPackage(value); } + } + public Builder SetPackage(string value) { + result.hasPackage = true; + result.package_ = value; + return this; + } + public Builder ClearPackage() { + result.hasPackage = false; + result.package_ = ""; + return this; + } + + // repeated string dependency = 3; + public scg::IList DependencyList { + get { return pbc::Lists.AsReadOnly(result.dependency_); } + } + public int DependencyCount { + get { return result.DependencyCount; } + } + public string GetDependency(int index) { + return result.GetDependency(index); + } + public Builder SetDependency(int index, string value) { + result.dependency_[index] = value; + return this; + } + public Builder AddDependency(string value) { + if (result.dependency_.Count == 0) { + result.dependency_ = new scg::List(); + } + result.dependency_.Add(value); + return this; + } + public Builder AddRangeDependency(scg::IEnumerable values) { + if (result.dependency_.Count == 0) { + result.dependency_ = new scg::List(); + } + base.AddRange(values, result.dependency_); + return this; + } + public Builder ClearDependency() { + result.dependency_ = pbc::Lists.Empty; + return this; + } + + // repeated .google.protobuf.DescriptorProto message_type = 4; + public scg::IList MessageTypeList { + get { return pbc::Lists.AsReadOnly(result.messageType_); } + } + public int MessageTypeCount { + get { return result.MessageTypeCount; } + } + public self::DescriptorProto GetMessageType(int index) { + return result.GetMessageType(index); + } + public Builder SetMessageType(int index, self::DescriptorProto value) { + result.messageType_[index] = value; + return this; + } + public Builder SetMessageType(int index, self::DescriptorProto.Builder builderForValue) { + result.messageType_[index] = builderForValue.Build(); + return this; + } + public Builder AddMessageType(self::DescriptorProto value) { + if (result.messageType_ == pbc::Lists.Empty) { + result.messageType_ = new scg::List(); + } + result.messageType_.Add(value); + return this; + } + public Builder AddMessageType(self::DescriptorProto.Builder builderForValue) { + if (result.messageType_ == pbc::Lists.Empty) { + result.messageType_ = new scg::List(); + } + result.messageType_.Add(builderForValue.Build()); + return this; + } + public Builder AddRangeMessageType(scg::IEnumerable values) { + if (result.messageType_ == pbc::Lists.Empty) { + result.messageType_ = new scg::List(); + } + base.AddRange(values, result.messageType_); + return this; + } + public Builder ClearMessageType() { + result.messageType_ = pbc::Lists.Empty; + return this; + } + + // repeated .google.protobuf.EnumDescriptorProto enum_type = 5; + public scg::IList EnumTypeList { + get { return pbc::Lists.AsReadOnly(result.enumType_); } + } + public int EnumTypeCount { + get { return result.EnumTypeCount; } + } + public self::EnumDescriptorProto GetEnumType(int index) { + return result.GetEnumType(index); + } + public Builder SetEnumType(int index, self::EnumDescriptorProto value) { + result.enumType_[index] = value; + return this; + } + public Builder SetEnumType(int index, self::EnumDescriptorProto.Builder builderForValue) { + result.enumType_[index] = builderForValue.Build(); + return this; + } + public Builder AddEnumType(self::EnumDescriptorProto value) { + if (result.enumType_ == pbc::Lists.Empty) { + result.enumType_ = new scg::List(); + } + result.enumType_.Add(value); + return this; + } + public Builder AddEnumType(self::EnumDescriptorProto.Builder builderForValue) { + if (result.enumType_ == pbc::Lists.Empty) { + result.enumType_ = new scg::List(); + } + result.enumType_.Add(builderForValue.Build()); + return this; + } + public Builder AddRangeEnumType(scg::IEnumerable values) { + if (result.enumType_ == pbc::Lists.Empty) { + result.enumType_ = new scg::List(); + } + base.AddRange(values, result.enumType_); + return this; + } + public Builder ClearEnumType() { + result.enumType_ = pbc::Lists.Empty; + return this; + } + + // repeated .google.protobuf.ServiceDescriptorProto service = 6; + public scg::IList ServiceList { + get { return pbc::Lists.AsReadOnly(result.service_); } + } + public int ServiceCount { + get { return result.ServiceCount; } + } + public self::ServiceDescriptorProto GetService(int index) { + return result.GetService(index); + } + public Builder SetService(int index, self::ServiceDescriptorProto value) { + result.service_[index] = value; + return this; + } + public Builder SetService(int index, self::ServiceDescriptorProto.Builder builderForValue) { + result.service_[index] = builderForValue.Build(); + return this; + } + public Builder AddService(self::ServiceDescriptorProto value) { + if (result.service_ == pbc::Lists.Empty) { + result.service_ = new scg::List(); + } + result.service_.Add(value); + return this; + } + public Builder AddService(self::ServiceDescriptorProto.Builder builderForValue) { + if (result.service_ == pbc::Lists.Empty) { + result.service_ = new scg::List(); + } + result.service_.Add(builderForValue.Build()); + return this; + } + public Builder AddRangeService(scg::IEnumerable values) { + if (result.service_ == pbc::Lists.Empty) { + result.service_ = new scg::List(); + } + base.AddRange(values, result.service_); + return this; + } + public Builder ClearService() { + result.service_ = pbc::Lists.Empty; + return this; + } + + // repeated .google.protobuf.FieldDescriptorProto extension = 7; + public scg::IList ExtensionList { + get { return pbc::Lists.AsReadOnly(result.extension_); } + } + public int ExtensionCount { + get { return result.ExtensionCount; } + } + public self::FieldDescriptorProto GetExtension(int index) { + return result.GetExtension(index); + } + public Builder SetExtension(int index, self::FieldDescriptorProto value) { + result.extension_[index] = value; + return this; + } + public Builder SetExtension(int index, self::FieldDescriptorProto.Builder builderForValue) { + result.extension_[index] = builderForValue.Build(); + return this; + } + public Builder AddExtension(self::FieldDescriptorProto value) { + if (result.extension_ == pbc::Lists.Empty) { + result.extension_ = new scg::List(); + } + result.extension_.Add(value); + return this; + } + public Builder AddExtension(self::FieldDescriptorProto.Builder builderForValue) { + if (result.extension_ == pbc::Lists.Empty) { + result.extension_ = new scg::List(); + } + result.extension_.Add(builderForValue.Build()); + return this; + } + public Builder AddRangeExtension(scg::IEnumerable values) { + if (result.extension_ == pbc::Lists.Empty) { + result.extension_ = new scg::List(); + } + base.AddRange(values, result.extension_); + return this; + } + public Builder ClearExtension() { + result.extension_ = pbc::Lists.Empty; + return this; + } + + // optional .google.protobuf.FileOptions options = 8; + public bool HasOptions { + get { return result.HasOptions; } + } + public self::FileOptions Options { + get { return result.Options; } + set { SetOptions(value); } + } + public Builder SetOptions(self::FileOptions value) { + result.hasOptions = true; + result.options_ = value; + return this; + } + public Builder SetOptions(self::FileOptions.Builder builderForValue) { + result.hasOptions = true; + result.options_ = builderForValue.Build(); + return this; + } + public Builder MergeOptions(self::FileOptions value) { + if (result.HasOptions && + result.options_ != self::FileOptions.DefaultInstance) { + result.options_ = + self::FileOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial(); + } else { + result.options_ = value; + } + result.hasOptions = true; + return this; + } + public Builder ClearOptions() { + result.hasOptions = false; + result.options_ = self::FileOptions.DefaultInstance; + return this; + } + } + } + + public sealed partial class DescriptorProto : pb::GeneratedMessage { + // Use DescriptorProto.CreateBuilder() to construct. + private DescriptorProto() {} + + private static readonly DescriptorProto defaultInstance = new DescriptorProto(); + public static DescriptorProto DefaultInstance { + get { return defaultInstance; } + } + + public override DescriptorProto DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pbd::MessageDescriptor Descriptor { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_DescriptorProto__Descriptor; } + } + + protected internal override pb::FieldAccess.FieldAccessorTable InternalFieldAccessors { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_DescriptorProto__FieldAccessorTable; } + } + + #region Nested types + public static class Types { + public sealed partial class ExtensionRange : pb::GeneratedMessage { + // Use ExtensionRange.CreateBuilder() to construct. + private ExtensionRange() {} + + private static readonly ExtensionRange defaultInstance = new ExtensionRange(); + public static ExtensionRange DefaultInstance { + get { return defaultInstance; } + } + + public override ExtensionRange DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pbd::MessageDescriptor Descriptor { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_DescriptorProto_ExtensionRange__Descriptor; } + } + + protected internal override pb::FieldAccess.FieldAccessorTable InternalFieldAccessors { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_DescriptorProto_ExtensionRange__FieldAccessorTable; } + } + + // optional int32 start = 1; + private bool hasStart; + private int start_ = 0; + public bool HasStart { + get { return hasStart; } + } + public int Start { + get { return start_; } + } + + // optional int32 end = 2; + private bool hasEnd; + private int end_ = 0; + public bool HasEnd { + get { return hasEnd; } + } + public int End { + get { return end_; } + } + + public override bool IsInitialized { + get { + return true; + } + } + + public override void WriteTo(pb::CodedOutputStream output) { + if (HasStart) { + output.WriteInt32(1, Start); + } + if (HasEnd) { + output.WriteInt32(2, End); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public override int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (HasStart) { + size += pb::CodedOutputStream.ComputeInt32Size(1, Start); + } + if (HasEnd) { + size += pb::CodedOutputStream.ComputeInt32Size(2, End); + } + size += UnknownFields.SerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static self::DescriptorProto.Types.ExtensionRange ParseFrom(pb::ByteString data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::DescriptorProto.Types.ExtensionRange ParseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::DescriptorProto.Types.ExtensionRange ParseFrom(byte[] data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::DescriptorProto.Types.ExtensionRange parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::DescriptorProto.Types.ExtensionRange ParseFrom(global::System.IO.Stream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::DescriptorProto.Types.ExtensionRange ParseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + public static self::DescriptorProto.Types.ExtensionRange ParseFrom(pb::CodedInputStream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::DescriptorProto.Types.ExtensionRange ParseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + + public static Builder CreateBuilder() { return new Builder(); } + public override IBuilder CreateBuilderForType() { return new Builder(); } + public static Builder CreateBuilder(self::DescriptorProto.Types.ExtensionRange prototype) { + return (Builder) new Builder().MergeFrom(prototype); + } + + public sealed partial class Builder : pb::GeneratedBuilder { + // Construct using self::DescriptorProto.Types.ExtensionRange.CreateBuilder() + internal Builder() {} + + self::DescriptorProto.Types.ExtensionRange result = new self::DescriptorProto.Types.ExtensionRange(); + + protected override self::DescriptorProto.Types.ExtensionRange MessageBeingBuilt { + get { return result; } + } + + public override IBuilder Clear() { + result = new self::DescriptorProto.Types.ExtensionRange(); + return this; + } + + public override IBuilder Clone() { + return new Builder().MergeFrom(result); + } + + public override pbd::MessageDescriptor DescriptorForType { + get { return self::DescriptorProto.Types.ExtensionRange.Descriptor; } + } + + public override self::DescriptorProto.Types.ExtensionRange DefaultInstanceForType { + get { return self::DescriptorProto.Types.ExtensionRange.DefaultInstance; } + } + + public override self::DescriptorProto.Types.ExtensionRange BuildPartial() { + self::DescriptorProto.Types.ExtensionRange returnMe = result; + result = null; + return returnMe; + } + + public override IBuilder MergeFrom(pb::IMessage other) { + if (other is self::DescriptorProto.Types.ExtensionRange) { + return MergeFrom((self::DescriptorProto.Types.ExtensionRange) other); + } else { + base.MergeFrom(other); + return this; + } + } + + public override IBuilder MergeFrom(self::DescriptorProto.Types.ExtensionRange other) { + if (other == self::DescriptorProto.Types.ExtensionRange.DefaultInstance) return this; + if (other.HasStart) { + Start = other.Start; + } + if (other.HasEnd) { + End = other.End; + } + this.MergeUnknownFields(other.UnknownFields); + return this; + } + + public override IBuilder MergeFrom(pb::CodedInputStream input) { + return MergeFrom(input, pb::ExtensionRegistry.Empty); + } + + public override IBuilder MergeFrom(pb::CodedInputStream input, pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.CreateBuilder(this.UnknownFields); + while (true) { + uint tag = input.ReadTag(); + switch (tag) { + case 0: + this.UnknownFields = unknownFields.Build(); + return this; + default: { + if (!ParseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.UnknownFields = unknownFields.Build(); + return this; + } + break; + } + case 8: { + Start = input.ReadInt32(); + break; + } + case 16: { + End = input.ReadInt32(); + break; + } + } + } + } + + + // optional int32 start = 1; + public bool HasStart { + get { return result.HasStart; } + } + public int Start { + get { return result.Start; } + set { SetStart(value); } + } + public Builder SetStart(int value) { + result.hasStart = true; + result.start_ = value; + return this; + } + public Builder ClearStart() { + result.hasStart = false; + result.start_ = 0; + return this; + } + + // optional int32 end = 2; + public bool HasEnd { + get { return result.HasEnd; } + } + public int End { + get { return result.End; } + set { SetEnd(value); } + } + public Builder SetEnd(int value) { + result.hasEnd = true; + result.end_ = value; + return this; + } + public Builder ClearEnd() { + result.hasEnd = false; + result.end_ = 0; + return this; + } + } + } + + } + #endregion + + // optional string name = 1; + private bool hasName; + private string name_ = ""; + public bool HasName { + get { return hasName; } + } + public string Name { + get { return name_; } + } + + // repeated .google.protobuf.FieldDescriptorProto field = 2; + private scg::IList field_ = pbc::Lists.Empty; + public scg::IList FieldList { + get { return field_; } + } + public int FieldCount + { get { return field_.Count; } + } + public self::FieldDescriptorProto GetField(int index) { + return field_ [index]; + } + + // repeated .google.protobuf.FieldDescriptorProto extension = 6; + private scg::IList extension_ = pbc::Lists.Empty; + public scg::IList ExtensionList { + get { return extension_; } + } + public int ExtensionCount + { get { return extension_.Count; } + } + public self::FieldDescriptorProto GetExtension(int index) { + return extension_ [index]; + } + + // repeated .google.protobuf.DescriptorProto nested_type = 3; + private scg::IList nestedType_ = pbc::Lists.Empty; + public scg::IList NestedTypeList { + get { return nestedType_; } + } + public int NestedTypeCount + { get { return nestedType_.Count; } + } + public self::DescriptorProto GetNestedType(int index) { + return nestedType_ [index]; + } + + // repeated .google.protobuf.EnumDescriptorProto enum_type = 4; + private scg::IList enumType_ = pbc::Lists.Empty; + public scg::IList EnumTypeList { + get { return enumType_; } + } + public int EnumTypeCount + { get { return enumType_.Count; } + } + public self::EnumDescriptorProto GetEnumType(int index) { + return enumType_ [index]; + } + + // repeated .google.protobuf.DescriptorProto.ExtensionRange extension_range = 5; + private scg::IList extensionRange_ = pbc::Lists.Empty; + public scg::IList ExtensionRangeList { + get { return extensionRange_; } + } + public int ExtensionRangeCount + { get { return extensionRange_.Count; } + } + public self::DescriptorProto.Types.ExtensionRange GetExtensionRange(int index) { + return extensionRange_ [index]; + } + + // optional .google.protobuf.MessageOptions options = 7; + private bool hasOptions; + private self::MessageOptions options_ = self::MessageOptions.DefaultInstance; + public bool HasOptions { + get { return hasOptions; } + } + public self::MessageOptions Options { + get { return options_; } + } + + public override bool IsInitialized { + get { + return true; + } + } + + public override void WriteTo(pb::CodedOutputStream output) { + if (HasName) { + output.WriteString(1, Name); + } + foreach (self::FieldDescriptorProto element in FieldList) { + output.WriteMessage(2, element); + } + foreach (self::DescriptorProto element in NestedTypeList) { + output.WriteMessage(3, element); + } + foreach (self::EnumDescriptorProto element in EnumTypeList) { + output.WriteMessage(4, element); + } + foreach (self::DescriptorProto.Types.ExtensionRange element in ExtensionRangeList) { + output.WriteMessage(5, element); + } + foreach (self::FieldDescriptorProto element in ExtensionList) { + output.WriteMessage(6, element); + } + if (HasOptions) { + output.WriteMessage(7, Options); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public override int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (HasName) { + size += pb::CodedOutputStream.ComputeStringSize(1, Name); + } + foreach (self::FieldDescriptorProto element in FieldList) { + size += pb::CodedOutputStream.ComputeMessageSize(2, element); + } + foreach (self::DescriptorProto element in NestedTypeList) { + size += pb::CodedOutputStream.ComputeMessageSize(3, element); + } + foreach (self::EnumDescriptorProto element in EnumTypeList) { + size += pb::CodedOutputStream.ComputeMessageSize(4, element); + } + foreach (self::DescriptorProto.Types.ExtensionRange element in ExtensionRangeList) { + size += pb::CodedOutputStream.ComputeMessageSize(5, element); + } + foreach (self::FieldDescriptorProto element in ExtensionList) { + size += pb::CodedOutputStream.ComputeMessageSize(6, element); + } + if (HasOptions) { + size += pb::CodedOutputStream.ComputeMessageSize(7, Options); + } + size += UnknownFields.SerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static self::DescriptorProto ParseFrom(pb::ByteString data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::DescriptorProto ParseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::DescriptorProto ParseFrom(byte[] data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::DescriptorProto parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::DescriptorProto ParseFrom(global::System.IO.Stream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::DescriptorProto ParseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + public static self::DescriptorProto ParseFrom(pb::CodedInputStream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::DescriptorProto ParseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + + public static Builder CreateBuilder() { return new Builder(); } + public override IBuilder CreateBuilderForType() { return new Builder(); } + public static Builder CreateBuilder(self::DescriptorProto prototype) { + return (Builder) new Builder().MergeFrom(prototype); + } + + public sealed partial class Builder : pb::GeneratedBuilder { + // Construct using self::DescriptorProto.CreateBuilder() + internal Builder() {} + + self::DescriptorProto result = new self::DescriptorProto(); + + protected override self::DescriptorProto MessageBeingBuilt { + get { return result; } + } + + public override IBuilder Clear() { + result = new self::DescriptorProto(); + return this; + } + + public override IBuilder Clone() { + return new Builder().MergeFrom(result); + } + + public override pbd::MessageDescriptor DescriptorForType { + get { return self::DescriptorProto.Descriptor; } + } + + public override self::DescriptorProto DefaultInstanceForType { + get { return self::DescriptorProto.DefaultInstance; } + } + + public override self::DescriptorProto BuildPartial() { + if (result.field_ != pbc::Lists.Empty) { + result.field_ = pbc::Lists.AsReadOnly(result.field_); + } + if (result.extension_ != pbc::Lists.Empty) { + result.extension_ = pbc::Lists.AsReadOnly(result.extension_); + } + if (result.nestedType_ != pbc::Lists.Empty) { + result.nestedType_ = pbc::Lists.AsReadOnly(result.nestedType_); + } + if (result.enumType_ != pbc::Lists.Empty) { + result.enumType_ = pbc::Lists.AsReadOnly(result.enumType_); + } + if (result.extensionRange_ != pbc::Lists.Empty) { + result.extensionRange_ = pbc::Lists.AsReadOnly(result.extensionRange_); + } + self::DescriptorProto returnMe = result; + result = null; + return returnMe; + } + + public override IBuilder MergeFrom(pb::IMessage other) { + if (other is self::DescriptorProto) { + return MergeFrom((self::DescriptorProto) other); + } else { + base.MergeFrom(other); + return this; + } + } + + public override IBuilder MergeFrom(self::DescriptorProto other) { + if (other == self::DescriptorProto.DefaultInstance) return this; + if (other.HasName) { + Name = other.Name; + } + if (other.field_.Count != 0) { + if (result.field_.Count == 0) { + result.field_ = new scg::List(); + } + base.AddRange(other.field_, result.field_); + } + if (other.extension_.Count != 0) { + if (result.extension_.Count == 0) { + result.extension_ = new scg::List(); + } + base.AddRange(other.extension_, result.extension_); + } + if (other.nestedType_.Count != 0) { + if (result.nestedType_.Count == 0) { + result.nestedType_ = new scg::List(); + } + base.AddRange(other.nestedType_, result.nestedType_); + } + if (other.enumType_.Count != 0) { + if (result.enumType_.Count == 0) { + result.enumType_ = new scg::List(); + } + base.AddRange(other.enumType_, result.enumType_); + } + if (other.extensionRange_.Count != 0) { + if (result.extensionRange_.Count == 0) { + result.extensionRange_ = new scg::List(); + } + base.AddRange(other.extensionRange_, result.extensionRange_); + } + if (other.HasOptions) { + MergeOptions(other.Options); + } + this.MergeUnknownFields(other.UnknownFields); + return this; + } + + public override IBuilder MergeFrom(pb::CodedInputStream input) { + return MergeFrom(input, pb::ExtensionRegistry.Empty); + } + + public override IBuilder MergeFrom(pb::CodedInputStream input, pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.CreateBuilder(this.UnknownFields); + while (true) { + uint tag = input.ReadTag(); + switch (tag) { + case 0: + this.UnknownFields = unknownFields.Build(); + return this; + default: { + if (!ParseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.UnknownFields = unknownFields.Build(); + return this; + } + break; + } + case 10: { + Name = input.ReadString(); + break; + } + case 18: { + self::FieldDescriptorProto.Builder subBuilder = self::FieldDescriptorProto.CreateBuilder(); + input.ReadMessage(subBuilder, extensionRegistry); + AddField(subBuilder.BuildPartial()); + break; + } + case 26: { + self::DescriptorProto.Builder subBuilder = self::DescriptorProto.CreateBuilder(); + input.ReadMessage(subBuilder, extensionRegistry); + AddNestedType(subBuilder.BuildPartial()); + break; + } + case 34: { + self::EnumDescriptorProto.Builder subBuilder = self::EnumDescriptorProto.CreateBuilder(); + input.ReadMessage(subBuilder, extensionRegistry); + AddEnumType(subBuilder.BuildPartial()); + break; + } + case 42: { + self::DescriptorProto.Types.ExtensionRange.Builder subBuilder = self::DescriptorProto.Types.ExtensionRange.CreateBuilder(); + input.ReadMessage(subBuilder, extensionRegistry); + AddExtensionRange(subBuilder.BuildPartial()); + break; + } + case 50: { + self::FieldDescriptorProto.Builder subBuilder = self::FieldDescriptorProto.CreateBuilder(); + input.ReadMessage(subBuilder, extensionRegistry); + AddExtension(subBuilder.BuildPartial()); + break; + } + case 58: { + self::MessageOptions.Builder subBuilder = self::MessageOptions.CreateBuilder(); + if (HasOptions) { + subBuilder.MergeFrom(Options); + } + input.ReadMessage(subBuilder, extensionRegistry); + Options = subBuilder.BuildPartial(); + break; + } + } + } + } + + + // optional string name = 1; + public bool HasName { + get { return result.HasName; } + } + public string Name { + get { return result.Name; } + set { SetName(value); } + } + public Builder SetName(string value) { + result.hasName = true; + result.name_ = value; + return this; + } + public Builder ClearName() { + result.hasName = false; + result.name_ = ""; + return this; + } + + // repeated .google.protobuf.FieldDescriptorProto field = 2; + public scg::IList FieldList { + get { return pbc::Lists.AsReadOnly(result.field_); } + } + public int FieldCount { + get { return result.FieldCount; } + } + public self::FieldDescriptorProto GetField(int index) { + return result.GetField(index); + } + public Builder SetField(int index, self::FieldDescriptorProto value) { + result.field_[index] = value; + return this; + } + public Builder SetField(int index, self::FieldDescriptorProto.Builder builderForValue) { + result.field_[index] = builderForValue.Build(); + return this; + } + public Builder AddField(self::FieldDescriptorProto value) { + if (result.field_ == pbc::Lists.Empty) { + result.field_ = new scg::List(); + } + result.field_.Add(value); + return this; + } + public Builder AddField(self::FieldDescriptorProto.Builder builderForValue) { + if (result.field_ == pbc::Lists.Empty) { + result.field_ = new scg::List(); + } + result.field_.Add(builderForValue.Build()); + return this; + } + public Builder AddRangeField(scg::IEnumerable values) { + if (result.field_ == pbc::Lists.Empty) { + result.field_ = new scg::List(); + } + base.AddRange(values, result.field_); + return this; + } + public Builder ClearField() { + result.field_ = pbc::Lists.Empty; + return this; + } + + // repeated .google.protobuf.FieldDescriptorProto extension = 6; + public scg::IList ExtensionList { + get { return pbc::Lists.AsReadOnly(result.extension_); } + } + public int ExtensionCount { + get { return result.ExtensionCount; } + } + public self::FieldDescriptorProto GetExtension(int index) { + return result.GetExtension(index); + } + public Builder SetExtension(int index, self::FieldDescriptorProto value) { + result.extension_[index] = value; + return this; + } + public Builder SetExtension(int index, self::FieldDescriptorProto.Builder builderForValue) { + result.extension_[index] = builderForValue.Build(); + return this; + } + public Builder AddExtension(self::FieldDescriptorProto value) { + if (result.extension_ == pbc::Lists.Empty) { + result.extension_ = new scg::List(); + } + result.extension_.Add(value); + return this; + } + public Builder AddExtension(self::FieldDescriptorProto.Builder builderForValue) { + if (result.extension_ == pbc::Lists.Empty) { + result.extension_ = new scg::List(); + } + result.extension_.Add(builderForValue.Build()); + return this; + } + public Builder AddRangeExtension(scg::IEnumerable values) { + if (result.extension_ == pbc::Lists.Empty) { + result.extension_ = new scg::List(); + } + base.AddRange(values, result.extension_); + return this; + } + public Builder ClearExtension() { + result.extension_ = pbc::Lists.Empty; + return this; + } + + // repeated .google.protobuf.DescriptorProto nested_type = 3; + public scg::IList NestedTypeList { + get { return pbc::Lists.AsReadOnly(result.nestedType_); } + } + public int NestedTypeCount { + get { return result.NestedTypeCount; } + } + public self::DescriptorProto GetNestedType(int index) { + return result.GetNestedType(index); + } + public Builder SetNestedType(int index, self::DescriptorProto value) { + result.nestedType_[index] = value; + return this; + } + public Builder SetNestedType(int index, self::DescriptorProto.Builder builderForValue) { + result.nestedType_[index] = builderForValue.Build(); + return this; + } + public Builder AddNestedType(self::DescriptorProto value) { + if (result.nestedType_ == pbc::Lists.Empty) { + result.nestedType_ = new scg::List(); + } + result.nestedType_.Add(value); + return this; + } + public Builder AddNestedType(self::DescriptorProto.Builder builderForValue) { + if (result.nestedType_ == pbc::Lists.Empty) { + result.nestedType_ = new scg::List(); + } + result.nestedType_.Add(builderForValue.Build()); + return this; + } + public Builder AddRangeNestedType(scg::IEnumerable values) { + if (result.nestedType_ == pbc::Lists.Empty) { + result.nestedType_ = new scg::List(); + } + base.AddRange(values, result.nestedType_); + return this; + } + public Builder ClearNestedType() { + result.nestedType_ = pbc::Lists.Empty; + return this; + } + + // repeated .google.protobuf.EnumDescriptorProto enum_type = 4; + public scg::IList EnumTypeList { + get { return pbc::Lists.AsReadOnly(result.enumType_); } + } + public int EnumTypeCount { + get { return result.EnumTypeCount; } + } + public self::EnumDescriptorProto GetEnumType(int index) { + return result.GetEnumType(index); + } + public Builder SetEnumType(int index, self::EnumDescriptorProto value) { + result.enumType_[index] = value; + return this; + } + public Builder SetEnumType(int index, self::EnumDescriptorProto.Builder builderForValue) { + result.enumType_[index] = builderForValue.Build(); + return this; + } + public Builder AddEnumType(self::EnumDescriptorProto value) { + if (result.enumType_ == pbc::Lists.Empty) { + result.enumType_ = new scg::List(); + } + result.enumType_.Add(value); + return this; + } + public Builder AddEnumType(self::EnumDescriptorProto.Builder builderForValue) { + if (result.enumType_ == pbc::Lists.Empty) { + result.enumType_ = new scg::List(); + } + result.enumType_.Add(builderForValue.Build()); + return this; + } + public Builder AddRangeEnumType(scg::IEnumerable values) { + if (result.enumType_ == pbc::Lists.Empty) { + result.enumType_ = new scg::List(); + } + base.AddRange(values, result.enumType_); + return this; + } + public Builder ClearEnumType() { + result.enumType_ = pbc::Lists.Empty; + return this; + } + + // repeated .google.protobuf.DescriptorProto.ExtensionRange extension_range = 5; + public scg::IList ExtensionRangeList { + get { return pbc::Lists.AsReadOnly(result.extensionRange_); } + } + public int ExtensionRangeCount { + get { return result.ExtensionRangeCount; } + } + public self::DescriptorProto.Types.ExtensionRange GetExtensionRange(int index) { + return result.GetExtensionRange(index); + } + public Builder SetExtensionRange(int index, self::DescriptorProto.Types.ExtensionRange value) { + result.extensionRange_[index] = value; + return this; + } + public Builder SetExtensionRange(int index, self::DescriptorProto.Types.ExtensionRange.Builder builderForValue) { + result.extensionRange_[index] = builderForValue.Build(); + return this; + } + public Builder AddExtensionRange(self::DescriptorProto.Types.ExtensionRange value) { + if (result.extensionRange_ == pbc::Lists.Empty) { + result.extensionRange_ = new scg::List(); + } + result.extensionRange_.Add(value); + return this; + } + public Builder AddExtensionRange(self::DescriptorProto.Types.ExtensionRange.Builder builderForValue) { + if (result.extensionRange_ == pbc::Lists.Empty) { + result.extensionRange_ = new scg::List(); + } + result.extensionRange_.Add(builderForValue.Build()); + return this; + } + public Builder AddRangeExtensionRange(scg::IEnumerable values) { + if (result.extensionRange_ == pbc::Lists.Empty) { + result.extensionRange_ = new scg::List(); + } + base.AddRange(values, result.extensionRange_); + return this; + } + public Builder ClearExtensionRange() { + result.extensionRange_ = pbc::Lists.Empty; + return this; + } + + // optional .google.protobuf.MessageOptions options = 7; + public bool HasOptions { + get { return result.HasOptions; } + } + public self::MessageOptions Options { + get { return result.Options; } + set { SetOptions(value); } + } + public Builder SetOptions(self::MessageOptions value) { + result.hasOptions = true; + result.options_ = value; + return this; + } + public Builder SetOptions(self::MessageOptions.Builder builderForValue) { + result.hasOptions = true; + result.options_ = builderForValue.Build(); + return this; + } + public Builder MergeOptions(self::MessageOptions value) { + if (result.HasOptions && + result.options_ != self::MessageOptions.DefaultInstance) { + result.options_ = + self::MessageOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial(); + } else { + result.options_ = value; + } + result.hasOptions = true; + return this; + } + public Builder ClearOptions() { + result.hasOptions = false; + result.options_ = self::MessageOptions.DefaultInstance; + return this; + } + } + } + + public sealed partial class FieldDescriptorProto : pb::GeneratedMessage { + // Use FieldDescriptorProto.CreateBuilder() to construct. + private FieldDescriptorProto() {} + + private static readonly FieldDescriptorProto defaultInstance = new FieldDescriptorProto(); + public static FieldDescriptorProto DefaultInstance { + get { return defaultInstance; } + } + + public override FieldDescriptorProto DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pbd::MessageDescriptor Descriptor { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_FieldDescriptorProto__Descriptor; } + } + + protected internal override pb::FieldAccess.FieldAccessorTable InternalFieldAccessors { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_FieldDescriptorProto__FieldAccessorTable; } + } + + #region Nested types + public static class Types { + public enum Type { + [pbd::EnumDescriptorIndex(0)] + TYPE_DOUBLE = 1, + [pbd::EnumDescriptorIndex(1)] + TYPE_FLOAT = 2, + [pbd::EnumDescriptorIndex(2)] + TYPE_INT64 = 3, + [pbd::EnumDescriptorIndex(3)] + TYPE_UINT64 = 4, + [pbd::EnumDescriptorIndex(4)] + TYPE_INT32 = 5, + [pbd::EnumDescriptorIndex(5)] + TYPE_FIXED64 = 6, + [pbd::EnumDescriptorIndex(6)] + TYPE_FIXED32 = 7, + [pbd::EnumDescriptorIndex(7)] + TYPE_BOOL = 8, + [pbd::EnumDescriptorIndex(8)] + TYPE_STRING = 9, + [pbd::EnumDescriptorIndex(9)] + TYPE_GROUP = 10, + [pbd::EnumDescriptorIndex(10)] + TYPE_MESSAGE = 11, + [pbd::EnumDescriptorIndex(11)] + TYPE_BYTES = 12, + [pbd::EnumDescriptorIndex(12)] + TYPE_UINT32 = 13, + [pbd::EnumDescriptorIndex(13)] + TYPE_ENUM = 14, + [pbd::EnumDescriptorIndex(14)] + TYPE_SFIXED32 = 15, + [pbd::EnumDescriptorIndex(15)] + TYPE_SFIXED64 = 16, + [pbd::EnumDescriptorIndex(16)] + TYPE_SINT32 = 17, + [pbd::EnumDescriptorIndex(17)] + TYPE_SINT64 = 18, + } + + public enum Label { + [pbd::EnumDescriptorIndex(0)] + LABEL_OPTIONAL = 1, + [pbd::EnumDescriptorIndex(1)] + LABEL_REQUIRED = 2, + [pbd::EnumDescriptorIndex(2)] + LABEL_REPEATED = 3, + } + + } + #endregion + + // optional string name = 1; + private bool hasName; + private string name_ = ""; + public bool HasName { + get { return hasName; } + } + public string Name { + get { return name_; } + } + + // optional int32 number = 3; + private bool hasNumber; + private int number_ = 0; + public bool HasNumber { + get { return hasNumber; } + } + public int Number { + get { return number_; } + } + + // optional .google.protobuf.FieldDescriptorProto.Label label = 4; + private bool hasLabel; + private self::FieldDescriptorProto.Types.Label label_ = self::FieldDescriptorProto.Types.Label.LABEL_OPTIONAL; + public bool HasLabel { + get { return hasLabel; } + } + public self::FieldDescriptorProto.Types.Label Label { get { return label_; }} + + // optional .google.protobuf.FieldDescriptorProto.Type type = 5; + private bool hasType; + private self::FieldDescriptorProto.Types.Type type_ = self::FieldDescriptorProto.Types.Type.TYPE_DOUBLE; + public bool HasType { + get { return hasType; } + } + public self::FieldDescriptorProto.Types.Type Type { get { return type_; }} + + // optional string type_name = 6; + private bool hasTypeName; + private string typeName_ = ""; + public bool HasTypeName { + get { return hasTypeName; } + } + public string TypeName { + get { return typeName_; } + } + + // optional string extendee = 2; + private bool hasExtendee; + private string extendee_ = ""; + public bool HasExtendee { + get { return hasExtendee; } + } + public string Extendee { + get { return extendee_; } + } + + // optional string default_value = 7; + private bool hasDefaultValue; + private string defaultValue_ = ""; + public bool HasDefaultValue { + get { return hasDefaultValue; } + } + public string DefaultValue { + get { return defaultValue_; } + } + + // optional .google.protobuf.FieldOptions options = 8; + private bool hasOptions; + private self::FieldOptions options_ = self::FieldOptions.DefaultInstance; + public bool HasOptions { + get { return hasOptions; } + } + public self::FieldOptions Options { + get { return options_; } + } + + public override bool IsInitialized { + get { + return true; + } + } + + public override void WriteTo(pb::CodedOutputStream output) { + if (HasName) { + output.WriteString(1, Name); + } + if (HasExtendee) { + output.WriteString(2, Extendee); + } + if (HasNumber) { + output.WriteInt32(3, Number); + } + if (HasLabel) { + output.WriteEnum(4, (int) Label); + } + if (HasType) { + output.WriteEnum(5, (int) Type); + } + if (HasTypeName) { + output.WriteString(6, TypeName); + } + if (HasDefaultValue) { + output.WriteString(7, DefaultValue); + } + if (HasOptions) { + output.WriteMessage(8, Options); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public override int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (HasName) { + size += pb::CodedOutputStream.ComputeStringSize(1, Name); + } + if (HasExtendee) { + size += pb::CodedOutputStream.ComputeStringSize(2, Extendee); + } + if (HasNumber) { + size += pb::CodedOutputStream.ComputeInt32Size(3, Number); + } + if (HasLabel) { + size += pb::CodedOutputStream + .ComputeEnumSize(4, (int) Label); + } + if (HasType) { + size += pb::CodedOutputStream + .ComputeEnumSize(5, (int) Type); + } + if (HasTypeName) { + size += pb::CodedOutputStream.ComputeStringSize(6, TypeName); + } + if (HasDefaultValue) { + size += pb::CodedOutputStream.ComputeStringSize(7, DefaultValue); + } + if (HasOptions) { + size += pb::CodedOutputStream.ComputeMessageSize(8, Options); + } + size += UnknownFields.SerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static self::FieldDescriptorProto ParseFrom(pb::ByteString data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::FieldDescriptorProto ParseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::FieldDescriptorProto ParseFrom(byte[] data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::FieldDescriptorProto parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::FieldDescriptorProto ParseFrom(global::System.IO.Stream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::FieldDescriptorProto ParseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + public static self::FieldDescriptorProto ParseFrom(pb::CodedInputStream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::FieldDescriptorProto ParseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + + public static Builder CreateBuilder() { return new Builder(); } + public override IBuilder CreateBuilderForType() { return new Builder(); } + public static Builder CreateBuilder(self::FieldDescriptorProto prototype) { + return (Builder) new Builder().MergeFrom(prototype); + } + + public sealed partial class Builder : pb::GeneratedBuilder { + // Construct using self::FieldDescriptorProto.CreateBuilder() + internal Builder() {} + + self::FieldDescriptorProto result = new self::FieldDescriptorProto(); + + protected override self::FieldDescriptorProto MessageBeingBuilt { + get { return result; } + } + + public override IBuilder Clear() { + result = new self::FieldDescriptorProto(); + return this; + } + + public override IBuilder Clone() { + return new Builder().MergeFrom(result); + } + + public override pbd::MessageDescriptor DescriptorForType { + get { return self::FieldDescriptorProto.Descriptor; } + } + + public override self::FieldDescriptorProto DefaultInstanceForType { + get { return self::FieldDescriptorProto.DefaultInstance; } + } + + public override self::FieldDescriptorProto BuildPartial() { + self::FieldDescriptorProto returnMe = result; + result = null; + return returnMe; + } + + public override IBuilder MergeFrom(pb::IMessage other) { + if (other is self::FieldDescriptorProto) { + return MergeFrom((self::FieldDescriptorProto) other); + } else { + base.MergeFrom(other); + return this; + } + } + + public override IBuilder MergeFrom(self::FieldDescriptorProto other) { + if (other == self::FieldDescriptorProto.DefaultInstance) return this; + if (other.HasName) { + Name = other.Name; + } + if (other.HasNumber) { + Number = other.Number; + } + if (other.HasLabel) { + Label = other.Label; + } + if (other.HasType) { + Type = other.Type; + } + if (other.HasTypeName) { + TypeName = other.TypeName; + } + if (other.HasExtendee) { + Extendee = other.Extendee; + } + if (other.HasDefaultValue) { + DefaultValue = other.DefaultValue; + } + if (other.HasOptions) { + MergeOptions(other.Options); + } + this.MergeUnknownFields(other.UnknownFields); + return this; + } + + public override IBuilder MergeFrom(pb::CodedInputStream input) { + return MergeFrom(input, pb::ExtensionRegistry.Empty); + } + + public override IBuilder MergeFrom(pb::CodedInputStream input, pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.CreateBuilder(this.UnknownFields); + while (true) { + uint tag = input.ReadTag(); + switch (tag) { + case 0: + this.UnknownFields = unknownFields.Build(); + return this; + default: { + if (!ParseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.UnknownFields = unknownFields.Build(); + return this; + } + break; + } + case 10: { + Name = input.ReadString(); + break; + } + case 18: { + Extendee = input.ReadString(); + break; + } + case 24: { + Number = input.ReadInt32(); + break; + } + case 32: { + int rawValue = input.ReadEnum(); + if (!global::System.Enum.IsDefined(typeof(self::FieldDescriptorProto.Types.Label), rawValue)) { + unknownFields.MergeVarintField(4, (ulong) rawValue); + } else { + Label = (self::FieldDescriptorProto.Types.Label) rawValue; + } + break; + } + case 40: { + int rawValue = input.ReadEnum(); + if (!global::System.Enum.IsDefined(typeof(self::FieldDescriptorProto.Types.Type), rawValue)) { + unknownFields.MergeVarintField(5, (ulong) rawValue); + } else { + Type = (self::FieldDescriptorProto.Types.Type) rawValue; + } + break; + } + case 50: { + TypeName = input.ReadString(); + break; + } + case 58: { + DefaultValue = input.ReadString(); + break; + } + case 66: { + self::FieldOptions.Builder subBuilder = self::FieldOptions.CreateBuilder(); + if (HasOptions) { + subBuilder.MergeFrom(Options); + } + input.ReadMessage(subBuilder, extensionRegistry); + Options = subBuilder.BuildPartial(); + break; + } + } + } + } + + + // optional string name = 1; + public bool HasName { + get { return result.HasName; } + } + public string Name { + get { return result.Name; } + set { SetName(value); } + } + public Builder SetName(string value) { + result.hasName = true; + result.name_ = value; + return this; + } + public Builder ClearName() { + result.hasName = false; + result.name_ = ""; + return this; + } + + // optional int32 number = 3; + public bool HasNumber { + get { return result.HasNumber; } + } + public int Number { + get { return result.Number; } + set { SetNumber(value); } + } + public Builder SetNumber(int value) { + result.hasNumber = true; + result.number_ = value; + return this; + } + public Builder ClearNumber() { + result.hasNumber = false; + result.number_ = 0; + return this; + } + + // optional .google.protobuf.FieldDescriptorProto.Label label = 4; + public bool HasLabel { + get { return result.HasLabel; } + } + public self::FieldDescriptorProto.Types.Label Label { + get { return result.Label; } + set { SetLabel(value); } + } + public Builder SetLabel(self::FieldDescriptorProto.Types.Label value) { + result.hasLabel = true; + result.label_ = value; + return this; + } + public Builder ClearLabel() { + result.hasLabel = false; + result.label_ = self::FieldDescriptorProto.Types.Label.LABEL_OPTIONAL; + return this; + } + + // optional .google.protobuf.FieldDescriptorProto.Type type = 5; + public bool HasType { + get { return result.HasType; } + } + public self::FieldDescriptorProto.Types.Type Type { + get { return result.Type; } + set { SetType(value); } + } + public Builder SetType(self::FieldDescriptorProto.Types.Type value) { + result.hasType = true; + result.type_ = value; + return this; + } + public Builder ClearType() { + result.hasType = false; + result.type_ = self::FieldDescriptorProto.Types.Type.TYPE_DOUBLE; + return this; + } + + // optional string type_name = 6; + public bool HasTypeName { + get { return result.HasTypeName; } + } + public string TypeName { + get { return result.TypeName; } + set { SetTypeName(value); } + } + public Builder SetTypeName(string value) { + result.hasTypeName = true; + result.typeName_ = value; + return this; + } + public Builder ClearTypeName() { + result.hasTypeName = false; + result.typeName_ = ""; + return this; + } + + // optional string extendee = 2; + public bool HasExtendee { + get { return result.HasExtendee; } + } + public string Extendee { + get { return result.Extendee; } + set { SetExtendee(value); } + } + public Builder SetExtendee(string value) { + result.hasExtendee = true; + result.extendee_ = value; + return this; + } + public Builder ClearExtendee() { + result.hasExtendee = false; + result.extendee_ = ""; + return this; + } + + // optional string default_value = 7; + public bool HasDefaultValue { + get { return result.HasDefaultValue; } + } + public string DefaultValue { + get { return result.DefaultValue; } + set { SetDefaultValue(value); } + } + public Builder SetDefaultValue(string value) { + result.hasDefaultValue = true; + result.defaultValue_ = value; + return this; + } + public Builder ClearDefaultValue() { + result.hasDefaultValue = false; + result.defaultValue_ = ""; + return this; + } + + // optional .google.protobuf.FieldOptions options = 8; + public bool HasOptions { + get { return result.HasOptions; } + } + public self::FieldOptions Options { + get { return result.Options; } + set { SetOptions(value); } + } + public Builder SetOptions(self::FieldOptions value) { + result.hasOptions = true; + result.options_ = value; + return this; + } + public Builder SetOptions(self::FieldOptions.Builder builderForValue) { + result.hasOptions = true; + result.options_ = builderForValue.Build(); + return this; + } + public Builder MergeOptions(self::FieldOptions value) { + if (result.HasOptions && + result.options_ != self::FieldOptions.DefaultInstance) { + result.options_ = + self::FieldOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial(); + } else { + result.options_ = value; + } + result.hasOptions = true; + return this; + } + public Builder ClearOptions() { + result.hasOptions = false; + result.options_ = self::FieldOptions.DefaultInstance; + return this; + } + } + } + + public sealed partial class EnumDescriptorProto : pb::GeneratedMessage { + // Use EnumDescriptorProto.CreateBuilder() to construct. + private EnumDescriptorProto() {} + + private static readonly EnumDescriptorProto defaultInstance = new EnumDescriptorProto(); + public static EnumDescriptorProto DefaultInstance { + get { return defaultInstance; } + } + + public override EnumDescriptorProto DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pbd::MessageDescriptor Descriptor { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_EnumDescriptorProto__Descriptor; } + } + + protected internal override pb::FieldAccess.FieldAccessorTable InternalFieldAccessors { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_EnumDescriptorProto__FieldAccessorTable; } + } + + // optional string name = 1; + private bool hasName; + private string name_ = ""; + public bool HasName { + get { return hasName; } + } + public string Name { + get { return name_; } + } + + // repeated .google.protobuf.EnumValueDescriptorProto value = 2; + private scg::IList value_ = pbc::Lists.Empty; + public scg::IList ValueList { + get { return value_; } + } + public int ValueCount + { get { return value_.Count; } + } + public self::EnumValueDescriptorProto GetValue(int index) { + return value_ [index]; + } + + // optional .google.protobuf.EnumOptions options = 3; + private bool hasOptions; + private self::EnumOptions options_ = self::EnumOptions.DefaultInstance; + public bool HasOptions { + get { return hasOptions; } + } + public self::EnumOptions Options { + get { return options_; } + } + + public override bool IsInitialized { + get { + return true; + } + } + + public override void WriteTo(pb::CodedOutputStream output) { + if (HasName) { + output.WriteString(1, Name); + } + foreach (self::EnumValueDescriptorProto element in ValueList) { + output.WriteMessage(2, element); + } + if (HasOptions) { + output.WriteMessage(3, Options); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public override int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (HasName) { + size += pb::CodedOutputStream.ComputeStringSize(1, Name); + } + foreach (self::EnumValueDescriptorProto element in ValueList) { + size += pb::CodedOutputStream.ComputeMessageSize(2, element); + } + if (HasOptions) { + size += pb::CodedOutputStream.ComputeMessageSize(3, Options); + } + size += UnknownFields.SerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static self::EnumDescriptorProto ParseFrom(pb::ByteString data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::EnumDescriptorProto ParseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::EnumDescriptorProto ParseFrom(byte[] data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::EnumDescriptorProto parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::EnumDescriptorProto ParseFrom(global::System.IO.Stream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::EnumDescriptorProto ParseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + public static self::EnumDescriptorProto ParseFrom(pb::CodedInputStream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::EnumDescriptorProto ParseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + + public static Builder CreateBuilder() { return new Builder(); } + public override IBuilder CreateBuilderForType() { return new Builder(); } + public static Builder CreateBuilder(self::EnumDescriptorProto prototype) { + return (Builder) new Builder().MergeFrom(prototype); + } + + public sealed partial class Builder : pb::GeneratedBuilder { + // Construct using self::EnumDescriptorProto.CreateBuilder() + internal Builder() {} + + self::EnumDescriptorProto result = new self::EnumDescriptorProto(); + + protected override self::EnumDescriptorProto MessageBeingBuilt { + get { return result; } + } + + public override IBuilder Clear() { + result = new self::EnumDescriptorProto(); + return this; + } + + public override IBuilder Clone() { + return new Builder().MergeFrom(result); + } + + public override pbd::MessageDescriptor DescriptorForType { + get { return self::EnumDescriptorProto.Descriptor; } + } + + public override self::EnumDescriptorProto DefaultInstanceForType { + get { return self::EnumDescriptorProto.DefaultInstance; } + } + + public override self::EnumDescriptorProto BuildPartial() { + if (result.value_ != pbc::Lists.Empty) { + result.value_ = pbc::Lists.AsReadOnly(result.value_); + } + self::EnumDescriptorProto returnMe = result; + result = null; + return returnMe; + } + + public override IBuilder MergeFrom(pb::IMessage other) { + if (other is self::EnumDescriptorProto) { + return MergeFrom((self::EnumDescriptorProto) other); + } else { + base.MergeFrom(other); + return this; + } + } + + public override IBuilder MergeFrom(self::EnumDescriptorProto other) { + if (other == self::EnumDescriptorProto.DefaultInstance) return this; + if (other.HasName) { + Name = other.Name; + } + if (other.value_.Count != 0) { + if (result.value_.Count == 0) { + result.value_ = new scg::List(); + } + base.AddRange(other.value_, result.value_); + } + if (other.HasOptions) { + MergeOptions(other.Options); + } + this.MergeUnknownFields(other.UnknownFields); + return this; + } + + public override IBuilder MergeFrom(pb::CodedInputStream input) { + return MergeFrom(input, pb::ExtensionRegistry.Empty); + } + + public override IBuilder MergeFrom(pb::CodedInputStream input, pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.CreateBuilder(this.UnknownFields); + while (true) { + uint tag = input.ReadTag(); + switch (tag) { + case 0: + this.UnknownFields = unknownFields.Build(); + return this; + default: { + if (!ParseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.UnknownFields = unknownFields.Build(); + return this; + } + break; + } + case 10: { + Name = input.ReadString(); + break; + } + case 18: { + self::EnumValueDescriptorProto.Builder subBuilder = self::EnumValueDescriptorProto.CreateBuilder(); + input.ReadMessage(subBuilder, extensionRegistry); + AddValue(subBuilder.BuildPartial()); + break; + } + case 26: { + self::EnumOptions.Builder subBuilder = self::EnumOptions.CreateBuilder(); + if (HasOptions) { + subBuilder.MergeFrom(Options); + } + input.ReadMessage(subBuilder, extensionRegistry); + Options = subBuilder.BuildPartial(); + break; + } + } + } + } + + + // optional string name = 1; + public bool HasName { + get { return result.HasName; } + } + public string Name { + get { return result.Name; } + set { SetName(value); } + } + public Builder SetName(string value) { + result.hasName = true; + result.name_ = value; + return this; + } + public Builder ClearName() { + result.hasName = false; + result.name_ = ""; + return this; + } + + // repeated .google.protobuf.EnumValueDescriptorProto value = 2; + public scg::IList ValueList { + get { return pbc::Lists.AsReadOnly(result.value_); } + } + public int ValueCount { + get { return result.ValueCount; } + } + public self::EnumValueDescriptorProto GetValue(int index) { + return result.GetValue(index); + } + public Builder SetValue(int index, self::EnumValueDescriptorProto value) { + result.value_[index] = value; + return this; + } + public Builder SetValue(int index, self::EnumValueDescriptorProto.Builder builderForValue) { + result.value_[index] = builderForValue.Build(); + return this; + } + public Builder AddValue(self::EnumValueDescriptorProto value) { + if (result.value_ == pbc::Lists.Empty) { + result.value_ = new scg::List(); + } + result.value_.Add(value); + return this; + } + public Builder AddValue(self::EnumValueDescriptorProto.Builder builderForValue) { + if (result.value_ == pbc::Lists.Empty) { + result.value_ = new scg::List(); + } + result.value_.Add(builderForValue.Build()); + return this; + } + public Builder AddRangeValue(scg::IEnumerable values) { + if (result.value_ == pbc::Lists.Empty) { + result.value_ = new scg::List(); + } + base.AddRange(values, result.value_); + return this; + } + public Builder ClearValue() { + result.value_ = pbc::Lists.Empty; + return this; + } + + // optional .google.protobuf.EnumOptions options = 3; + public bool HasOptions { + get { return result.HasOptions; } + } + public self::EnumOptions Options { + get { return result.Options; } + set { SetOptions(value); } + } + public Builder SetOptions(self::EnumOptions value) { + result.hasOptions = true; + result.options_ = value; + return this; + } + public Builder SetOptions(self::EnumOptions.Builder builderForValue) { + result.hasOptions = true; + result.options_ = builderForValue.Build(); + return this; + } + public Builder MergeOptions(self::EnumOptions value) { + if (result.HasOptions && + result.options_ != self::EnumOptions.DefaultInstance) { + result.options_ = + self::EnumOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial(); + } else { + result.options_ = value; + } + result.hasOptions = true; + return this; + } + public Builder ClearOptions() { + result.hasOptions = false; + result.options_ = self::EnumOptions.DefaultInstance; + return this; + } + } + } + + public sealed partial class EnumValueDescriptorProto : pb::GeneratedMessage { + // Use EnumValueDescriptorProto.CreateBuilder() to construct. + private EnumValueDescriptorProto() {} + + private static readonly EnumValueDescriptorProto defaultInstance = new EnumValueDescriptorProto(); + public static EnumValueDescriptorProto DefaultInstance { + get { return defaultInstance; } + } + + public override EnumValueDescriptorProto DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pbd::MessageDescriptor Descriptor { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_EnumValueDescriptorProto__Descriptor; } + } + + protected internal override pb::FieldAccess.FieldAccessorTable InternalFieldAccessors { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_EnumValueDescriptorProto__FieldAccessorTable; } + } + + // optional string name = 1; + private bool hasName; + private string name_ = ""; + public bool HasName { + get { return hasName; } + } + public string Name { + get { return name_; } + } + + // optional int32 number = 2; + private bool hasNumber; + private int number_ = 0; + public bool HasNumber { + get { return hasNumber; } + } + public int Number { + get { return number_; } + } + + // optional .google.protobuf.EnumValueOptions options = 3; + private bool hasOptions; + private self::EnumValueOptions options_ = self::EnumValueOptions.DefaultInstance; + public bool HasOptions { + get { return hasOptions; } + } + public self::EnumValueOptions Options { + get { return options_; } + } + + public override bool IsInitialized { + get { + return true; + } + } + + public override void WriteTo(pb::CodedOutputStream output) { + if (HasName) { + output.WriteString(1, Name); + } + if (HasNumber) { + output.WriteInt32(2, Number); + } + if (HasOptions) { + output.WriteMessage(3, Options); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public override int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (HasName) { + size += pb::CodedOutputStream.ComputeStringSize(1, Name); + } + if (HasNumber) { + size += pb::CodedOutputStream.ComputeInt32Size(2, Number); + } + if (HasOptions) { + size += pb::CodedOutputStream.ComputeMessageSize(3, Options); + } + size += UnknownFields.SerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static self::EnumValueDescriptorProto ParseFrom(pb::ByteString data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::EnumValueDescriptorProto ParseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::EnumValueDescriptorProto ParseFrom(byte[] data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::EnumValueDescriptorProto parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::EnumValueDescriptorProto ParseFrom(global::System.IO.Stream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::EnumValueDescriptorProto ParseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + public static self::EnumValueDescriptorProto ParseFrom(pb::CodedInputStream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::EnumValueDescriptorProto ParseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + + public static Builder CreateBuilder() { return new Builder(); } + public override IBuilder CreateBuilderForType() { return new Builder(); } + public static Builder CreateBuilder(self::EnumValueDescriptorProto prototype) { + return (Builder) new Builder().MergeFrom(prototype); + } + + public sealed partial class Builder : pb::GeneratedBuilder { + // Construct using self::EnumValueDescriptorProto.CreateBuilder() + internal Builder() {} + + self::EnumValueDescriptorProto result = new self::EnumValueDescriptorProto(); + + protected override self::EnumValueDescriptorProto MessageBeingBuilt { + get { return result; } + } + + public override IBuilder Clear() { + result = new self::EnumValueDescriptorProto(); + return this; + } + + public override IBuilder Clone() { + return new Builder().MergeFrom(result); + } + + public override pbd::MessageDescriptor DescriptorForType { + get { return self::EnumValueDescriptorProto.Descriptor; } + } + + public override self::EnumValueDescriptorProto DefaultInstanceForType { + get { return self::EnumValueDescriptorProto.DefaultInstance; } + } + + public override self::EnumValueDescriptorProto BuildPartial() { + self::EnumValueDescriptorProto returnMe = result; + result = null; + return returnMe; + } + + public override IBuilder MergeFrom(pb::IMessage other) { + if (other is self::EnumValueDescriptorProto) { + return MergeFrom((self::EnumValueDescriptorProto) other); + } else { + base.MergeFrom(other); + return this; + } + } + + public override IBuilder MergeFrom(self::EnumValueDescriptorProto other) { + if (other == self::EnumValueDescriptorProto.DefaultInstance) return this; + if (other.HasName) { + Name = other.Name; + } + if (other.HasNumber) { + Number = other.Number; + } + if (other.HasOptions) { + MergeOptions(other.Options); + } + this.MergeUnknownFields(other.UnknownFields); + return this; + } + + public override IBuilder MergeFrom(pb::CodedInputStream input) { + return MergeFrom(input, pb::ExtensionRegistry.Empty); + } + + public override IBuilder MergeFrom(pb::CodedInputStream input, pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.CreateBuilder(this.UnknownFields); + while (true) { + uint tag = input.ReadTag(); + switch (tag) { + case 0: + this.UnknownFields = unknownFields.Build(); + return this; + default: { + if (!ParseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.UnknownFields = unknownFields.Build(); + return this; + } + break; + } + case 10: { + Name = input.ReadString(); + break; + } + case 16: { + Number = input.ReadInt32(); + break; + } + case 26: { + self::EnumValueOptions.Builder subBuilder = self::EnumValueOptions.CreateBuilder(); + if (HasOptions) { + subBuilder.MergeFrom(Options); + } + input.ReadMessage(subBuilder, extensionRegistry); + Options = subBuilder.BuildPartial(); + break; + } + } + } + } + + + // optional string name = 1; + public bool HasName { + get { return result.HasName; } + } + public string Name { + get { return result.Name; } + set { SetName(value); } + } + public Builder SetName(string value) { + result.hasName = true; + result.name_ = value; + return this; + } + public Builder ClearName() { + result.hasName = false; + result.name_ = ""; + return this; + } + + // optional int32 number = 2; + public bool HasNumber { + get { return result.HasNumber; } + } + public int Number { + get { return result.Number; } + set { SetNumber(value); } + } + public Builder SetNumber(int value) { + result.hasNumber = true; + result.number_ = value; + return this; + } + public Builder ClearNumber() { + result.hasNumber = false; + result.number_ = 0; + return this; + } + + // optional .google.protobuf.EnumValueOptions options = 3; + public bool HasOptions { + get { return result.HasOptions; } + } + public self::EnumValueOptions Options { + get { return result.Options; } + set { SetOptions(value); } + } + public Builder SetOptions(self::EnumValueOptions value) { + result.hasOptions = true; + result.options_ = value; + return this; + } + public Builder SetOptions(self::EnumValueOptions.Builder builderForValue) { + result.hasOptions = true; + result.options_ = builderForValue.Build(); + return this; + } + public Builder MergeOptions(self::EnumValueOptions value) { + if (result.HasOptions && + result.options_ != self::EnumValueOptions.DefaultInstance) { + result.options_ = + self::EnumValueOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial(); + } else { + result.options_ = value; + } + result.hasOptions = true; + return this; + } + public Builder ClearOptions() { + result.hasOptions = false; + result.options_ = self::EnumValueOptions.DefaultInstance; + return this; + } + } + } + + public sealed partial class ServiceDescriptorProto : pb::GeneratedMessage { + // Use ServiceDescriptorProto.CreateBuilder() to construct. + private ServiceDescriptorProto() {} + + private static readonly ServiceDescriptorProto defaultInstance = new ServiceDescriptorProto(); + public static ServiceDescriptorProto DefaultInstance { + get { return defaultInstance; } + } + + public override ServiceDescriptorProto DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pbd::MessageDescriptor Descriptor { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_ServiceDescriptorProto__Descriptor; } + } + + protected internal override pb::FieldAccess.FieldAccessorTable InternalFieldAccessors { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_ServiceDescriptorProto__FieldAccessorTable; } + } + + // optional string name = 1; + private bool hasName; + private string name_ = ""; + public bool HasName { + get { return hasName; } + } + public string Name { + get { return name_; } + } + + // repeated .google.protobuf.MethodDescriptorProto method = 2; + private scg::IList method_ = pbc::Lists.Empty; + public scg::IList MethodList { + get { return method_; } + } + public int MethodCount + { get { return method_.Count; } + } + public self::MethodDescriptorProto GetMethod(int index) { + return method_ [index]; + } + + // optional .google.protobuf.ServiceOptions options = 3; + private bool hasOptions; + private self::ServiceOptions options_ = self::ServiceOptions.DefaultInstance; + public bool HasOptions { + get { return hasOptions; } + } + public self::ServiceOptions Options { + get { return options_; } + } + + public override bool IsInitialized { + get { + return true; + } + } + + public override void WriteTo(pb::CodedOutputStream output) { + if (HasName) { + output.WriteString(1, Name); + } + foreach (self::MethodDescriptorProto element in MethodList) { + output.WriteMessage(2, element); + } + if (HasOptions) { + output.WriteMessage(3, Options); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public override int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (HasName) { + size += pb::CodedOutputStream.ComputeStringSize(1, Name); + } + foreach (self::MethodDescriptorProto element in MethodList) { + size += pb::CodedOutputStream.ComputeMessageSize(2, element); + } + if (HasOptions) { + size += pb::CodedOutputStream.ComputeMessageSize(3, Options); + } + size += UnknownFields.SerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static self::ServiceDescriptorProto ParseFrom(pb::ByteString data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::ServiceDescriptorProto ParseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::ServiceDescriptorProto ParseFrom(byte[] data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::ServiceDescriptorProto parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::ServiceDescriptorProto ParseFrom(global::System.IO.Stream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::ServiceDescriptorProto ParseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + public static self::ServiceDescriptorProto ParseFrom(pb::CodedInputStream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::ServiceDescriptorProto ParseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + + public static Builder CreateBuilder() { return new Builder(); } + public override IBuilder CreateBuilderForType() { return new Builder(); } + public static Builder CreateBuilder(self::ServiceDescriptorProto prototype) { + return (Builder) new Builder().MergeFrom(prototype); + } + + public sealed partial class Builder : pb::GeneratedBuilder { + // Construct using self::ServiceDescriptorProto.CreateBuilder() + internal Builder() {} + + self::ServiceDescriptorProto result = new self::ServiceDescriptorProto(); + + protected override self::ServiceDescriptorProto MessageBeingBuilt { + get { return result; } + } + + public override IBuilder Clear() { + result = new self::ServiceDescriptorProto(); + return this; + } + + public override IBuilder Clone() { + return new Builder().MergeFrom(result); + } + + public override pbd::MessageDescriptor DescriptorForType { + get { return self::ServiceDescriptorProto.Descriptor; } + } + + public override self::ServiceDescriptorProto DefaultInstanceForType { + get { return self::ServiceDescriptorProto.DefaultInstance; } + } + + public override self::ServiceDescriptorProto BuildPartial() { + if (result.method_ != pbc::Lists.Empty) { + result.method_ = pbc::Lists.AsReadOnly(result.method_); + } + self::ServiceDescriptorProto returnMe = result; + result = null; + return returnMe; + } + + public override IBuilder MergeFrom(pb::IMessage other) { + if (other is self::ServiceDescriptorProto) { + return MergeFrom((self::ServiceDescriptorProto) other); + } else { + base.MergeFrom(other); + return this; + } + } + + public override IBuilder MergeFrom(self::ServiceDescriptorProto other) { + if (other == self::ServiceDescriptorProto.DefaultInstance) return this; + if (other.HasName) { + Name = other.Name; + } + if (other.method_.Count != 0) { + if (result.method_.Count == 0) { + result.method_ = new scg::List(); + } + base.AddRange(other.method_, result.method_); + } + if (other.HasOptions) { + MergeOptions(other.Options); + } + this.MergeUnknownFields(other.UnknownFields); + return this; + } + + public override IBuilder MergeFrom(pb::CodedInputStream input) { + return MergeFrom(input, pb::ExtensionRegistry.Empty); + } + + public override IBuilder MergeFrom(pb::CodedInputStream input, pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.CreateBuilder(this.UnknownFields); + while (true) { + uint tag = input.ReadTag(); + switch (tag) { + case 0: + this.UnknownFields = unknownFields.Build(); + return this; + default: { + if (!ParseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.UnknownFields = unknownFields.Build(); + return this; + } + break; + } + case 10: { + Name = input.ReadString(); + break; + } + case 18: { + self::MethodDescriptorProto.Builder subBuilder = self::MethodDescriptorProto.CreateBuilder(); + input.ReadMessage(subBuilder, extensionRegistry); + AddMethod(subBuilder.BuildPartial()); + break; + } + case 26: { + self::ServiceOptions.Builder subBuilder = self::ServiceOptions.CreateBuilder(); + if (HasOptions) { + subBuilder.MergeFrom(Options); + } + input.ReadMessage(subBuilder, extensionRegistry); + Options = subBuilder.BuildPartial(); + break; + } + } + } + } + + + // optional string name = 1; + public bool HasName { + get { return result.HasName; } + } + public string Name { + get { return result.Name; } + set { SetName(value); } + } + public Builder SetName(string value) { + result.hasName = true; + result.name_ = value; + return this; + } + public Builder ClearName() { + result.hasName = false; + result.name_ = ""; + return this; + } + + // repeated .google.protobuf.MethodDescriptorProto method = 2; + public scg::IList MethodList { + get { return pbc::Lists.AsReadOnly(result.method_); } + } + public int MethodCount { + get { return result.MethodCount; } + } + public self::MethodDescriptorProto GetMethod(int index) { + return result.GetMethod(index); + } + public Builder SetMethod(int index, self::MethodDescriptorProto value) { + result.method_[index] = value; + return this; + } + public Builder SetMethod(int index, self::MethodDescriptorProto.Builder builderForValue) { + result.method_[index] = builderForValue.Build(); + return this; + } + public Builder AddMethod(self::MethodDescriptorProto value) { + if (result.method_ == pbc::Lists.Empty) { + result.method_ = new scg::List(); + } + result.method_.Add(value); + return this; + } + public Builder AddMethod(self::MethodDescriptorProto.Builder builderForValue) { + if (result.method_ == pbc::Lists.Empty) { + result.method_ = new scg::List(); + } + result.method_.Add(builderForValue.Build()); + return this; + } + public Builder AddRangeMethod(scg::IEnumerable values) { + if (result.method_ == pbc::Lists.Empty) { + result.method_ = new scg::List(); + } + base.AddRange(values, result.method_); + return this; + } + public Builder ClearMethod() { + result.method_ = pbc::Lists.Empty; + return this; + } + + // optional .google.protobuf.ServiceOptions options = 3; + public bool HasOptions { + get { return result.HasOptions; } + } + public self::ServiceOptions Options { + get { return result.Options; } + set { SetOptions(value); } + } + public Builder SetOptions(self::ServiceOptions value) { + result.hasOptions = true; + result.options_ = value; + return this; + } + public Builder SetOptions(self::ServiceOptions.Builder builderForValue) { + result.hasOptions = true; + result.options_ = builderForValue.Build(); + return this; + } + public Builder MergeOptions(self::ServiceOptions value) { + if (result.HasOptions && + result.options_ != self::ServiceOptions.DefaultInstance) { + result.options_ = + self::ServiceOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial(); + } else { + result.options_ = value; + } + result.hasOptions = true; + return this; + } + public Builder ClearOptions() { + result.hasOptions = false; + result.options_ = self::ServiceOptions.DefaultInstance; + return this; + } + } + } + + public sealed partial class MethodDescriptorProto : pb::GeneratedMessage { + // Use MethodDescriptorProto.CreateBuilder() to construct. + private MethodDescriptorProto() {} + + private static readonly MethodDescriptorProto defaultInstance = new MethodDescriptorProto(); + public static MethodDescriptorProto DefaultInstance { + get { return defaultInstance; } + } + + public override MethodDescriptorProto DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pbd::MessageDescriptor Descriptor { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_MethodDescriptorProto__Descriptor; } + } + + protected internal override pb::FieldAccess.FieldAccessorTable InternalFieldAccessors { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_MethodDescriptorProto__FieldAccessorTable; } + } + + // optional string name = 1; + private bool hasName; + private string name_ = ""; + public bool HasName { + get { return hasName; } + } + public string Name { + get { return name_; } + } + + // optional string input_type = 2; + private bool hasInputType; + private string inputType_ = ""; + public bool HasInputType { + get { return hasInputType; } + } + public string InputType { + get { return inputType_; } + } + + // optional string output_type = 3; + private bool hasOutputType; + private string outputType_ = ""; + public bool HasOutputType { + get { return hasOutputType; } + } + public string OutputType { + get { return outputType_; } + } + + // optional .google.protobuf.MethodOptions options = 4; + private bool hasOptions; + private self::MethodOptions options_ = self::MethodOptions.DefaultInstance; + public bool HasOptions { + get { return hasOptions; } + } + public self::MethodOptions Options { + get { return options_; } + } + + public override bool IsInitialized { + get { + return true; + } + } + + public override void WriteTo(pb::CodedOutputStream output) { + if (HasName) { + output.WriteString(1, Name); + } + if (HasInputType) { + output.WriteString(2, InputType); + } + if (HasOutputType) { + output.WriteString(3, OutputType); + } + if (HasOptions) { + output.WriteMessage(4, Options); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public override int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (HasName) { + size += pb::CodedOutputStream.ComputeStringSize(1, Name); + } + if (HasInputType) { + size += pb::CodedOutputStream.ComputeStringSize(2, InputType); + } + if (HasOutputType) { + size += pb::CodedOutputStream.ComputeStringSize(3, OutputType); + } + if (HasOptions) { + size += pb::CodedOutputStream.ComputeMessageSize(4, Options); + } + size += UnknownFields.SerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static self::MethodDescriptorProto ParseFrom(pb::ByteString data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::MethodDescriptorProto ParseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::MethodDescriptorProto ParseFrom(byte[] data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::MethodDescriptorProto parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::MethodDescriptorProto ParseFrom(global::System.IO.Stream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::MethodDescriptorProto ParseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + public static self::MethodDescriptorProto ParseFrom(pb::CodedInputStream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::MethodDescriptorProto ParseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + + public static Builder CreateBuilder() { return new Builder(); } + public override IBuilder CreateBuilderForType() { return new Builder(); } + public static Builder CreateBuilder(self::MethodDescriptorProto prototype) { + return (Builder) new Builder().MergeFrom(prototype); + } + + public sealed partial class Builder : pb::GeneratedBuilder { + // Construct using self::MethodDescriptorProto.CreateBuilder() + internal Builder() {} + + self::MethodDescriptorProto result = new self::MethodDescriptorProto(); + + protected override self::MethodDescriptorProto MessageBeingBuilt { + get { return result; } + } + + public override IBuilder Clear() { + result = new self::MethodDescriptorProto(); + return this; + } + + public override IBuilder Clone() { + return new Builder().MergeFrom(result); + } + + public override pbd::MessageDescriptor DescriptorForType { + get { return self::MethodDescriptorProto.Descriptor; } + } + + public override self::MethodDescriptorProto DefaultInstanceForType { + get { return self::MethodDescriptorProto.DefaultInstance; } + } + + public override self::MethodDescriptorProto BuildPartial() { + self::MethodDescriptorProto returnMe = result; + result = null; + return returnMe; + } + + public override IBuilder MergeFrom(pb::IMessage other) { + if (other is self::MethodDescriptorProto) { + return MergeFrom((self::MethodDescriptorProto) other); + } else { + base.MergeFrom(other); + return this; + } + } + + public override IBuilder MergeFrom(self::MethodDescriptorProto other) { + if (other == self::MethodDescriptorProto.DefaultInstance) return this; + if (other.HasName) { + Name = other.Name; + } + if (other.HasInputType) { + InputType = other.InputType; + } + if (other.HasOutputType) { + OutputType = other.OutputType; + } + if (other.HasOptions) { + MergeOptions(other.Options); + } + this.MergeUnknownFields(other.UnknownFields); + return this; + } + + public override IBuilder MergeFrom(pb::CodedInputStream input) { + return MergeFrom(input, pb::ExtensionRegistry.Empty); + } + + public override IBuilder MergeFrom(pb::CodedInputStream input, pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.CreateBuilder(this.UnknownFields); + while (true) { + uint tag = input.ReadTag(); + switch (tag) { + case 0: + this.UnknownFields = unknownFields.Build(); + return this; + default: { + if (!ParseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.UnknownFields = unknownFields.Build(); + return this; + } + break; + } + case 10: { + Name = input.ReadString(); + break; + } + case 18: { + InputType = input.ReadString(); + break; + } + case 26: { + OutputType = input.ReadString(); + break; + } + case 34: { + self::MethodOptions.Builder subBuilder = self::MethodOptions.CreateBuilder(); + if (HasOptions) { + subBuilder.MergeFrom(Options); + } + input.ReadMessage(subBuilder, extensionRegistry); + Options = subBuilder.BuildPartial(); + break; + } + } + } + } + + + // optional string name = 1; + public bool HasName { + get { return result.HasName; } + } + public string Name { + get { return result.Name; } + set { SetName(value); } + } + public Builder SetName(string value) { + result.hasName = true; + result.name_ = value; + return this; + } + public Builder ClearName() { + result.hasName = false; + result.name_ = ""; + return this; + } + + // optional string input_type = 2; + public bool HasInputType { + get { return result.HasInputType; } + } + public string InputType { + get { return result.InputType; } + set { SetInputType(value); } + } + public Builder SetInputType(string value) { + result.hasInputType = true; + result.inputType_ = value; + return this; + } + public Builder ClearInputType() { + result.hasInputType = false; + result.inputType_ = ""; + return this; + } + + // optional string output_type = 3; + public bool HasOutputType { + get { return result.HasOutputType; } + } + public string OutputType { + get { return result.OutputType; } + set { SetOutputType(value); } + } + public Builder SetOutputType(string value) { + result.hasOutputType = true; + result.outputType_ = value; + return this; + } + public Builder ClearOutputType() { + result.hasOutputType = false; + result.outputType_ = ""; + return this; + } + + // optional .google.protobuf.MethodOptions options = 4; + public bool HasOptions { + get { return result.HasOptions; } + } + public self::MethodOptions Options { + get { return result.Options; } + set { SetOptions(value); } + } + public Builder SetOptions(self::MethodOptions value) { + result.hasOptions = true; + result.options_ = value; + return this; + } + public Builder SetOptions(self::MethodOptions.Builder builderForValue) { + result.hasOptions = true; + result.options_ = builderForValue.Build(); + return this; + } + public Builder MergeOptions(self::MethodOptions value) { + if (result.HasOptions && + result.options_ != self::MethodOptions.DefaultInstance) { + result.options_ = + self::MethodOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial(); + } else { + result.options_ = value; + } + result.hasOptions = true; + return this; + } + public Builder ClearOptions() { + result.hasOptions = false; + result.options_ = self::MethodOptions.DefaultInstance; + return this; + } + } + } + + public sealed partial class FileOptions : pb::GeneratedMessage { + // Use FileOptions.CreateBuilder() to construct. + private FileOptions() {} + + private static readonly FileOptions defaultInstance = new FileOptions(); + public static FileOptions DefaultInstance { + get { return defaultInstance; } + } + + public override FileOptions DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pbd::MessageDescriptor Descriptor { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_FileOptions__Descriptor; } + } + + protected internal override pb::FieldAccess.FieldAccessorTable InternalFieldAccessors { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_FileOptions__FieldAccessorTable; } + } + + #region Nested types + public static class Types { + public enum OptimizeMode { + [pbd::EnumDescriptorIndex(0)] + SPEED = 1, + [pbd::EnumDescriptorIndex(1)] + CODE_SIZE = 2, + } + + } + #endregion + + // optional string java_package = 1; + private bool hasJavaPackage; + private string javaPackage_ = ""; + public bool HasJavaPackage { + get { return hasJavaPackage; } + } + public string JavaPackage { + get { return javaPackage_; } + } + + // optional string java_outer_classname = 8; + private bool hasJavaOuterClassname; + private string javaOuterClassname_ = ""; + public bool HasJavaOuterClassname { + get { return hasJavaOuterClassname; } + } + public string JavaOuterClassname { + get { return javaOuterClassname_; } + } + + // optional bool java_multiple_files = 10 [default = false]; + private bool hasJavaMultipleFiles; + private bool javaMultipleFiles_ = false; + public bool HasJavaMultipleFiles { + get { return hasJavaMultipleFiles; } + } + public bool JavaMultipleFiles { + get { return javaMultipleFiles_; } + } + + // optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = CODE_SIZE]; + private bool hasOptimizeFor; + private self::FileOptions.Types.OptimizeMode optimizeFor_ = self::FileOptions.Types.OptimizeMode.CODE_SIZE; + public bool HasOptimizeFor { + get { return hasOptimizeFor; } + } + public self::FileOptions.Types.OptimizeMode OptimizeFor { get { return optimizeFor_; }} + + // optional string csharp_namespace = 1000; + private bool hasCsharpNamespace; + private string csharpNamespace_ = ""; + public bool HasCsharpNamespace { + get { return hasCsharpNamespace; } + } + public string CsharpNamespace { + get { return csharpNamespace_; } + } + + // optional string csharp_file_classname = 1001; + private bool hasCsharpFileClassname; + private string csharpFileClassname_ = ""; + public bool HasCsharpFileClassname { + get { return hasCsharpFileClassname; } + } + public string CsharpFileClassname { + get { return csharpFileClassname_; } + } + + // optional bool csharp_multiple_files = 1002 [default = false]; + private bool hasCsharpMultipleFiles; + private bool csharpMultipleFiles_ = false; + public bool HasCsharpMultipleFiles { + get { return hasCsharpMultipleFiles; } + } + public bool CsharpMultipleFiles { + get { return csharpMultipleFiles_; } + } + + // optional bool csharp_nest_classes = 1003 [default = false]; + private bool hasCsharpNestClasses; + private bool csharpNestClasses_ = false; + public bool HasCsharpNestClasses { + get { return hasCsharpNestClasses; } + } + public bool CsharpNestClasses { + get { return csharpNestClasses_; } + } + + // optional bool csharp_public_classes = 1004 [default = true]; + private bool hasCsharpPublicClasses; + private bool csharpPublicClasses_ = true; + public bool HasCsharpPublicClasses { + get { return hasCsharpPublicClasses; } + } + public bool CsharpPublicClasses { + get { return csharpPublicClasses_; } + } + + public override bool IsInitialized { + get { + return true; + } + } + + public override void WriteTo(pb::CodedOutputStream output) { + if (HasJavaPackage) { + output.WriteString(1, JavaPackage); + } + if (HasJavaOuterClassname) { + output.WriteString(8, JavaOuterClassname); + } + if (HasOptimizeFor) { + output.WriteEnum(9, (int) OptimizeFor); + } + if (HasJavaMultipleFiles) { + output.WriteBool(10, JavaMultipleFiles); + } + if (HasCsharpNamespace) { + output.WriteString(1000, CsharpNamespace); + } + if (HasCsharpFileClassname) { + output.WriteString(1001, CsharpFileClassname); + } + if (HasCsharpMultipleFiles) { + output.WriteBool(1002, CsharpMultipleFiles); + } + if (HasCsharpNestClasses) { + output.WriteBool(1003, CsharpNestClasses); + } + if (HasCsharpPublicClasses) { + output.WriteBool(1004, CsharpPublicClasses); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public override int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (HasJavaPackage) { + size += pb::CodedOutputStream.ComputeStringSize(1, JavaPackage); + } + if (HasJavaOuterClassname) { + size += pb::CodedOutputStream.ComputeStringSize(8, JavaOuterClassname); + } + if (HasOptimizeFor) { + size += pb::CodedOutputStream + .ComputeEnumSize(9, (int) OptimizeFor); + } + if (HasJavaMultipleFiles) { + size += pb::CodedOutputStream.ComputeBoolSize(10, JavaMultipleFiles); + } + if (HasCsharpNamespace) { + size += pb::CodedOutputStream.ComputeStringSize(1000, CsharpNamespace); + } + if (HasCsharpFileClassname) { + size += pb::CodedOutputStream.ComputeStringSize(1001, CsharpFileClassname); + } + if (HasCsharpMultipleFiles) { + size += pb::CodedOutputStream.ComputeBoolSize(1002, CsharpMultipleFiles); + } + if (HasCsharpNestClasses) { + size += pb::CodedOutputStream.ComputeBoolSize(1003, CsharpNestClasses); + } + if (HasCsharpPublicClasses) { + size += pb::CodedOutputStream.ComputeBoolSize(1004, CsharpPublicClasses); + } + size += UnknownFields.SerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static self::FileOptions ParseFrom(pb::ByteString data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::FileOptions ParseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::FileOptions ParseFrom(byte[] data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::FileOptions parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::FileOptions ParseFrom(global::System.IO.Stream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::FileOptions ParseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + public static self::FileOptions ParseFrom(pb::CodedInputStream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::FileOptions ParseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + + public static Builder CreateBuilder() { return new Builder(); } + public override IBuilder CreateBuilderForType() { return new Builder(); } + public static Builder CreateBuilder(self::FileOptions prototype) { + return (Builder) new Builder().MergeFrom(prototype); + } + + public sealed partial class Builder : pb::GeneratedBuilder { + // Construct using self::FileOptions.CreateBuilder() + internal Builder() {} + + self::FileOptions result = new self::FileOptions(); + + protected override self::FileOptions MessageBeingBuilt { + get { return result; } + } + + public override IBuilder Clear() { + result = new self::FileOptions(); + return this; + } + + public override IBuilder Clone() { + return new Builder().MergeFrom(result); + } + + public override pbd::MessageDescriptor DescriptorForType { + get { return self::FileOptions.Descriptor; } + } + + public override self::FileOptions DefaultInstanceForType { + get { return self::FileOptions.DefaultInstance; } + } + + public override self::FileOptions BuildPartial() { + self::FileOptions returnMe = result; + result = null; + return returnMe; + } + + public override IBuilder MergeFrom(pb::IMessage other) { + if (other is self::FileOptions) { + return MergeFrom((self::FileOptions) other); + } else { + base.MergeFrom(other); + return this; + } + } + + public override IBuilder MergeFrom(self::FileOptions other) { + if (other == self::FileOptions.DefaultInstance) return this; + if (other.HasJavaPackage) { + JavaPackage = other.JavaPackage; + } + if (other.HasJavaOuterClassname) { + JavaOuterClassname = other.JavaOuterClassname; + } + if (other.HasJavaMultipleFiles) { + JavaMultipleFiles = other.JavaMultipleFiles; + } + if (other.HasOptimizeFor) { + OptimizeFor = other.OptimizeFor; + } + if (other.HasCsharpNamespace) { + CsharpNamespace = other.CsharpNamespace; + } + if (other.HasCsharpFileClassname) { + CsharpFileClassname = other.CsharpFileClassname; + } + if (other.HasCsharpMultipleFiles) { + CsharpMultipleFiles = other.CsharpMultipleFiles; + } + if (other.HasCsharpNestClasses) { + CsharpNestClasses = other.CsharpNestClasses; + } + if (other.HasCsharpPublicClasses) { + CsharpPublicClasses = other.CsharpPublicClasses; + } + this.MergeUnknownFields(other.UnknownFields); + return this; + } + + public override IBuilder MergeFrom(pb::CodedInputStream input) { + return MergeFrom(input, pb::ExtensionRegistry.Empty); + } + + public override IBuilder MergeFrom(pb::CodedInputStream input, pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.CreateBuilder(this.UnknownFields); + while (true) { + uint tag = input.ReadTag(); + switch (tag) { + case 0: + this.UnknownFields = unknownFields.Build(); + return this; + default: { + if (!ParseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.UnknownFields = unknownFields.Build(); + return this; + } + break; + } + case 10: { + JavaPackage = input.ReadString(); + break; + } + case 66: { + JavaOuterClassname = input.ReadString(); + break; + } + case 72: { + int rawValue = input.ReadEnum(); + if (!global::System.Enum.IsDefined(typeof(self::FileOptions.Types.OptimizeMode), rawValue)) { + unknownFields.MergeVarintField(9, (ulong) rawValue); + } else { + OptimizeFor = (self::FileOptions.Types.OptimizeMode) rawValue; + } + break; + } + case 80: { + JavaMultipleFiles = input.ReadBool(); + break; + } + case 8002: { + CsharpNamespace = input.ReadString(); + break; + } + case 8010: { + CsharpFileClassname = input.ReadString(); + break; + } + case 8016: { + CsharpMultipleFiles = input.ReadBool(); + break; + } + case 8024: { + CsharpNestClasses = input.ReadBool(); + break; + } + case 8032: { + CsharpPublicClasses = input.ReadBool(); + break; + } + } + } + } + + + // optional string java_package = 1; + public bool HasJavaPackage { + get { return result.HasJavaPackage; } + } + public string JavaPackage { + get { return result.JavaPackage; } + set { SetJavaPackage(value); } + } + public Builder SetJavaPackage(string value) { + result.hasJavaPackage = true; + result.javaPackage_ = value; + return this; + } + public Builder ClearJavaPackage() { + result.hasJavaPackage = false; + result.javaPackage_ = ""; + return this; + } + + // optional string java_outer_classname = 8; + public bool HasJavaOuterClassname { + get { return result.HasJavaOuterClassname; } + } + public string JavaOuterClassname { + get { return result.JavaOuterClassname; } + set { SetJavaOuterClassname(value); } + } + public Builder SetJavaOuterClassname(string value) { + result.hasJavaOuterClassname = true; + result.javaOuterClassname_ = value; + return this; + } + public Builder ClearJavaOuterClassname() { + result.hasJavaOuterClassname = false; + result.javaOuterClassname_ = ""; + return this; + } + + // optional bool java_multiple_files = 10 [default = false]; + public bool HasJavaMultipleFiles { + get { return result.HasJavaMultipleFiles; } + } + public bool JavaMultipleFiles { + get { return result.JavaMultipleFiles; } + set { SetJavaMultipleFiles(value); } + } + public Builder SetJavaMultipleFiles(bool value) { + result.hasJavaMultipleFiles = true; + result.javaMultipleFiles_ = value; + return this; + } + public Builder ClearJavaMultipleFiles() { + result.hasJavaMultipleFiles = false; + result.javaMultipleFiles_ = false; + return this; + } + + // optional .google.protobuf.FileOptions.OptimizeMode optimize_for = 9 [default = CODE_SIZE]; + public bool HasOptimizeFor { + get { return result.HasOptimizeFor; } + } + public self::FileOptions.Types.OptimizeMode OptimizeFor { + get { return result.OptimizeFor; } + set { SetOptimizeFor(value); } + } + public Builder SetOptimizeFor(self::FileOptions.Types.OptimizeMode value) { + result.hasOptimizeFor = true; + result.optimizeFor_ = value; + return this; + } + public Builder ClearOptimizeFor() { + result.hasOptimizeFor = false; + result.optimizeFor_ = self::FileOptions.Types.OptimizeMode.CODE_SIZE; + return this; + } + + // optional string csharp_namespace = 1000; + public bool HasCsharpNamespace { + get { return result.HasCsharpNamespace; } + } + public string CsharpNamespace { + get { return result.CsharpNamespace; } + set { SetCsharpNamespace(value); } + } + public Builder SetCsharpNamespace(string value) { + result.hasCsharpNamespace = true; + result.csharpNamespace_ = value; + return this; + } + public Builder ClearCsharpNamespace() { + result.hasCsharpNamespace = false; + result.csharpNamespace_ = ""; + return this; + } + + // optional string csharp_file_classname = 1001; + public bool HasCsharpFileClassname { + get { return result.HasCsharpFileClassname; } + } + public string CsharpFileClassname { + get { return result.CsharpFileClassname; } + set { SetCsharpFileClassname(value); } + } + public Builder SetCsharpFileClassname(string value) { + result.hasCsharpFileClassname = true; + result.csharpFileClassname_ = value; + return this; + } + public Builder ClearCsharpFileClassname() { + result.hasCsharpFileClassname = false; + result.csharpFileClassname_ = ""; + return this; + } + + // optional bool csharp_multiple_files = 1002 [default = false]; + public bool HasCsharpMultipleFiles { + get { return result.HasCsharpMultipleFiles; } + } + public bool CsharpMultipleFiles { + get { return result.CsharpMultipleFiles; } + set { SetCsharpMultipleFiles(value); } + } + public Builder SetCsharpMultipleFiles(bool value) { + result.hasCsharpMultipleFiles = true; + result.csharpMultipleFiles_ = value; + return this; + } + public Builder ClearCsharpMultipleFiles() { + result.hasCsharpMultipleFiles = false; + result.csharpMultipleFiles_ = false; + return this; + } + + // optional bool csharp_nest_classes = 1003 [default = false]; + public bool HasCsharpNestClasses { + get { return result.HasCsharpNestClasses; } + } + public bool CsharpNestClasses { + get { return result.CsharpNestClasses; } + set { SetCsharpNestClasses(value); } + } + public Builder SetCsharpNestClasses(bool value) { + result.hasCsharpNestClasses = true; + result.csharpNestClasses_ = value; + return this; + } + public Builder ClearCsharpNestClasses() { + result.hasCsharpNestClasses = false; + result.csharpNestClasses_ = false; + return this; + } + + // optional bool csharp_public_classes = 1004 [default = true]; + public bool HasCsharpPublicClasses { + get { return result.HasCsharpPublicClasses; } + } + public bool CsharpPublicClasses { + get { return result.CsharpPublicClasses; } + set { SetCsharpPublicClasses(value); } + } + public Builder SetCsharpPublicClasses(bool value) { + result.hasCsharpPublicClasses = true; + result.csharpPublicClasses_ = value; + return this; + } + public Builder ClearCsharpPublicClasses() { + result.hasCsharpPublicClasses = false; + result.csharpPublicClasses_ = true; + return this; + } + } + } + + public sealed partial class MessageOptions : pb::GeneratedMessage { + // Use MessageOptions.CreateBuilder() to construct. + private MessageOptions() {} + + private static readonly MessageOptions defaultInstance = new MessageOptions(); + public static MessageOptions DefaultInstance { + get { return defaultInstance; } + } + + public override MessageOptions DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pbd::MessageDescriptor Descriptor { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_MessageOptions__Descriptor; } + } + + protected internal override pb::FieldAccess.FieldAccessorTable InternalFieldAccessors { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_MessageOptions__FieldAccessorTable; } + } + + // optional bool message_set_wire_format = 1 [default = false]; + private bool hasMessageSetWireFormat; + private bool messageSetWireFormat_ = false; + public bool HasMessageSetWireFormat { + get { return hasMessageSetWireFormat; } + } + public bool MessageSetWireFormat { + get { return messageSetWireFormat_; } + } + + public override bool IsInitialized { + get { + return true; + } + } + + public override void WriteTo(pb::CodedOutputStream output) { + if (HasMessageSetWireFormat) { + output.WriteBool(1, MessageSetWireFormat); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public override int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (HasMessageSetWireFormat) { + size += pb::CodedOutputStream.ComputeBoolSize(1, MessageSetWireFormat); + } + size += UnknownFields.SerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static self::MessageOptions ParseFrom(pb::ByteString data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::MessageOptions ParseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::MessageOptions ParseFrom(byte[] data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::MessageOptions parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::MessageOptions ParseFrom(global::System.IO.Stream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::MessageOptions ParseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + public static self::MessageOptions ParseFrom(pb::CodedInputStream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::MessageOptions ParseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + + public static Builder CreateBuilder() { return new Builder(); } + public override IBuilder CreateBuilderForType() { return new Builder(); } + public static Builder CreateBuilder(self::MessageOptions prototype) { + return (Builder) new Builder().MergeFrom(prototype); + } + + public sealed partial class Builder : pb::GeneratedBuilder { + // Construct using self::MessageOptions.CreateBuilder() + internal Builder() {} + + self::MessageOptions result = new self::MessageOptions(); + + protected override self::MessageOptions MessageBeingBuilt { + get { return result; } + } + + public override IBuilder Clear() { + result = new self::MessageOptions(); + return this; + } + + public override IBuilder Clone() { + return new Builder().MergeFrom(result); + } + + public override pbd::MessageDescriptor DescriptorForType { + get { return self::MessageOptions.Descriptor; } + } + + public override self::MessageOptions DefaultInstanceForType { + get { return self::MessageOptions.DefaultInstance; } + } + + public override self::MessageOptions BuildPartial() { + self::MessageOptions returnMe = result; + result = null; + return returnMe; + } + + public override IBuilder MergeFrom(pb::IMessage other) { + if (other is self::MessageOptions) { + return MergeFrom((self::MessageOptions) other); + } else { + base.MergeFrom(other); + return this; + } + } + + public override IBuilder MergeFrom(self::MessageOptions other) { + if (other == self::MessageOptions.DefaultInstance) return this; + if (other.HasMessageSetWireFormat) { + MessageSetWireFormat = other.MessageSetWireFormat; + } + this.MergeUnknownFields(other.UnknownFields); + return this; + } + + public override IBuilder MergeFrom(pb::CodedInputStream input) { + return MergeFrom(input, pb::ExtensionRegistry.Empty); + } + + public override IBuilder MergeFrom(pb::CodedInputStream input, pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.CreateBuilder(this.UnknownFields); + while (true) { + uint tag = input.ReadTag(); + switch (tag) { + case 0: + this.UnknownFields = unknownFields.Build(); + return this; + default: { + if (!ParseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.UnknownFields = unknownFields.Build(); + return this; + } + break; + } + case 8: { + MessageSetWireFormat = input.ReadBool(); + break; + } + } + } + } + + + // optional bool message_set_wire_format = 1 [default = false]; + public bool HasMessageSetWireFormat { + get { return result.HasMessageSetWireFormat; } + } + public bool MessageSetWireFormat { + get { return result.MessageSetWireFormat; } + set { SetMessageSetWireFormat(value); } + } + public Builder SetMessageSetWireFormat(bool value) { + result.hasMessageSetWireFormat = true; + result.messageSetWireFormat_ = value; + return this; + } + public Builder ClearMessageSetWireFormat() { + result.hasMessageSetWireFormat = false; + result.messageSetWireFormat_ = false; + return this; + } + } + } + + public sealed partial class FieldOptions : pb::GeneratedMessage { + // Use FieldOptions.CreateBuilder() to construct. + private FieldOptions() {} + + private static readonly FieldOptions defaultInstance = new FieldOptions(); + public static FieldOptions DefaultInstance { + get { return defaultInstance; } + } + + public override FieldOptions DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pbd::MessageDescriptor Descriptor { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_FieldOptions__Descriptor; } + } + + protected internal override pb::FieldAccess.FieldAccessorTable InternalFieldAccessors { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_FieldOptions__FieldAccessorTable; } + } + + #region Nested types + public static class Types { + public enum CType { + [pbd::EnumDescriptorIndex(0)] + CORD = 1, + [pbd::EnumDescriptorIndex(1)] + STRING_PIECE = 2, + } + + } + #endregion + + // optional .google.protobuf.FieldOptions.CType ctype = 1; + private bool hasCtype; + private self::FieldOptions.Types.CType ctype_ = self::FieldOptions.Types.CType.CORD; + public bool HasCtype { + get { return hasCtype; } + } + public self::FieldOptions.Types.CType Ctype { get { return ctype_; }} + + // optional string experimental_map_key = 9; + private bool hasExperimentalMapKey; + private string experimentalMapKey_ = ""; + public bool HasExperimentalMapKey { + get { return hasExperimentalMapKey; } + } + public string ExperimentalMapKey { + get { return experimentalMapKey_; } + } + + public override bool IsInitialized { + get { + return true; + } + } + + public override void WriteTo(pb::CodedOutputStream output) { + if (HasCtype) { + output.WriteEnum(1, (int) Ctype); + } + if (HasExperimentalMapKey) { + output.WriteString(9, ExperimentalMapKey); + } + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public override int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + if (HasCtype) { + size += pb::CodedOutputStream + .ComputeEnumSize(1, (int) Ctype); + } + if (HasExperimentalMapKey) { + size += pb::CodedOutputStream.ComputeStringSize(9, ExperimentalMapKey); + } + size += UnknownFields.SerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static self::FieldOptions ParseFrom(pb::ByteString data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::FieldOptions ParseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::FieldOptions ParseFrom(byte[] data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::FieldOptions parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::FieldOptions ParseFrom(global::System.IO.Stream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::FieldOptions ParseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + public static self::FieldOptions ParseFrom(pb::CodedInputStream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::FieldOptions ParseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + + public static Builder CreateBuilder() { return new Builder(); } + public override IBuilder CreateBuilderForType() { return new Builder(); } + public static Builder CreateBuilder(self::FieldOptions prototype) { + return (Builder) new Builder().MergeFrom(prototype); + } + + public sealed partial class Builder : pb::GeneratedBuilder { + // Construct using self::FieldOptions.CreateBuilder() + internal Builder() {} + + self::FieldOptions result = new self::FieldOptions(); + + protected override self::FieldOptions MessageBeingBuilt { + get { return result; } + } + + public override IBuilder Clear() { + result = new self::FieldOptions(); + return this; + } + + public override IBuilder Clone() { + return new Builder().MergeFrom(result); + } + + public override pbd::MessageDescriptor DescriptorForType { + get { return self::FieldOptions.Descriptor; } + } + + public override self::FieldOptions DefaultInstanceForType { + get { return self::FieldOptions.DefaultInstance; } + } + + public override self::FieldOptions BuildPartial() { + self::FieldOptions returnMe = result; + result = null; + return returnMe; + } + + public override IBuilder MergeFrom(pb::IMessage other) { + if (other is self::FieldOptions) { + return MergeFrom((self::FieldOptions) other); + } else { + base.MergeFrom(other); + return this; + } + } + + public override IBuilder MergeFrom(self::FieldOptions other) { + if (other == self::FieldOptions.DefaultInstance) return this; + if (other.HasCtype) { + Ctype = other.Ctype; + } + if (other.HasExperimentalMapKey) { + ExperimentalMapKey = other.ExperimentalMapKey; + } + this.MergeUnknownFields(other.UnknownFields); + return this; + } + + public override IBuilder MergeFrom(pb::CodedInputStream input) { + return MergeFrom(input, pb::ExtensionRegistry.Empty); + } + + public override IBuilder MergeFrom(pb::CodedInputStream input, pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.CreateBuilder(this.UnknownFields); + while (true) { + uint tag = input.ReadTag(); + switch (tag) { + case 0: + this.UnknownFields = unknownFields.Build(); + return this; + default: { + if (!ParseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.UnknownFields = unknownFields.Build(); + return this; + } + break; + } + case 8: { + int rawValue = input.ReadEnum(); + if (!global::System.Enum.IsDefined(typeof(self::FieldOptions.Types.CType), rawValue)) { + unknownFields.MergeVarintField(1, (ulong) rawValue); + } else { + Ctype = (self::FieldOptions.Types.CType) rawValue; + } + break; + } + case 74: { + ExperimentalMapKey = input.ReadString(); + break; + } + } + } + } + + + // optional .google.protobuf.FieldOptions.CType ctype = 1; + public bool HasCtype { + get { return result.HasCtype; } + } + public self::FieldOptions.Types.CType Ctype { + get { return result.Ctype; } + set { SetCtype(value); } + } + public Builder SetCtype(self::FieldOptions.Types.CType value) { + result.hasCtype = true; + result.ctype_ = value; + return this; + } + public Builder ClearCtype() { + result.hasCtype = false; + result.ctype_ = self::FieldOptions.Types.CType.CORD; + return this; + } + + // optional string experimental_map_key = 9; + public bool HasExperimentalMapKey { + get { return result.HasExperimentalMapKey; } + } + public string ExperimentalMapKey { + get { return result.ExperimentalMapKey; } + set { SetExperimentalMapKey(value); } + } + public Builder SetExperimentalMapKey(string value) { + result.hasExperimentalMapKey = true; + result.experimentalMapKey_ = value; + return this; + } + public Builder ClearExperimentalMapKey() { + result.hasExperimentalMapKey = false; + result.experimentalMapKey_ = ""; + return this; + } + } + } + + public sealed partial class EnumOptions : pb::GeneratedMessage { + // Use EnumOptions.CreateBuilder() to construct. + private EnumOptions() {} + + private static readonly EnumOptions defaultInstance = new EnumOptions(); + public static EnumOptions DefaultInstance { + get { return defaultInstance; } + } + + public override EnumOptions DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pbd::MessageDescriptor Descriptor { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_EnumOptions__Descriptor; } + } + + protected internal override pb::FieldAccess.FieldAccessorTable InternalFieldAccessors { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_EnumOptions__FieldAccessorTable; } + } + + public override bool IsInitialized { + get { + return true; + } + } + + public override void WriteTo(pb::CodedOutputStream output) { + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public override int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + size += UnknownFields.SerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static self::EnumOptions ParseFrom(pb::ByteString data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::EnumOptions ParseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::EnumOptions ParseFrom(byte[] data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::EnumOptions parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::EnumOptions ParseFrom(global::System.IO.Stream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::EnumOptions ParseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + public static self::EnumOptions ParseFrom(pb::CodedInputStream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::EnumOptions ParseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + + public static Builder CreateBuilder() { return new Builder(); } + public override IBuilder CreateBuilderForType() { return new Builder(); } + public static Builder CreateBuilder(self::EnumOptions prototype) { + return (Builder) new Builder().MergeFrom(prototype); + } + + public sealed partial class Builder : pb::GeneratedBuilder { + // Construct using self::EnumOptions.CreateBuilder() + internal Builder() {} + + self::EnumOptions result = new self::EnumOptions(); + + protected override self::EnumOptions MessageBeingBuilt { + get { return result; } + } + + public override IBuilder Clear() { + result = new self::EnumOptions(); + return this; + } + + public override IBuilder Clone() { + return new Builder().MergeFrom(result); + } + + public override pbd::MessageDescriptor DescriptorForType { + get { return self::EnumOptions.Descriptor; } + } + + public override self::EnumOptions DefaultInstanceForType { + get { return self::EnumOptions.DefaultInstance; } + } + + public override self::EnumOptions BuildPartial() { + self::EnumOptions returnMe = result; + result = null; + return returnMe; + } + + public override IBuilder MergeFrom(pb::IMessage other) { + if (other is self::EnumOptions) { + return MergeFrom((self::EnumOptions) other); + } else { + base.MergeFrom(other); + return this; + } + } + + public override IBuilder MergeFrom(self::EnumOptions other) { + if (other == self::EnumOptions.DefaultInstance) return this; + this.MergeUnknownFields(other.UnknownFields); + return this; + } + + public override IBuilder MergeFrom(pb::CodedInputStream input) { + return MergeFrom(input, pb::ExtensionRegistry.Empty); + } + + public override IBuilder MergeFrom(pb::CodedInputStream input, pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.CreateBuilder(this.UnknownFields); + while (true) { + uint tag = input.ReadTag(); + switch (tag) { + case 0: + this.UnknownFields = unknownFields.Build(); + return this; + default: { + if (!ParseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.UnknownFields = unknownFields.Build(); + return this; + } + break; + } + } + } + } + + } + } + + public sealed partial class EnumValueOptions : pb::GeneratedMessage { + // Use EnumValueOptions.CreateBuilder() to construct. + private EnumValueOptions() {} + + private static readonly EnumValueOptions defaultInstance = new EnumValueOptions(); + public static EnumValueOptions DefaultInstance { + get { return defaultInstance; } + } + + public override EnumValueOptions DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pbd::MessageDescriptor Descriptor { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_EnumValueOptions__Descriptor; } + } + + protected internal override pb::FieldAccess.FieldAccessorTable InternalFieldAccessors { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_EnumValueOptions__FieldAccessorTable; } + } + + public override bool IsInitialized { + get { + return true; + } + } + + public override void WriteTo(pb::CodedOutputStream output) { + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public override int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + size += UnknownFields.SerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static self::EnumValueOptions ParseFrom(pb::ByteString data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::EnumValueOptions ParseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::EnumValueOptions ParseFrom(byte[] data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::EnumValueOptions parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::EnumValueOptions ParseFrom(global::System.IO.Stream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::EnumValueOptions ParseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + public static self::EnumValueOptions ParseFrom(pb::CodedInputStream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::EnumValueOptions ParseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + + public static Builder CreateBuilder() { return new Builder(); } + public override IBuilder CreateBuilderForType() { return new Builder(); } + public static Builder CreateBuilder(self::EnumValueOptions prototype) { + return (Builder) new Builder().MergeFrom(prototype); + } + + public sealed partial class Builder : pb::GeneratedBuilder { + // Construct using self::EnumValueOptions.CreateBuilder() + internal Builder() {} + + self::EnumValueOptions result = new self::EnumValueOptions(); + + protected override self::EnumValueOptions MessageBeingBuilt { + get { return result; } + } + + public override IBuilder Clear() { + result = new self::EnumValueOptions(); + return this; + } + + public override IBuilder Clone() { + return new Builder().MergeFrom(result); + } + + public override pbd::MessageDescriptor DescriptorForType { + get { return self::EnumValueOptions.Descriptor; } + } + + public override self::EnumValueOptions DefaultInstanceForType { + get { return self::EnumValueOptions.DefaultInstance; } + } + + public override self::EnumValueOptions BuildPartial() { + self::EnumValueOptions returnMe = result; + result = null; + return returnMe; + } + + public override IBuilder MergeFrom(pb::IMessage other) { + if (other is self::EnumValueOptions) { + return MergeFrom((self::EnumValueOptions) other); + } else { + base.MergeFrom(other); + return this; + } + } + + public override IBuilder MergeFrom(self::EnumValueOptions other) { + if (other == self::EnumValueOptions.DefaultInstance) return this; + this.MergeUnknownFields(other.UnknownFields); + return this; + } + + public override IBuilder MergeFrom(pb::CodedInputStream input) { + return MergeFrom(input, pb::ExtensionRegistry.Empty); + } + + public override IBuilder MergeFrom(pb::CodedInputStream input, pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.CreateBuilder(this.UnknownFields); + while (true) { + uint tag = input.ReadTag(); + switch (tag) { + case 0: + this.UnknownFields = unknownFields.Build(); + return this; + default: { + if (!ParseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.UnknownFields = unknownFields.Build(); + return this; + } + break; + } + } + } + } + + } + } + + public sealed partial class ServiceOptions : pb::GeneratedMessage { + // Use ServiceOptions.CreateBuilder() to construct. + private ServiceOptions() {} + + private static readonly ServiceOptions defaultInstance = new ServiceOptions(); + public static ServiceOptions DefaultInstance { + get { return defaultInstance; } + } + + public override ServiceOptions DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pbd::MessageDescriptor Descriptor { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_ServiceOptions__Descriptor; } + } + + protected internal override pb::FieldAccess.FieldAccessorTable InternalFieldAccessors { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_ServiceOptions__FieldAccessorTable; } + } + + public override bool IsInitialized { + get { + return true; + } + } + + public override void WriteTo(pb::CodedOutputStream output) { + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public override int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + size += UnknownFields.SerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static self::ServiceOptions ParseFrom(pb::ByteString data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::ServiceOptions ParseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::ServiceOptions ParseFrom(byte[] data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::ServiceOptions parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::ServiceOptions ParseFrom(global::System.IO.Stream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::ServiceOptions ParseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + public static self::ServiceOptions ParseFrom(pb::CodedInputStream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::ServiceOptions ParseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + + public static Builder CreateBuilder() { return new Builder(); } + public override IBuilder CreateBuilderForType() { return new Builder(); } + public static Builder CreateBuilder(self::ServiceOptions prototype) { + return (Builder) new Builder().MergeFrom(prototype); + } + + public sealed partial class Builder : pb::GeneratedBuilder { + // Construct using self::ServiceOptions.CreateBuilder() + internal Builder() {} + + self::ServiceOptions result = new self::ServiceOptions(); + + protected override self::ServiceOptions MessageBeingBuilt { + get { return result; } + } + + public override IBuilder Clear() { + result = new self::ServiceOptions(); + return this; + } + + public override IBuilder Clone() { + return new Builder().MergeFrom(result); + } + + public override pbd::MessageDescriptor DescriptorForType { + get { return self::ServiceOptions.Descriptor; } + } + + public override self::ServiceOptions DefaultInstanceForType { + get { return self::ServiceOptions.DefaultInstance; } + } + + public override self::ServiceOptions BuildPartial() { + self::ServiceOptions returnMe = result; + result = null; + return returnMe; + } + + public override IBuilder MergeFrom(pb::IMessage other) { + if (other is self::ServiceOptions) { + return MergeFrom((self::ServiceOptions) other); + } else { + base.MergeFrom(other); + return this; + } + } + + public override IBuilder MergeFrom(self::ServiceOptions other) { + if (other == self::ServiceOptions.DefaultInstance) return this; + this.MergeUnknownFields(other.UnknownFields); + return this; + } + + public override IBuilder MergeFrom(pb::CodedInputStream input) { + return MergeFrom(input, pb::ExtensionRegistry.Empty); + } + + public override IBuilder MergeFrom(pb::CodedInputStream input, pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.CreateBuilder(this.UnknownFields); + while (true) { + uint tag = input.ReadTag(); + switch (tag) { + case 0: + this.UnknownFields = unknownFields.Build(); + return this; + default: { + if (!ParseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.UnknownFields = unknownFields.Build(); + return this; + } + break; + } + } + } + } + + } + } + + public sealed partial class MethodOptions : pb::GeneratedMessage { + // Use MethodOptions.CreateBuilder() to construct. + private MethodOptions() {} + + private static readonly MethodOptions defaultInstance = new MethodOptions(); + public static MethodOptions DefaultInstance { + get { return defaultInstance; } + } + + public override MethodOptions DefaultInstanceForType { + get { return defaultInstance; } + } + + public static pbd::MessageDescriptor Descriptor { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_MethodOptions__Descriptor; } + } + + protected internal override pb::FieldAccess.FieldAccessorTable InternalFieldAccessors { + get { return self::DescriptorProtoFile.internal__static_google_protobuf_MethodOptions__FieldAccessorTable; } + } + + public override bool IsInitialized { + get { + return true; + } + } + + public override void WriteTo(pb::CodedOutputStream output) { + UnknownFields.WriteTo(output); + } + + private int memoizedSerializedSize = -1; + public override int SerializedSize { + get { + int size = memoizedSerializedSize; + if (size != -1) return size; + + size = 0; + size += UnknownFields.SerializedSize; + memoizedSerializedSize = size; + return size; + } + } + + public static self::MethodOptions ParseFrom(pb::ByteString data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::MethodOptions ParseFrom(pb::ByteString data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::MethodOptions ParseFrom(byte[] data) { + return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed(); + } + public static self::MethodOptions parseFrom(byte[] data, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)) + .BuildParsed(); + } + public static self::MethodOptions ParseFrom(global::System.IO.Stream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::MethodOptions ParseFrom( + global::System.IO.Stream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + public static self::MethodOptions ParseFrom(pb::CodedInputStream input) { + return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed(); + } + public static self::MethodOptions ParseFrom(pb::CodedInputStream input, + pb::ExtensionRegistry extensionRegistry) { + return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)) + .BuildParsed(); + } + + public static Builder CreateBuilder() { return new Builder(); } + public override IBuilder CreateBuilderForType() { return new Builder(); } + public static Builder CreateBuilder(self::MethodOptions prototype) { + return (Builder) new Builder().MergeFrom(prototype); + } + + public sealed partial class Builder : pb::GeneratedBuilder { + // Construct using self::MethodOptions.CreateBuilder() + internal Builder() {} + + self::MethodOptions result = new self::MethodOptions(); + + protected override self::MethodOptions MessageBeingBuilt { + get { return result; } + } + + public override IBuilder Clear() { + result = new self::MethodOptions(); + return this; + } + + public override IBuilder Clone() { + return new Builder().MergeFrom(result); + } + + public override pbd::MessageDescriptor DescriptorForType { + get { return self::MethodOptions.Descriptor; } + } + + public override self::MethodOptions DefaultInstanceForType { + get { return self::MethodOptions.DefaultInstance; } + } + + public override self::MethodOptions BuildPartial() { + self::MethodOptions returnMe = result; + result = null; + return returnMe; + } + + public override IBuilder MergeFrom(pb::IMessage other) { + if (other is self::MethodOptions) { + return MergeFrom((self::MethodOptions) other); + } else { + base.MergeFrom(other); + return this; + } + } + + public override IBuilder MergeFrom(self::MethodOptions other) { + if (other == self::MethodOptions.DefaultInstance) return this; + this.MergeUnknownFields(other.UnknownFields); + return this; + } + + public override IBuilder MergeFrom(pb::CodedInputStream input) { + return MergeFrom(input, pb::ExtensionRegistry.Empty); + } + + public override IBuilder MergeFrom(pb::CodedInputStream input, pb::ExtensionRegistry extensionRegistry) { + pb::UnknownFieldSet.Builder unknownFields = + pb::UnknownFieldSet.CreateBuilder(this.UnknownFields); + while (true) { + uint tag = input.ReadTag(); + switch (tag) { + case 0: + this.UnknownFields = unknownFields.Build(); + return this; + default: { + if (!ParseUnknownField(input, unknownFields, + extensionRegistry, tag)) { + this.UnknownFields = unknownFields.Build(); + return this; + } + break; + } + } + } + } + + } + } + + #endregion + + #region Services + #endregion +} diff --git a/csharp/ProtocolBuffers/DescriptorProtos/IDescriptorProto.cs b/csharp/ProtocolBuffers/DescriptorProtos/IDescriptorProto.cs index 1bd415ce..34b27576 100644 --- a/csharp/ProtocolBuffers/DescriptorProtos/IDescriptorProto.cs +++ b/csharp/ProtocolBuffers/DescriptorProtos/IDescriptorProto.cs @@ -7,10 +7,6 @@ /// /// The associated options protocol buffer type public interface IDescriptorProto { - /// - /// The fully qualified name of the descriptor's target. - /// - string FullName { get; } /// /// The brief name of the descriptor's target. diff --git a/csharp/ProtocolBuffers/Descriptors/DescriptorBase.cs b/csharp/ProtocolBuffers/Descriptors/DescriptorBase.cs index bb0f32df..e6be7547 100644 --- a/csharp/ProtocolBuffers/Descriptors/DescriptorBase.cs +++ b/csharp/ProtocolBuffers/Descriptors/DescriptorBase.cs @@ -32,9 +32,10 @@ namespace Google.ProtocolBuffers.Descriptors { /// /// The fully qualified name of the descriptor's target. + /// TODO(jonskeet): Implement! /// public string FullName { - get { return proto.FullName; } + get { return null; } } /// diff --git a/csharp/ProtocolBuffers/Descriptors/DescriptorPool.cs b/csharp/ProtocolBuffers/Descriptors/DescriptorPool.cs new file mode 100644 index 00000000..f2876976 --- /dev/null +++ b/csharp/ProtocolBuffers/Descriptors/DescriptorPool.cs @@ -0,0 +1,22 @@ +using System.Collections.Generic; + +namespace Google.ProtocolBuffers.Descriptors { + /// + /// Contains lookup tables containing all the descriptors defined in a particular file. + /// + internal class DescriptorPool { + + IDictionary byName; + + /// + /// Finds a symbol of the given name within the pool. + /// + /// The type of symbol to look for + /// Name to look up + /// The symbol with the given name and type, + /// or null if the symbol doesn't exist or has the wrong type + internal T FindSymbol(string name) where T : class { + return default(T); + } + } +} diff --git a/csharp/ProtocolBuffers/Descriptors/EnumDescriptorIndexAttribute.cs b/csharp/ProtocolBuffers/Descriptors/EnumDescriptorIndexAttribute.cs new file mode 100644 index 00000000..e751b1fd --- /dev/null +++ b/csharp/ProtocolBuffers/Descriptors/EnumDescriptorIndexAttribute.cs @@ -0,0 +1,19 @@ +using System; + +namespace Google.ProtocolBuffers.Descriptors { + /// + /// Allows enum values to express the index within their descriptor. + /// + [AttributeUsage(AttributeTargets.Field)] + internal class EnumDescriptorIndexAttribute : Attribute { + readonly int index; + + internal int Index { + get { return index; } + } + + internal EnumDescriptorIndexAttribute(int index) { + this.index = index; + } + } +} diff --git a/csharp/ProtocolBuffers/Descriptors/FileDescriptor.cs b/csharp/ProtocolBuffers/Descriptors/FileDescriptor.cs index 38038ee0..d552d2f0 100644 --- a/csharp/ProtocolBuffers/Descriptors/FileDescriptor.cs +++ b/csharp/ProtocolBuffers/Descriptors/FileDescriptor.cs @@ -1,7 +1,75 @@ -using Google.ProtocolBuffers.DescriptorProtos; +using System; +using Google.ProtocolBuffers.DescriptorProtos; +using System.Collections.Generic; namespace Google.ProtocolBuffers.Descriptors { public class FileDescriptor : DescriptorBase { + + private readonly IList messageTypes; + private readonly IList enumTypes; + private readonly IList services; + private readonly IList extensions; + private readonly IList dependencies; + private readonly DescriptorPool pool; + public FileDescriptor(FileDescriptorProto proto, FileDescriptor file) : base(proto, file) { } + + /// + /// The package as declared in the .proto file. This may or may not + /// be equivalent to the .NET namespace of the generated classes. + /// + public string Package { + get { return Proto.Package; } + } + + /// + /// Unmodifiable list of top-level message types declared in this file. + /// + public IList MessageTypes { + get { return messageTypes; } + } + + /// + /// Unmodifiable list of top-level enum types declared in this file. + /// + public IList EnumTypes { + get { return enumTypes; } + } + + /// + /// Unmodifiable list of top-level services declared in this file. + /// + public IList Services { + get { return services; } + } + + /// + /// Unmodifiable list of top-level extensions declared in this file. + /// + public IList Extensions { + get { return extensions; } + } + + /// + /// Unmodifiable list of this file's dependencies (imports). + /// + public IList Dependencies { + get { return dependencies; } + } + + public static FileDescriptor BuildFrom(FileDescriptorProto proto, + FileDescriptor[] dependencies) { + throw new NotImplementedException(); + } + /// + /// This method is to be called by generated code only. It is equivalent + /// to BuilderFrom except that the FileDescriptorProto is encoded in + /// protocol buffer wire format. + /// + public static FileDescriptor InternalBuildGeneratedFileFrom(byte[] descriptorData, + FileDescriptor[] dependencies) { + FileDescriptorProto proto = FileDescriptorProto.ParseFrom(descriptorData); + return BuildFrom(proto, dependencies); + } } } diff --git a/csharp/ProtocolBuffers/Descriptors/MessageDescriptor.cs b/csharp/ProtocolBuffers/Descriptors/MessageDescriptor.cs index 971bc3eb..fd8c6e5b 100644 --- a/csharp/ProtocolBuffers/Descriptors/MessageDescriptor.cs +++ b/csharp/ProtocolBuffers/Descriptors/MessageDescriptor.cs @@ -16,5 +16,12 @@ namespace Google.ProtocolBuffers.Descriptors { internal FieldDescriptor FindFieldByNumber(int fieldNumber) { throw new System.NotImplementedException(); } + + /// + /// List of message types nested within this one. + /// + public IList NestedTypes { + get { throw new System.NotImplementedException(); } + } } } diff --git a/csharp/ProtocolBuffers/ExtensionRegistry.cs b/csharp/ProtocolBuffers/ExtensionRegistry.cs index 6c36aff4..9cda6a84 100644 --- a/csharp/ProtocolBuffers/ExtensionRegistry.cs +++ b/csharp/ProtocolBuffers/ExtensionRegistry.cs @@ -136,7 +136,7 @@ namespace Google.ProtocolBuffers { extension.Descriptor.FieldNumber)] = extension; FieldDescriptor field = extension.Descriptor; - if (field.ContainingType.Options.IsMessageSetWireFormat + if (field.ContainingType.Options.MessageSetWireFormat && field.FieldType == FieldType.Message && field.IsOptional && field.ExtensionScope == field.MessageType) { diff --git a/csharp/ProtocolBuffers/FieldAccess/FieldAccessorTable.cs b/csharp/ProtocolBuffers/FieldAccess/FieldAccessorTable.cs index cf5220f6..7fec437f 100644 --- a/csharp/ProtocolBuffers/FieldAccess/FieldAccessorTable.cs +++ b/csharp/ProtocolBuffers/FieldAccess/FieldAccessorTable.cs @@ -2,9 +2,7 @@ using Google.ProtocolBuffers.Descriptors; namespace Google.ProtocolBuffers.FieldAccess { - public class FieldAccessorTable - where TMessage : IMessage - where TBuilder : IBuilder { + public class FieldAccessorTable { readonly MessageDescriptor descriptor; @@ -12,11 +10,11 @@ namespace Google.ProtocolBuffers.FieldAccess { get { return descriptor; } } - public FieldAccessorTable(MessageDescriptor descriptor, String[] pascalCaseNames) { + public FieldAccessorTable(MessageDescriptor descriptor, String[] pascalCaseFieldNames, Type messageType, Type builderType) { this.descriptor = descriptor; } - internal IFieldAccessor this[FieldDescriptor field] { + internal IFieldAccessor this[FieldDescriptor field] { get { return null; } } } diff --git a/csharp/ProtocolBuffers/FieldAccess/IFieldAccessor.cs b/csharp/ProtocolBuffers/FieldAccess/IFieldAccessor.cs index 002d9739..76b34021 100644 --- a/csharp/ProtocolBuffers/FieldAccess/IFieldAccessor.cs +++ b/csharp/ProtocolBuffers/FieldAccess/IFieldAccessor.cs @@ -5,25 +5,23 @@ /// The property descriptors for each field are created once and then cached. /// In addition, this interface holds knowledge of repeated fields, builders etc. /// - internal interface IFieldAccessor - where TMessage : IMessage - where TBuilder : IBuilder { + internal interface IFieldAccessor { /// /// Indicates whether the specified message contains the field. /// - bool Has(IMessage message); + bool Has(IMessage message); /// /// Gets the count of the repeated field in the specified message. /// - int GetRepeatedCount(IMessage message); + int GetRepeatedCount(IMessage message); /// /// Clears the field in the specified builder. /// /// - void Clear(IBuilder builder); + void Clear(IBuilder builder); /// /// Creates a builder for the type of this field (which must be a message field). @@ -33,27 +31,27 @@ /// /// Accessor for single fields /// - object GetValue(IMessage message); + object GetValue(IMessage message); /// /// Mutator for single fields /// - void SetValue(IBuilder builder, object value); + void SetValue(IBuilder builder, object value); /// /// Accessor for repeated fields /// - object GetRepeatedValue(IMessage message, int index); + object GetRepeatedValue(IMessage message, int index); /// /// Mutator for repeated fields /// - void SetRepeated(IBuilder builder, int index, object value); + void SetRepeated(IBuilder builder, int index, object value); /// /// Adds the specified value to the field in the given builder. /// - void AddRepeated(IBuilder builder, object value); + void AddRepeated(IBuilder builder, object value); /// /// Returns a read-only wrapper around the value of a repeated field. /// - object GetRepeatedWrapper(IBuilder builder); + object GetRepeatedWrapper(IBuilder builder); } } diff --git a/csharp/ProtocolBuffers/FieldSet.cs b/csharp/ProtocolBuffers/FieldSet.cs index 0bcbca81..40b8ae1c 100644 --- a/csharp/ProtocolBuffers/FieldSet.cs +++ b/csharp/ProtocolBuffers/FieldSet.cs @@ -121,7 +121,7 @@ namespace Google.ProtocolBuffers { uint tag) { MessageDescriptor type = builder.DescriptorForType; - if (type.Options.IsMessageSetWireFormat + if (type.Options.MessageSetWireFormat && tag == WireFormat.MessageSetTag.ItemStart) { MergeMessageSetExtensionFromCodedStream(input, unknownFields, extensionRegistry, builder); return true; @@ -524,7 +524,7 @@ namespace Google.ProtocolBuffers { /// Writes a single field to a CodedOutputStream. /// public void WriteField(FieldDescriptor field, Object value, CodedOutputStream output) { - if (field.IsExtension && field.ContainingType.Options.IsMessageSetWireFormat) { + if (field.IsExtension && field.ContainingType.Options.MessageSetWireFormat) { output.WriteMessageSetExtension(field.FieldNumber, (IMessage) value); } else { if (field.IsRepeated) { @@ -548,7 +548,7 @@ namespace Google.ProtocolBuffers { FieldDescriptor field = entry.Key; object value = entry.Value; - if (field.IsExtension && field.ContainingType.Options.IsMessageSetWireFormat) { + if (field.IsExtension && field.ContainingType.Options.MessageSetWireFormat) { size += CodedOutputStream.ComputeMessageSetExtensionSize(field.FieldNumber, (IMessage) value); } else { if (field.IsRepeated) { diff --git a/csharp/ProtocolBuffers/GeneratedBuilder.cs b/csharp/ProtocolBuffers/GeneratedBuilder.cs index a98dbccc..f11ed452 100644 --- a/csharp/ProtocolBuffers/GeneratedBuilder.cs +++ b/csharp/ProtocolBuffers/GeneratedBuilder.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Text; using Google.ProtocolBuffers.Collections; using Google.ProtocolBuffers.Descriptors; +using System.IO; namespace Google.ProtocolBuffers { /// @@ -17,7 +18,7 @@ namespace Google.ProtocolBuffers { /// /// Returns the message being built at the moment. /// - protected abstract GeneratedMessage MessageBeingBuilt { get; } + protected abstract TMessage MessageBeingBuilt { get; } public override bool Initialized { get { return MessageBeingBuilt.IsInitialized; } @@ -40,6 +41,29 @@ namespace Google.ProtocolBuffers { } } + /// + /// Adds all of the specified values to the given collection. + /// + protected void AddRange(IEnumerable source, IList destination) { + List list = destination as List; + if (list != null) { + list.AddRange(source); + } else { + foreach (T element in source) { + destination.Add(element); + } + } + } + + /// + /// Called by derived classes to parse an unknown field. + /// + /// true unless the tag is an end-group tag + protected bool ParseUnknownField(CodedInputStream input, UnknownFieldSet.Builder unknownFields, + ExtensionRegistry extensionRegistry, uint tag) { + return unknownFields.MergeFieldFrom(tag, input); + } + public override MessageDescriptor DescriptorForType { get { return MessageBeingBuilt.DescriptorForType; } } @@ -73,8 +97,8 @@ namespace Google.ProtocolBuffers { get { return DefaultInstanceForType; } } - protected override IBuilder CreateBuilderForFieldImpl(FieldDescriptor field) { - return CreateBuilderForField(field); + public override IBuilder CreateBuilderForField(FieldDescriptor field) { + return MessageBeingBuilt.InternalFieldAccessors[field].CreateBuilder(); } protected override IBuilder ClearFieldImpl(FieldDescriptor field) { @@ -85,69 +109,78 @@ namespace Google.ProtocolBuffers { return AddRepeatedField(field, value); } - public new abstract IBuilder Clear(); - - public IBuilder MergeFrom(IMessage other) { - throw new NotImplementedException(); - } - - public abstract TMessage Build(); - - public abstract TMessage BuildPartial(); - - public abstract IBuilder Clone(); - - IBuilder IBuilder.MergeFrom(CodedInputStream input) { - throw new NotImplementedException(); - } - - IBuilder IBuilder.MergeFrom(CodedInputStream input, ExtensionRegistry extensionRegistry) { - throw new NotImplementedException(); - } - - public TMessage DefaultInstanceForType { - get { throw new NotImplementedException(); } - } - - public IBuilder CreateBuilderForField(FieldDescriptor field) { - throw new NotImplementedException(); - } - public IBuilder ClearField(FieldDescriptor field) { MessageBeingBuilt.InternalFieldAccessors[field].Clear(this); return this; } + // FIXME: Implement! + public virtual IBuilder MergeFrom(TMessage other) { return this; } + public virtual IBuilder MergeUnknownFields(UnknownFieldSet unknownFields) { return this; } + public IBuilder AddRepeatedField(FieldDescriptor field, object value) { + MessageBeingBuilt.InternalFieldAccessors[field].AddRepeated(this, value); return this; } - public new IBuilder MergeUnknownFields(UnknownFieldSet unknownFields) { - throw new NotImplementedException(); + public IBuilder MergeFrom(ByteString data) { + ((IBuilder) this).MergeFrom(data); + return this; } - IBuilder IBuilder.MergeFrom(ByteString data) { - throw new NotImplementedException(); + public IBuilder MergeFrom(ByteString data, ExtensionRegistry extensionRegistry) { + ((IBuilder) this).MergeFrom(data, extensionRegistry); + return this; } - IBuilder IBuilder.MergeFrom(ByteString data, ExtensionRegistry extensionRegistry) { - throw new NotImplementedException(); + public IBuilder MergeFrom(byte[] data) { + ((IBuilder) this).MergeFrom(data); + return this; } - IBuilder IBuilder.MergeFrom(byte[] data) { - throw new NotImplementedException(); + public IBuilder MergeFrom(byte[] data, ExtensionRegistry extensionRegistry) { + ((IBuilder) this).MergeFrom(data, extensionRegistry); + return this; } - IBuilder IBuilder.MergeFrom(byte[] data, ExtensionRegistry extensionRegistry) { - throw new NotImplementedException(); + public IBuilder MergeFrom(Stream input) { + ((IBuilder) this).MergeFrom(input); + return this; } - IBuilder IBuilder.MergeFrom(System.IO.Stream input) { - throw new NotImplementedException(); + public IBuilder MergeFrom(Stream input, ExtensionRegistry extensionRegistry) { + ((IBuilder) this).MergeFrom(input, extensionRegistry); + return this; } - IBuilder IBuilder.MergeFrom(System.IO.Stream input, ExtensionRegistry extensionRegistry) { - throw new NotImplementedException(); + /// + /// Like Build(), but will wrap UninitializedMessageException in + /// InvalidProtocolBufferException. + /// TODO(jonskeet): This used to be generated for each class. Find out why. + /// + public TMessage BuildParsed() { + if (!Initialized) { + throw new UninitializedMessageException(MessageBeingBuilt).AsInvalidProtocolBufferException(); + } + return BuildPartial(); } + + /// + /// Implementation of . + /// TODO(jonskeet): This used to be generated for each class. Find out why. + /// + public TMessage Build() { + if (!Initialized) { + throw new UninitializedMessageException(MessageBeingBuilt); + } + return BuildPartial(); + } + + public abstract TMessage BuildPartial(); + public abstract IBuilder Clone(); + public abstract new IBuilder Clear(); + public abstract TMessage DefaultInstanceForType { get; } + public abstract IBuilder MergeFrom(CodedInputStream input); + public abstract IBuilder MergeFrom(CodedInputStream input, ExtensionRegistry extensionRegistry); } } diff --git a/csharp/ProtocolBuffers/GeneratedMessage.cs b/csharp/ProtocolBuffers/GeneratedMessage.cs index 90d4a19f..c22b9416 100644 --- a/csharp/ProtocolBuffers/GeneratedMessage.cs +++ b/csharp/ProtocolBuffers/GeneratedMessage.cs @@ -16,7 +16,7 @@ namespace Google.ProtocolBuffers { private readonly UnknownFieldSet unknownFields = UnknownFieldSet.DefaultInstance; - protected internal abstract FieldAccessorTable InternalFieldAccessors { get; } + protected internal abstract FieldAccessorTable InternalFieldAccessors { get; } public override MessageDescriptor DescriptorForType { get { return InternalFieldAccessors.Descriptor; } @@ -30,13 +30,9 @@ namespace Google.ProtocolBuffers { return CreateBuilderForType(); } - public IMessage DefaultInstanceForType { - get { throw new NotImplementedException(); } - } + public abstract TMessage DefaultInstanceForType { get; } - public IBuilder CreateBuilderForType() { - throw new NotImplementedException(); - } + public abstract IBuilder CreateBuilderForType(); private IDictionary GetMutableFieldMap() { @@ -44,7 +40,7 @@ namespace Google.ProtocolBuffers { var ret = new SortedList(); MessageDescriptor descriptor = DescriptorForType; foreach (FieldDescriptor field in descriptor.Fields) { - IFieldAccessor accessor = InternalFieldAccessors[field]; + IFieldAccessor accessor = InternalFieldAccessors[field]; if ((field.IsRepeated && accessor.GetRepeatedCount(this) != 0) || accessor.Has(this)) { ret[field] = accessor.GetValue(this); diff --git a/csharp/ProtocolBuffers/IBuilder.cs b/csharp/ProtocolBuffers/IBuilder.cs index 02b3b59b..f847f217 100644 --- a/csharp/ProtocolBuffers/IBuilder.cs +++ b/csharp/ProtocolBuffers/IBuilder.cs @@ -125,7 +125,7 @@ namespace Google.ProtocolBuffers { /// /// /// - IBuilder MergeFrom(IMessage other); + IBuilder MergeFrom(T other); /// /// Constructs the final message. Once this is called, this Builder instance @@ -142,7 +142,6 @@ namespace Google.ProtocolBuffers { /// Like Build(), but does not throw an exception if the message is missing /// required fields. Instead, a partial message is returned. /// - /// new T BuildPartial(); /// diff --git a/csharp/ProtocolBuffers/IMessage.cs b/csharp/ProtocolBuffers/IMessage.cs index 9aea0ea7..da9aa9f3 100644 --- a/csharp/ProtocolBuffers/IMessage.cs +++ b/csharp/ProtocolBuffers/IMessage.cs @@ -179,8 +179,7 @@ namespace Google.ProtocolBuffers { /// method is an abstract method of IMessage whereas DefaultInstance is /// a static property of a specific class. They return the same thing. /// - new IMessage DefaultInstanceForType { get; } - + new T DefaultInstanceForType { get; } #region Builders /// diff --git a/csharp/ProtocolBuffers/InvalidProtocolBufferException.cs b/csharp/ProtocolBuffers/InvalidProtocolBufferException.cs index 091ac2b7..ba6950cf 100644 --- a/csharp/ProtocolBuffers/InvalidProtocolBufferException.cs +++ b/csharp/ProtocolBuffers/InvalidProtocolBufferException.cs @@ -24,7 +24,7 @@ namespace Google.ProtocolBuffers { /// public class InvalidProtocolBufferException : IOException { - private InvalidProtocolBufferException(string message) + internal InvalidProtocolBufferException(string message) : base(message) { } diff --git a/csharp/ProtocolBuffers/Properties/AssemblyInfo.cs b/csharp/ProtocolBuffers/Properties/AssemblyInfo.cs index 5ed598fe..4961ef30 100644 --- a/csharp/ProtocolBuffers/Properties/AssemblyInfo.cs +++ b/csharp/ProtocolBuffers/Properties/AssemblyInfo.cs @@ -13,7 +13,6 @@ using System.Runtime.InteropServices; [assembly: AssemblyCopyright("Copyright © 2008")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] -[assembly: AssemblyKeyFile ("Google.ProtocolBuffers.snk")] // Setting ComVisible to false makes the types in this assembly not visible // to COM components. If you need to access a type in this assembly from // COM, set the ComVisible attribute to true on that type. diff --git a/csharp/ProtocolBuffers/ProtocolBuffers.csproj b/csharp/ProtocolBuffers/ProtocolBuffers.csproj index 5f31a9e7..b5106738 100644 --- a/csharp/ProtocolBuffers/ProtocolBuffers.csproj +++ b/csharp/ProtocolBuffers/ProtocolBuffers.csproj @@ -12,6 +12,8 @@ Google.ProtocolBuffers v2.0 512 + true + Properties\Google.ProtocolBuffers.snk true @@ -45,10 +47,13 @@ + + + @@ -77,6 +82,9 @@ + + +