package filedesc

Import Path
	google.golang.org/protobuf/internal/filedesc (on go.dev)

Dependency Relation
	imports 21 packages, and imported by 5 packages

Involved Source Files Package filedesc provides functionality for constructing descriptors. The types in this package implement interfaces in the protoreflect package related to protobuf descripriptors. desc.go desc_init.go desc_lazy.go desc_list.go desc_list_gen.go editions.go placeholder.go
Package-Level Type Names (total 55, in which 48 are exported)
/* sort exporteds by: | */
L0 BaseL0 (*Base) FullName() protoreflect.FullName (*Base) Index() int (*Base) IsPlaceholder() bool (*Base) Name() protoreflect.Name (*Base) Parent() protoreflect.Descriptor (*Base) ParentFile() protoreflect.FileDescriptor (*Base) ProtoInternal(pragma.DoNotImplement) (*Base) Syntax() protoreflect.Syntax *Base : google.golang.org/protobuf/internal/pragma.DoNotImplement
// must be populated Index int Parent protoreflect.Descriptor // must be populated
Builder construct a protoreflect.FileDescriptor from the raw descriptor. FileRegistry is use to lookup file, enum, and message dependencies. Once constructed, the file descriptor is registered here. If nil, it uses protoregistry.GlobalFiles. GoPackagePath is the Go package path that is invoking this builder. NumEnums is the total number of enums declared in the file. NumExtensions is the total number of extensions declared in the file. NumMessages is the total number of messages declared in the file. It includes the implicit message declarations for map entries. NumServices is the total number of services declared in the file. RawDescriptor is the wire-encoded bytes of FileDescriptorProto and must be populated. TypeResolver resolves extension field types for descriptor options. If nil, it uses protoregistry.GlobalTypes. Build constructs a FileDescriptor given the parameters set in Builder. It assumes that the inputs are well-formed and panics if any inconsistencies are encountered. If NumEnums+NumMessages+NumExtensions+NumServices is zero, then Build automatically derives them from the raw descriptor.
Edition is an Enum for proto2.Edition const Edition2023 const Edition2024 const EditionProto2 const EditionProto3 const EditionUnknown const EditionUnsupported
EditionFeatures is a frequently-instantiated struct, so please take care to minimize padding when adding new fields to this struct (add them in the right place/order). APILevel controls which API (Open, Hybrid or Opaque) should be used for generated code (.pb.go files). GenerateLegacyUnmarshalJSON determines if the plugin generates the UnmarshalJSON([]byte) error method for enums. IsDelimitedEncoded is true if message_encoding is DELIMITED https://protobuf.dev/editions/features/#message_encoding IsFieldPresence is true if field_presence is EXPLICIT https://protobuf.dev/editions/features/#field_presence IsJSONCompliant is true if json_format is ALLOW https://protobuf.dev/editions/features/#json_format IsFieldPresence is true if field_presence is LEGACY_REQUIRED https://protobuf.dev/editions/features/#field_presence IsOpenEnum is true if enum_type is OPEN https://protobuf.dev/editions/features/#enum_type IsPacked is true if repeated_field_encoding is PACKED https://protobuf.dev/editions/features/#repeated_field_encoding IsUTF8Validated is true if utf_validation is VERIFY https://protobuf.dev/editions/features/#utf8_validation StripEnumPrefix determines if the plugin generates enum value constants as-is, with their prefix stripped, or both variants.
Base Base Base.L0 BaseL0 L1 EnumL1 // protected by fileDesc.once (*Enum) Format(s fmt.State, r rune) (*Enum) FullName() protoreflect.FullName (*Enum) Index() int (*Enum) IsClosed() bool (*Enum) IsPlaceholder() bool (*Enum) Name() protoreflect.Name (*Enum) Options() protoreflect.ProtoMessage (*Enum) Parent() protoreflect.Descriptor (*Enum) ParentFile() protoreflect.FileDescriptor (*Enum) ProtoInternal(pragma.DoNotImplement) (*Enum) ProtoType(protoreflect.EnumDescriptor) (*Enum) ReservedNames() protoreflect.Names (*Enum) ReservedRanges() protoreflect.EnumRanges (*Enum) Syntax() protoreflect.Syntax (*Enum) Values() protoreflect.EnumValueDescriptors *Enum : google.golang.org/protobuf/internal/pragma.DoNotImplement *Enum : google.golang.org/protobuf/reflect/protoreflect.Descriptor *Enum : google.golang.org/protobuf/reflect/protoreflect.EnumDescriptor *Enum : fmt.Formatter
EditionFeatures EditionFeatures
Options func() protoreflect.ProtoMessage ReservedNames Names ReservedRanges EnumRanges Values EnumValues
// start inclusive; end inclusive CheckValid reports any errors with the set of names with an error message that completes the sentence: "ranges is invalid because it has ..." (*EnumRanges) Format(s fmt.State, r rune) (*EnumRanges) Get(i int) [2]protoreflect.EnumNumber (*EnumRanges) Has(n protoreflect.EnumNumber) bool (*EnumRanges) Len() int (*EnumRanges) ProtoInternal(pragma.DoNotImplement) *EnumRanges : google.golang.org/protobuf/internal/pragma.DoNotImplement *EnumRanges : google.golang.org/protobuf/reflect/protoreflect.EnumRanges *EnumRanges : fmt.Formatter
List []Enum (*Enums) ByName(s protoreflect.Name) protoreflect.EnumDescriptor (*Enums) Format(s fmt.State, r rune) (*Enums) Get(i int) protoreflect.EnumDescriptor (*Enums) Len() int (*Enums) ProtoInternal(pragma.DoNotImplement) *Enums : google.golang.org/protobuf/internal/pragma.DoNotImplement *Enums : google.golang.org/protobuf/reflect/protoreflect.EnumDescriptors *Enums : fmt.Formatter
Base Base Base.L0 BaseL0 L1 EnumValueL1 (*EnumValue) Format(s fmt.State, r rune) (*EnumValue) FullName() protoreflect.FullName (*EnumValue) Index() int (*EnumValue) IsPlaceholder() bool (*EnumValue) Name() protoreflect.Name (*EnumValue) Number() protoreflect.EnumNumber (*EnumValue) Options() protoreflect.ProtoMessage (*EnumValue) Parent() protoreflect.Descriptor (*EnumValue) ParentFile() protoreflect.FileDescriptor (*EnumValue) ProtoInternal(pragma.DoNotImplement) (*EnumValue) ProtoType(protoreflect.EnumValueDescriptor) (*EnumValue) Syntax() protoreflect.Syntax *EnumValue : google.golang.org/protobuf/internal/pragma.DoNotImplement *EnumValue : google.golang.org/protobuf/reflect/protoreflect.Descriptor *EnumValue : google.golang.org/protobuf/reflect/protoreflect.EnumValueDescriptor *EnumValue : fmt.Formatter
Number protoreflect.EnumNumber Options func() protoreflect.ProtoMessage
List []EnumValue (*EnumValues) ByName(s protoreflect.Name) protoreflect.EnumValueDescriptor (*EnumValues) ByNumber(n protoreflect.EnumNumber) protoreflect.EnumValueDescriptor (*EnumValues) Format(s fmt.State, r rune) (*EnumValues) Get(i int) protoreflect.EnumValueDescriptor (*EnumValues) Len() int (*EnumValues) ProtoInternal(pragma.DoNotImplement) *EnumValues : google.golang.org/protobuf/internal/pragma.DoNotImplement *EnumValues : google.golang.org/protobuf/reflect/protoreflect.EnumValueDescriptors *EnumValues : fmt.Formatter
Base Base Base.L0 BaseL0 L1 ExtensionL1 // protected by fileDesc.once (*Extension) Cardinality() protoreflect.Cardinality (*Extension) ContainingMessage() protoreflect.MessageDescriptor (*Extension) ContainingOneof() protoreflect.OneofDescriptor (*Extension) Default() protoreflect.Value (*Extension) DefaultEnumValue() protoreflect.EnumValueDescriptor (*Extension) Enum() protoreflect.EnumDescriptor (*Extension) Format(s fmt.State, r rune) (*Extension) FullName() protoreflect.FullName (*Extension) HasDefault() bool (*Extension) HasJSONName() bool (*Extension) HasOptionalKeyword() bool (*Extension) HasPresence() bool (*Extension) Index() int (*Extension) IsExtension() bool (*Extension) IsLazy() bool (*Extension) IsList() bool (*Extension) IsMap() bool (*Extension) IsPacked() bool (*Extension) IsPlaceholder() bool (*Extension) IsWeak() bool (*Extension) JSONName() string (*Extension) Kind() protoreflect.Kind (*Extension) MapKey() protoreflect.FieldDescriptor (*Extension) MapValue() protoreflect.FieldDescriptor (*Extension) Message() protoreflect.MessageDescriptor (*Extension) Name() protoreflect.Name (*Extension) Number() protoreflect.FieldNumber (*Extension) Options() protoreflect.ProtoMessage (*Extension) Parent() protoreflect.Descriptor (*Extension) ParentFile() protoreflect.FileDescriptor (*Extension) ProtoInternal(pragma.DoNotImplement) (*Extension) ProtoType(protoreflect.FieldDescriptor) (*Extension) Syntax() protoreflect.Syntax (*Extension) TextName() string *Extension : google.golang.org/protobuf/internal/pragma.DoNotImplement *Extension : google.golang.org/protobuf/reflect/protoreflect.Descriptor *Extension : google.golang.org/protobuf/reflect/protoreflect.FieldDescriptor *Extension : fmt.Formatter
Default defaultValue Enum protoreflect.EnumDescriptor // promoted from google.protobuf.FieldDescriptorProto Message protoreflect.MessageDescriptor Options func() protoreflect.ProtoMessage StringName stringName
List []Extension (*Extensions) ByName(s protoreflect.Name) protoreflect.ExtensionDescriptor (*Extensions) Format(s fmt.State, r rune) (*Extensions) Get(i int) protoreflect.ExtensionDescriptor (*Extensions) Len() int (*Extensions) ProtoInternal(pragma.DoNotImplement) *Extensions : google.golang.org/protobuf/internal/pragma.DoNotImplement *Extensions : google.golang.org/protobuf/reflect/protoreflect.ExtensionDescriptors *Extensions : fmt.Formatter
Base Base Base.L0 BaseL0 L1 FieldL1 (*Field) Cardinality() protoreflect.Cardinality (*Field) ContainingMessage() protoreflect.MessageDescriptor (*Field) ContainingOneof() protoreflect.OneofDescriptor (*Field) Default() protoreflect.Value (*Field) DefaultEnumValue() protoreflect.EnumValueDescriptor EnforceUTF8 is a pseudo-internal API to determine whether to enforce UTF-8 validation for the string field. This exists for Google-internal use only since proto3 did not enforce UTF-8 validity prior to the open-source release. If this method does not exist, the default is to enforce valid UTF-8. WARNING: This method is exempt from the compatibility promise and may be removed in the future without warning. (*Field) Enum() protoreflect.EnumDescriptor (*Field) Format(s fmt.State, r rune) (*Field) FullName() protoreflect.FullName (*Field) HasDefault() bool (*Field) HasJSONName() bool (*Field) HasOptionalKeyword() bool (*Field) HasPresence() bool (*Field) Index() int (*Field) IsExtension() bool (*Field) IsLazy() bool (*Field) IsList() bool (*Field) IsMap() bool (*Field) IsMapEntry() bool (*Field) IsPacked() bool (*Field) IsPlaceholder() bool (*Field) IsWeak() bool (*Field) JSONName() string (*Field) Kind() protoreflect.Kind (*Field) MapKey() protoreflect.FieldDescriptor (*Field) MapValue() protoreflect.FieldDescriptor (*Field) Message() protoreflect.MessageDescriptor (*Field) Name() protoreflect.Name (*Field) Number() protoreflect.FieldNumber (*Field) Options() protoreflect.ProtoMessage (*Field) Parent() protoreflect.Descriptor (*Field) ParentFile() protoreflect.FileDescriptor (*Field) ProtoInternal(pragma.DoNotImplement) (*Field) ProtoType(protoreflect.FieldDescriptor) (*Field) Syntax() protoreflect.Syntax (*Field) TextName() string *Field : google.golang.org/protobuf/internal/pragma.DoNotImplement *Field : google.golang.org/protobuf/reflect/protoreflect.Descriptor *Field : google.golang.org/protobuf/reflect/protoreflect.FieldDescriptor *Field : fmt.Formatter
// must be consistent with Message.RequiredNumbers // must be consistent with Message.Oneofs.Fields Default defaultValue EditionFeatures EditionFeatures Enum protoreflect.EnumDescriptor // promoted from google.protobuf.FieldOptions // promoted from google.protobuf.FieldDescriptorProto Kind protoreflect.Kind Message protoreflect.MessageDescriptor Number protoreflect.FieldNumber Options func() protoreflect.ProtoMessage StringName stringName
List []protoreflect.FieldNumber (*FieldNumbers) Format(s fmt.State, r rune) (*FieldNumbers) Get(i int) protoreflect.FieldNumber (*FieldNumbers) Has(n protoreflect.FieldNumber) bool (*FieldNumbers) Len() int (*FieldNumbers) ProtoInternal(pragma.DoNotImplement) *FieldNumbers : google.golang.org/protobuf/internal/pragma.DoNotImplement *FieldNumbers : google.golang.org/protobuf/reflect/protoreflect.FieldNumbers *FieldNumbers : fmt.Formatter
// start inclusive; end exclusive CheckOverlap reports an error if p and q overlap. CheckValid reports any errors with the set of ranges with an error message that completes the sentence: "ranges is invalid because it has ..." (*FieldRanges) Format(s fmt.State, r rune) (*FieldRanges) Get(i int) [2]protoreflect.FieldNumber (*FieldRanges) Has(n protoreflect.FieldNumber) bool (*FieldRanges) Len() int (*FieldRanges) ProtoInternal(pragma.DoNotImplement) *FieldRanges : google.golang.org/protobuf/internal/pragma.DoNotImplement *FieldRanges : google.golang.org/protobuf/reflect/protoreflect.FieldRanges *FieldRanges : fmt.Formatter func (*FieldRanges).CheckOverlap(q *FieldRanges) error
List []Field (*Fields) ByJSONName(s string) protoreflect.FieldDescriptor (*Fields) ByName(s protoreflect.Name) protoreflect.FieldDescriptor (*Fields) ByNumber(n protoreflect.FieldNumber) protoreflect.FieldDescriptor (*Fields) ByTextName(s string) protoreflect.FieldDescriptor (*Fields) Format(s fmt.State, r rune) (*Fields) Get(i int) protoreflect.FieldDescriptor (*Fields) Len() int (*Fields) ProtoInternal(pragma.DoNotImplement) *Fields : google.golang.org/protobuf/internal/pragma.DoNotImplement *Fields : google.golang.org/protobuf/reflect/protoreflect.ExtensionDescriptors *Fields : google.golang.org/protobuf/reflect/protoreflect.FieldDescriptors *Fields : fmt.Formatter
L1 FileL1 L2 *FileL2 Not exported and just used to reconstruct the original FileDescriptor proto (*File) Enums() protoreflect.EnumDescriptors (*File) Extensions() protoreflect.ExtensionDescriptors (*File) Format(s fmt.State, r rune) (*File) FullName() protoreflect.FullName GoPackagePath is a pseudo-internal API for determining the Go package path that this file descriptor is declared in. WARNING: This method is exempt from the compatibility promise and may be removed in the future without warning. (*File) Imports() protoreflect.FileImports (*File) Index() int (*File) IsPlaceholder() bool (*File) Messages() protoreflect.MessageDescriptors (*File) Name() protoreflect.Name (*File) Options() protoreflect.ProtoMessage (*File) Package() protoreflect.FullName (*File) Parent() protoreflect.Descriptor (*File) ParentFile() protoreflect.FileDescriptor (*File) Path() string (*File) ProtoInternal(pragma.DoNotImplement) (*File) ProtoType(protoreflect.FileDescriptor) (*File) Services() protoreflect.ServiceDescriptors (*File) SourceLocations() protoreflect.SourceLocations (*File) Syntax() protoreflect.Syntax *File : google.golang.org/protobuf/internal/pragma.DoNotImplement *File : google.golang.org/protobuf/reflect/protoreflect.Descriptor *File : google.golang.org/protobuf/reflect/protoreflect.FileDescriptor *File : fmt.Formatter var SurrogateEdition2023 *File var SurrogateProto2 *File var SurrogateProto3 *File
(*FileImports) Format(s fmt.State, r rune) (*FileImports) Get(i int) protoreflect.FileImport (*FileImports) Len() int (*FileImports) ProtoInternal(pragma.DoNotImplement) *FileImports : google.golang.org/protobuf/internal/pragma.DoNotImplement *FileImports : google.golang.org/protobuf/reflect/protoreflect.FileImports *FileImports : fmt.Formatter
Imports FileImports Locations SourceLocations Options func() protoreflect.ProtoMessage
Base Base Base.L0 BaseL0 L1 MessageL1 // protected by fileDesc.once (*Message) Enums() protoreflect.EnumDescriptors (*Message) ExtensionRangeOptions(i int) protoreflect.ProtoMessage (*Message) ExtensionRanges() protoreflect.FieldRanges (*Message) Extensions() protoreflect.ExtensionDescriptors (*Message) Fields() protoreflect.FieldDescriptors (*Message) Format(s fmt.State, r rune) (*Message) FullName() protoreflect.FullName (*Message) Index() int (*Message) IsMapEntry() bool IsMessageSet is a pseudo-internal API for checking whether a message should serialize in the proto1 message format. WARNING: This method is exempt from the compatibility promise and may be removed in the future without warning. (*Message) IsPlaceholder() bool (*Message) Messages() protoreflect.MessageDescriptors (*Message) Name() protoreflect.Name (*Message) Oneofs() protoreflect.OneofDescriptors (*Message) Options() protoreflect.ProtoMessage (*Message) Parent() protoreflect.Descriptor (*Message) ParentFile() protoreflect.FileDescriptor (*Message) ProtoInternal(pragma.DoNotImplement) (*Message) ProtoType(protoreflect.MessageDescriptor) (*Message) RequiredNumbers() protoreflect.FieldNumbers (*Message) ReservedNames() protoreflect.Names (*Message) ReservedRanges() protoreflect.FieldRanges (*Message) Syntax() protoreflect.Syntax *Message : google.golang.org/protobuf/internal/pragma.DoNotImplement *Message : google.golang.org/protobuf/reflect/protoreflect.Descriptor *Message : google.golang.org/protobuf/reflect/protoreflect.MessageDescriptor *Message : fmt.Formatter
EditionFeatures EditionFeatures Enums Enums Extensions Extensions // promoted from google.protobuf.MessageOptions // promoted from google.protobuf.MessageOptions Messages Messages
// must be same length as ExtensionRanges ExtensionRanges FieldRanges Fields Fields Oneofs Oneofs Options func() protoreflect.ProtoMessage // must be consistent with Fields.Cardinality ReservedNames Names ReservedRanges FieldRanges
List []Message (*Messages) ByName(s protoreflect.Name) protoreflect.MessageDescriptor (*Messages) Format(s fmt.State, r rune) (*Messages) Get(i int) protoreflect.MessageDescriptor (*Messages) Len() int (*Messages) ProtoInternal(pragma.DoNotImplement) *Messages : google.golang.org/protobuf/internal/pragma.DoNotImplement *Messages : google.golang.org/protobuf/reflect/protoreflect.MessageDescriptors *Messages : fmt.Formatter
Base Base Base.L0 BaseL0 L1 MethodL1 (*Method) Format(s fmt.State, r rune) (*Method) FullName() protoreflect.FullName (*Method) Index() int (*Method) Input() protoreflect.MessageDescriptor (*Method) IsPlaceholder() bool (*Method) IsStreamingClient() bool (*Method) IsStreamingServer() bool (*Method) Name() protoreflect.Name (*Method) Options() protoreflect.ProtoMessage (*Method) Output() protoreflect.MessageDescriptor (*Method) Parent() protoreflect.Descriptor (*Method) ParentFile() protoreflect.FileDescriptor (*Method) ProtoInternal(pragma.DoNotImplement) (*Method) ProtoType(protoreflect.MethodDescriptor) (*Method) Syntax() protoreflect.Syntax *Method : google.golang.org/protobuf/internal/pragma.DoNotImplement *Method : google.golang.org/protobuf/reflect/protoreflect.Descriptor *Method : google.golang.org/protobuf/reflect/protoreflect.MethodDescriptor *Method : fmt.Formatter
List []Method (*Methods) ByName(s protoreflect.Name) protoreflect.MethodDescriptor (*Methods) Format(s fmt.State, r rune) (*Methods) Get(i int) protoreflect.MethodDescriptor (*Methods) Len() int (*Methods) ProtoInternal(pragma.DoNotImplement) *Methods : google.golang.org/protobuf/internal/pragma.DoNotImplement *Methods : google.golang.org/protobuf/reflect/protoreflect.MethodDescriptors *Methods : fmt.Formatter
List []protoreflect.Name CheckValid reports any errors with the set of names with an error message that completes the sentence: "ranges is invalid because it has ..." (*Names) Format(s fmt.State, r rune) (*Names) Get(i int) protoreflect.Name (*Names) Has(s protoreflect.Name) bool (*Names) Len() int (*Names) ProtoInternal(pragma.DoNotImplement) *Names : google.golang.org/protobuf/internal/pragma.DoNotImplement *Names : google.golang.org/protobuf/reflect/protoreflect.Names *Names : fmt.Formatter
Base Base Base.L0 BaseL0 L1 OneofL1 (*Oneof) Fields() protoreflect.FieldDescriptors (*Oneof) Format(s fmt.State, r rune) (*Oneof) FullName() protoreflect.FullName (*Oneof) Index() int (*Oneof) IsPlaceholder() bool (*Oneof) IsSynthetic() bool (*Oneof) Name() protoreflect.Name (*Oneof) Options() protoreflect.ProtoMessage (*Oneof) Parent() protoreflect.Descriptor (*Oneof) ParentFile() protoreflect.FileDescriptor (*Oneof) ProtoInternal(pragma.DoNotImplement) (*Oneof) ProtoType(protoreflect.OneofDescriptor) (*Oneof) Syntax() protoreflect.Syntax *Oneof : google.golang.org/protobuf/internal/pragma.DoNotImplement *Oneof : google.golang.org/protobuf/reflect/protoreflect.Descriptor *Oneof : google.golang.org/protobuf/reflect/protoreflect.OneofDescriptor *Oneof : fmt.Formatter
List []protoreflect.FieldDescriptor (*OneofFields) ByJSONName(s string) protoreflect.FieldDescriptor (*OneofFields) ByName(s protoreflect.Name) protoreflect.FieldDescriptor (*OneofFields) ByNumber(n protoreflect.FieldNumber) protoreflect.FieldDescriptor (*OneofFields) ByTextName(s string) protoreflect.FieldDescriptor (*OneofFields) Format(s fmt.State, r rune) (*OneofFields) Get(i int) protoreflect.FieldDescriptor (*OneofFields) Len() int (*OneofFields) ProtoInternal(pragma.DoNotImplement) *OneofFields : google.golang.org/protobuf/internal/pragma.DoNotImplement *OneofFields : google.golang.org/protobuf/reflect/protoreflect.ExtensionDescriptors *OneofFields : google.golang.org/protobuf/reflect/protoreflect.FieldDescriptors *OneofFields : fmt.Formatter
EditionFeatures EditionFeatures // must be consistent with Message.Fields.ContainingOneof Options func() protoreflect.ProtoMessage
List []Oneof (*Oneofs) ByName(s protoreflect.Name) protoreflect.OneofDescriptor (*Oneofs) Format(s fmt.State, r rune) (*Oneofs) Get(i int) protoreflect.OneofDescriptor (*Oneofs) Len() int (*Oneofs) ProtoInternal(pragma.DoNotImplement) *Oneofs : google.golang.org/protobuf/internal/pragma.DoNotImplement *Oneofs : google.golang.org/protobuf/reflect/protoreflect.OneofDescriptors *Oneofs : fmt.Formatter
Out is the output of the Builder. Enums is all enum descriptors in "flattened ordering". Extensions is all extension descriptors in "flattened ordering". File protoreflect.FileDescriptor Messages is all message descriptors in "flattened ordering". It includes the implicit message declarations for map entries. Service is all service descriptors in "flattened ordering". func Builder.Build() (out Out)
PlaceholderEnum is a placeholder, representing only the full name. ( PlaceholderEnum) FullName() protoreflect.FullName ( PlaceholderEnum) Index() int ( PlaceholderEnum) IsClosed() bool ( PlaceholderEnum) IsPlaceholder() bool ( PlaceholderEnum) Name() protoreflect.Name ( PlaceholderEnum) Options() protoreflect.ProtoMessage ( PlaceholderEnum) Parent() protoreflect.Descriptor ( PlaceholderEnum) ParentFile() protoreflect.FileDescriptor ( PlaceholderEnum) ProtoInternal(pragma.DoNotImplement) ( PlaceholderEnum) ProtoType(protoreflect.EnumDescriptor) ( PlaceholderEnum) ReservedNames() protoreflect.Names ( PlaceholderEnum) ReservedRanges() protoreflect.EnumRanges ( PlaceholderEnum) Syntax() protoreflect.Syntax ( PlaceholderEnum) Values() protoreflect.EnumValueDescriptors PlaceholderEnum : google.golang.org/protobuf/internal/pragma.DoNotImplement PlaceholderEnum : google.golang.org/protobuf/reflect/protoreflect.Descriptor PlaceholderEnum : google.golang.org/protobuf/reflect/protoreflect.EnumDescriptor
PlaceholderEnumValue is a placeholder, representing only the full name. ( PlaceholderEnumValue) FullName() protoreflect.FullName ( PlaceholderEnumValue) Index() int ( PlaceholderEnumValue) IsPlaceholder() bool ( PlaceholderEnumValue) Name() protoreflect.Name ( PlaceholderEnumValue) Number() protoreflect.EnumNumber ( PlaceholderEnumValue) Options() protoreflect.ProtoMessage ( PlaceholderEnumValue) Parent() protoreflect.Descriptor ( PlaceholderEnumValue) ParentFile() protoreflect.FileDescriptor ( PlaceholderEnumValue) ProtoInternal(pragma.DoNotImplement) ( PlaceholderEnumValue) ProtoType(protoreflect.EnumValueDescriptor) ( PlaceholderEnumValue) Syntax() protoreflect.Syntax PlaceholderEnumValue : google.golang.org/protobuf/internal/pragma.DoNotImplement PlaceholderEnumValue : google.golang.org/protobuf/reflect/protoreflect.Descriptor PlaceholderEnumValue : google.golang.org/protobuf/reflect/protoreflect.EnumValueDescriptor
PlaceholderFile is a placeholder, representing only the file path. ( PlaceholderFile) Enums() protoreflect.EnumDescriptors ( PlaceholderFile) Extensions() protoreflect.ExtensionDescriptors ( PlaceholderFile) FullName() protoreflect.FullName ( PlaceholderFile) Imports() protoreflect.FileImports ( PlaceholderFile) Index() int ( PlaceholderFile) IsPlaceholder() bool ( PlaceholderFile) Messages() protoreflect.MessageDescriptors ( PlaceholderFile) Name() protoreflect.Name ( PlaceholderFile) Options() protoreflect.ProtoMessage ( PlaceholderFile) Package() protoreflect.FullName ( PlaceholderFile) Parent() protoreflect.Descriptor ( PlaceholderFile) ParentFile() protoreflect.FileDescriptor ( PlaceholderFile) Path() string ( PlaceholderFile) ProtoInternal(pragma.DoNotImplement) ( PlaceholderFile) ProtoType(protoreflect.FileDescriptor) ( PlaceholderFile) Services() protoreflect.ServiceDescriptors ( PlaceholderFile) SourceLocations() protoreflect.SourceLocations ( PlaceholderFile) Syntax() protoreflect.Syntax PlaceholderFile : google.golang.org/protobuf/internal/pragma.DoNotImplement PlaceholderFile : google.golang.org/protobuf/reflect/protoreflect.Descriptor PlaceholderFile : google.golang.org/protobuf/reflect/protoreflect.FileDescriptor
PlaceholderMessage is a placeholder, representing only the full name. ( PlaceholderMessage) Enums() protoreflect.EnumDescriptors ( PlaceholderMessage) ExtensionRangeOptions(int) protoreflect.ProtoMessage ( PlaceholderMessage) ExtensionRanges() protoreflect.FieldRanges ( PlaceholderMessage) Extensions() protoreflect.ExtensionDescriptors ( PlaceholderMessage) Fields() protoreflect.FieldDescriptors ( PlaceholderMessage) FullName() protoreflect.FullName ( PlaceholderMessage) Index() int ( PlaceholderMessage) IsMapEntry() bool ( PlaceholderMessage) IsPlaceholder() bool ( PlaceholderMessage) Messages() protoreflect.MessageDescriptors ( PlaceholderMessage) Name() protoreflect.Name ( PlaceholderMessage) Oneofs() protoreflect.OneofDescriptors ( PlaceholderMessage) Options() protoreflect.ProtoMessage ( PlaceholderMessage) Parent() protoreflect.Descriptor ( PlaceholderMessage) ParentFile() protoreflect.FileDescriptor ( PlaceholderMessage) ProtoInternal(pragma.DoNotImplement) ( PlaceholderMessage) ProtoType(protoreflect.MessageDescriptor) ( PlaceholderMessage) RequiredNumbers() protoreflect.FieldNumbers ( PlaceholderMessage) ReservedNames() protoreflect.Names ( PlaceholderMessage) ReservedRanges() protoreflect.FieldRanges ( PlaceholderMessage) Syntax() protoreflect.Syntax PlaceholderMessage : google.golang.org/protobuf/internal/pragma.DoNotImplement PlaceholderMessage : google.golang.org/protobuf/reflect/protoreflect.Descriptor PlaceholderMessage : google.golang.org/protobuf/reflect/protoreflect.MessageDescriptor
Base Base Base.L0 BaseL0 L1 ServiceL1 // protected by fileDesc.once (*Service) Format(s fmt.State, r rune) (*Service) FullName() protoreflect.FullName (*Service) Index() int (*Service) IsPlaceholder() bool (*Service) Methods() protoreflect.MethodDescriptors (*Service) Name() protoreflect.Name (*Service) Options() protoreflect.ProtoMessage (*Service) Parent() protoreflect.Descriptor (*Service) ParentFile() protoreflect.FileDescriptor (*Service) ProtoInternal(pragma.DoNotImplement) (*Service) ProtoType(protoreflect.ServiceDescriptor) (*Service) Syntax() protoreflect.Syntax *Service : google.golang.org/protobuf/internal/pragma.DoNotImplement *Service : google.golang.org/protobuf/reflect/protoreflect.Descriptor *Service : google.golang.org/protobuf/reflect/protoreflect.ServiceDescriptor *Service : fmt.Formatter
type ServiceL1 (struct)
Methods Methods Options func() protoreflect.ProtoMessage
List []Service (*Services) ByName(s protoreflect.Name) protoreflect.ServiceDescriptor (*Services) Format(s fmt.State, r rune) (*Services) Get(i int) protoreflect.ServiceDescriptor (*Services) Len() int (*Services) ProtoInternal(pragma.DoNotImplement) *Services : google.golang.org/protobuf/internal/pragma.DoNotImplement *Services : google.golang.org/protobuf/reflect/protoreflect.ServiceDescriptors *Services : fmt.Formatter
File is the parent file descriptor that these locations are relative to. If non-nil, ByDescriptor verifies that the provided descriptor is a child of this file descriptor. List is a list of SourceLocations. The SourceLocation.Next field does not need to be populated as it will be lazily populated upon first need. (*SourceLocations) ByDescriptor(desc protoreflect.Descriptor) protoreflect.SourceLocation (*SourceLocations) ByPath(path protoreflect.SourcePath) protoreflect.SourceLocation (*SourceLocations) Get(i int) protoreflect.SourceLocation (*SourceLocations) Len() int (*SourceLocations) ProtoInternal(pragma.DoNotImplement) *SourceLocations : google.golang.org/protobuf/internal/pragma.DoNotImplement *SourceLocations : google.golang.org/protobuf/reflect/protoreflect.SourceLocations
Package-Level Functions (total 21, in which 1 is exported)
Package-Level Variables (total 19, in which 3 are exported)
Surrogate files are can be used to create standalone descriptors where the syntax is only information derived from the parent file.
Surrogate files are can be used to create standalone descriptors where the syntax is only information derived from the parent file.
Surrogate files are can be used to create standalone descriptors where the syntax is only information derived from the parent file.
Package-Level Constants (total 11, in which 6 are exported)
These values align with the value of Enum in descriptor.proto which allows direct conversion between the proto enum and this enum.
These values align with the value of Enum in descriptor.proto which allows direct conversion between the proto enum and this enum.
These values align with the value of Enum in descriptor.proto which allows direct conversion between the proto enum and this enum.
These values align with the value of Enum in descriptor.proto which allows direct conversion between the proto enum and this enum.
These values align with the value of Enum in descriptor.proto which allows direct conversion between the proto enum and this enum.
These values align with the value of Enum in descriptor.proto which allows direct conversion between the proto enum and this enum.