Class DescriptorProto (3.15.8)
Version 3.15.8keyboard_arrow_down
public sealed class DescriptorProto : object, IMessage<DescriptorProto>, IEquatable<DescriptorProto>, IDeepCloneable<DescriptorProto>, IBufferMessage, IMessage
Describes a message type.
Inheritance
Object >
DescriptorProto
Namespace
Google.Protobuf.Reflection
Assembly
Google.Protobuf.dll
Constructors
DescriptorProto()
DescriptorProto(DescriptorProto)
public DescriptorProto(DescriptorProto other)
Fields
EnumTypeFieldNumber
public const int EnumTypeFieldNumber = null
Field number for the "enum_type" field.
Field Value
Type
Description
Int32
ExtensionFieldNumber
public const int ExtensionFieldNumber = null
Field number for the "extension" field.
Field Value
Type
Description
Int32
ExtensionRangeFieldNumber
public const int ExtensionRangeFieldNumber = null
Field number for the "extension_range" field.
Field Value
Type
Description
Int32
FieldFieldNumber
public const int FieldFieldNumber = null
Field number for the "field" field.
Field Value
Type
Description
Int32
NameFieldNumber
public const int NameFieldNumber = null
Field number for the "name" field.
Field Value
Type
Description
Int32
NestedTypeFieldNumber
public const int NestedTypeFieldNumber = null
Field number for the "nested_type" field.
Field Value
Type
Description
Int32
OneofDeclFieldNumber
public const int OneofDeclFieldNumber = null
Field number for the "oneof_decl" field.
Field Value
Type
Description
Int32
OptionsFieldNumber
public const int OptionsFieldNumber = null
Field number for the "options" field.
Field Value
Type
Description
Int32
ReservedNameFieldNumber
public const int ReservedNameFieldNumber = null
Field number for the "reserved_name" field.
Field Value
Type
Description
Int32
ReservedRangeFieldNumber
public const int ReservedRangeFieldNumber = null
Field number for the "reserved_range" field.
Field Value
Type
Description
Int32
Properties
Descriptor
public static MessageDescriptor Descriptor { get; }
EnumType
public RepeatedField<EnumDescriptorProto> EnumType { get; }
Extension
public RepeatedField<FieldDescriptorProto> Extension { get; }
ExtensionRange
public RepeatedField<DescriptorProto.Types.ExtensionRange> ExtensionRange { get; }
Field
public RepeatedField<FieldDescriptorProto> Field { get; }
HasName
public bool HasName { get; }
Gets whether the "name" field is set
Property Value
Type
Description
Boolean
Name
public string Name { get; set; }
Property Value
Type
Description
String
NestedType
public RepeatedField<DescriptorProto> NestedType { get; }
OneofDecl
public RepeatedField<OneofDescriptorProto> OneofDecl { get; }
Options
public MessageOptions Options { get; set; }
Parser
public static MessageParser<DescriptorProto> Parser { get; }
ReservedName
public RepeatedField<string> ReservedName { get; }
Reserved field names, which may not be used by fields in the same message.
A given name may only be reserved once.
ReservedRange
public RepeatedField<DescriptorProto.Types.ReservedRange> ReservedRange { get; }
Methods
CalculateSize()
public int CalculateSize()
Returns
Type
Description
Int32
ClearName()
Clears the value of the "name" field
Clone()
public DescriptorProto Clone()
Equals(DescriptorProto)
public bool Equals(DescriptorProto other)
Equals(Object)
public override bool Equals(object other)
Parameter
Name
Description
other
Object
GetHashCode()
public override int GetHashCode()
Returns
Type
Description
Int32
public void MergeFrom(CodedInputStream input)
MergeFrom(DescriptorProto)
public void MergeFrom(DescriptorProto other)
ToString()
public override string ToString()
Returns
Type
Description
String
WriteTo(CodedOutputStream)
public void WriteTo(CodedOutputStream output)
Explicit Interface Implementations
IBufferMessage.InternalMergeFrom(ref ParseContext)
void IBufferMessage.InternalMergeFrom(ref ParseContext input)
IBufferMessage.InternalWriteTo(ref WriteContext)
void IBufferMessage.InternalWriteTo(ref WriteContext output)
IMessage.Descriptor
MessageDescriptor IMessage.Descriptor { get; }
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License , and code samples are licensed under the Apache 2.0 License . For details, see the Google Developers Site Policies . Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-10-10 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-10-10 UTC."],[],[]]