Class TypeRegistry (3.23.0)

public sealed class TypeRegistry

An immutable registry of types which can be looked up by their full name.

Inheritance

object > TypeRegistry

Namespace

Google.Protobuf.Reflection

Assembly

Google.Protobuf.dll

Properties

Empty

public static TypeRegistry Empty { get; }

An empty type registry, containing no types.

Property Value
Type Description
TypeRegistry

Methods

Find(string)

public MessageDescriptor Find(string fullName)

Attempts to find a message descriptor by its full name.

Parameter
Name Description
fullName string

The full name of the message, which is the dot-separated combination of package, containing messages and message name

Returns
Type Description
MessageDescriptor

The message descriptor corresponding to fullName or null if there is no such message descriptor.

FromFiles(params FileDescriptor[])

public static TypeRegistry FromFiles(params FileDescriptor[] fileDescriptors)

Creates a type registry from the specified set of file descriptors.

Parameter
Name Description
fileDescriptors FileDescriptor

The set of files to include in the registry. Must not contain null values.

Returns
Type Description
TypeRegistry

A type registry for the given files.

Remarks

This is a convenience overload for FromFiles(IEnumerable<FileDescriptor>) to allow calls such as TypeRegistry.FromFiles(descriptor1, descriptor2).

FromFiles(IEnumerable<FileDescriptor>)

public static TypeRegistry FromFiles(IEnumerable<FileDescriptor> fileDescriptors)

Creates a type registry from the specified set of file descriptors.

Parameter
Name Description
fileDescriptors IEnumerableFileDescriptor

The set of files to include in the registry. Must not contain null values.

Returns
Type Description
TypeRegistry

A type registry for the given files.

Remarks

All message types within all the specified files are added to the registry, and the dependencies of the specified files are also added, recursively.

FromMessages(params MessageDescriptor[])

public static TypeRegistry FromMessages(params MessageDescriptor[] messageDescriptors)

Creates a type registry from the file descriptor parents of the specified set of message descriptors.

Parameter
Name Description
messageDescriptors MessageDescriptor

The set of message descriptors to use to identify file descriptors to include in the registry. Must not contain null values.

Returns
Type Description
TypeRegistry

A type registry for the given files.

Remarks

This is a convenience overload for FromMessages(IEnumerable<MessageDescriptor>) to allow calls such as TypeRegistry.FromFiles(descriptor1, descriptor2).

FromMessages(IEnumerable<MessageDescriptor>)

public static TypeRegistry FromMessages(IEnumerable<MessageDescriptor> messageDescriptors)

Creates a type registry from the file descriptor parents of the specified set of message descriptors.

Parameter
Name Description
messageDescriptors IEnumerableMessageDescriptor

The set of message descriptors to use to identify file descriptors to include in the registry. Must not contain null values.

Returns
Type Description
TypeRegistry

A type registry for the given files.

Remarks

The specified message descriptors are only used to identify their file descriptors; the returned registry contains all the types within the file descriptors which contain the specified message descriptors (and the dependencies of those files), not just the specified messages.