Class FileDescriptorProto

public sealed class FileDescriptorProto : object, IMessage<FileDescriptorProto>, IEquatable<FileDescriptorProto>, IDeepCloneable<FileDescriptorProto>, IBufferMessage, IMessage

Describes a complete .proto file.

Inheritance

Object > FileDescriptorProto

Namespace

Google.Protobuf.Reflection

Assembly

Google.Protobuf.dll

Constructors

FileDescriptorProto()

public FileDescriptorProto()

FileDescriptorProto(FileDescriptorProto)

public FileDescriptorProto(FileDescriptorProto other)
Parameter
TypeNameDescription
FileDescriptorProtoother

Fields

DependencyFieldNumber

public const int DependencyFieldNumber = null

Field number for the "dependency" field.

Field Value
TypeDescription
Int32

EnumTypeFieldNumber

public const int EnumTypeFieldNumber = null

Field number for the "enum_type" field.

Field Value
TypeDescription
Int32

ExtensionFieldNumber

public const int ExtensionFieldNumber = null

Field number for the "extension" field.

Field Value
TypeDescription
Int32

MessageTypeFieldNumber

public const int MessageTypeFieldNumber = null

Field number for the "message_type" field.

Field Value
TypeDescription
Int32

NameFieldNumber

public const int NameFieldNumber = null

Field number for the "name" field.

Field Value
TypeDescription
Int32

OptionsFieldNumber

public const int OptionsFieldNumber = null

Field number for the "options" field.

Field Value
TypeDescription
Int32

PackageFieldNumber

public const int PackageFieldNumber = null

Field number for the "package" field.

Field Value
TypeDescription
Int32

PublicDependencyFieldNumber

public const int PublicDependencyFieldNumber = null

Field number for the "public_dependency" field.

Field Value
TypeDescription
Int32

ServiceFieldNumber

public const int ServiceFieldNumber = null

Field number for the "service" field.

Field Value
TypeDescription
Int32

SourceCodeInfoFieldNumber

public const int SourceCodeInfoFieldNumber = null

Field number for the "source_code_info" field.

Field Value
TypeDescription
Int32

SyntaxFieldNumber

public const int SyntaxFieldNumber = null

Field number for the "syntax" field.

Field Value
TypeDescription
Int32

WeakDependencyFieldNumber

public const int WeakDependencyFieldNumber = null

Field number for the "weak_dependency" field.

Field Value
TypeDescription
Int32

Properties

Dependency

public RepeatedField<string> Dependency { get; }

Names of files imported by this file.

Property Value
TypeDescription
RepeatedField<String>

Descriptor

public static MessageDescriptor Descriptor { get; }
Property Value
TypeDescription
MessageDescriptor

EnumType

public RepeatedField<EnumDescriptorProto> EnumType { get; }
Property Value
TypeDescription
RepeatedField<EnumDescriptorProto>

Extension

public RepeatedField<FieldDescriptorProto> Extension { get; }
Property Value
TypeDescription
RepeatedField<FieldDescriptorProto>

HasName

public bool HasName { get; }

Gets whether the "name" field is set

Property Value
TypeDescription
Boolean

HasPackage

public bool HasPackage { get; }

Gets whether the "package" field is set

Property Value
TypeDescription
Boolean

HasSyntax

public bool HasSyntax { get; }

Gets whether the "syntax" field is set

Property Value
TypeDescription
Boolean

MessageType

public RepeatedField<DescriptorProto> MessageType { get; }

All top-level definitions in this file.

Property Value
TypeDescription
RepeatedField<DescriptorProto>

Name

public string Name { get; set; }

file name, relative to root of source tree

Property Value
TypeDescription
String

Options

public FileOptions Options { get; set; }
Property Value
TypeDescription
FileOptions

Package

public string Package { get; set; }

e.g. "foo", "foo.bar", etc.

Property Value
TypeDescription
String

Parser

public static MessageParser<FileDescriptorProto> Parser { get; }
Property Value
TypeDescription
MessageParser<FileDescriptorProto>

PublicDependency

public RepeatedField<int> PublicDependency { get; }

Indexes of the public imported files in the dependency list above.

Property Value
TypeDescription
RepeatedField<Int32>

Service

public RepeatedField<ServiceDescriptorProto> Service { get; }
Property Value
TypeDescription
RepeatedField<ServiceDescriptorProto>

SourceCodeInfo

public SourceCodeInfo SourceCodeInfo { get; set; }

This field contains optional information about the original source code. You may safely remove this entire field without harming runtime functionality of the descriptors -- the information is needed only by development tools.

Property Value
TypeDescription
SourceCodeInfo

Syntax

public string Syntax { get; set; }

The syntax of the proto file. The supported values are "proto2" and "proto3".

Property Value
TypeDescription
String

WeakDependency

public RepeatedField<int> WeakDependency { get; }

Indexes of the weak imported files in the dependency list. For Google-internal migration only. Do not use.

Property Value
TypeDescription
RepeatedField<Int32>

Methods

CalculateSize()

public int CalculateSize()
Returns
TypeDescription
Int32

ClearName()

public void ClearName()

Clears the value of the "name" field

ClearPackage()

public void ClearPackage()

Clears the value of the "package" field

ClearSyntax()

public void ClearSyntax()

Clears the value of the "syntax" field

Clone()

public FileDescriptorProto Clone()
Returns
TypeDescription
FileDescriptorProto

Equals(FileDescriptorProto)

public bool Equals(FileDescriptorProto other)
Parameter
TypeNameDescription
FileDescriptorProtoother
Returns
TypeDescription
Boolean

Equals(Object)

public override bool Equals(object other)
Parameter
TypeNameDescription
Objectother
Returns
TypeDescription
Boolean

GetHashCode()

public override int GetHashCode()
Returns
TypeDescription
Int32

MergeFrom(CodedInputStream)

public void MergeFrom(CodedInputStream input)
Parameter
TypeNameDescription
CodedInputStreaminput

MergeFrom(FileDescriptorProto)

public void MergeFrom(FileDescriptorProto other)
Parameter
TypeNameDescription
FileDescriptorProtoother

ToString()

public override string ToString()
Returns
TypeDescription
String

WriteTo(CodedOutputStream)

public void WriteTo(CodedOutputStream output)
Parameter
TypeNameDescription
CodedOutputStreamoutput

Explicit Interface Implementations

IBufferMessage.InternalMergeFrom(ref ParseContext)

void IBufferMessage.InternalMergeFrom(ref ParseContext input)
Parameter
TypeNameDescription
ParseContextinput

IBufferMessage.InternalWriteTo(ref WriteContext)

void IBufferMessage.InternalWriteTo(ref WriteContext output)
Parameter
TypeNameDescription
WriteContextoutput

IMessage.Descriptor

MessageDescriptor IMessage.Descriptor { get; }
Returns
TypeDescription
MessageDescriptor

Implements

IEquatable<>