Class GeneratedClrTypeInfo (3.23.0)

public sealed class GeneratedClrTypeInfo

Extra information provided by generated code when initializing a message or file descriptor. These are constructed as required, and are not long-lived. Hand-written code should never need to use this type.

Inheritance

object > GeneratedClrTypeInfo

Namespace

Google.Protobuf.Reflection

Assembly

Google.Protobuf.dll

Constructors

GeneratedClrTypeInfo(Type, MessageParser, string[], string[], Type[], Extension[], GeneratedClrTypeInfo[])

public GeneratedClrTypeInfo(Type clrType, MessageParser parser, string[] propertyNames, string[] oneofNames, Type[] nestedEnums, Extension[] extensions, GeneratedClrTypeInfo[] nestedTypes)

Creates a GeneratedClrTypeInfo for a message descriptor, with nested types, nested enums, the CLR type, property names and oneof names. Each array parameter may be null, to indicate a lack of values. The parameter order is designed to make it feasible to format the generated code readably.

Parameters
Name Description
clrType Type
parser MessageParser
propertyNames string
oneofNames string
nestedEnums Type
extensions Extension
nestedTypes GeneratedClrTypeInfo

GeneratedClrTypeInfo(Type, MessageParser, string[], string[], Type[], GeneratedClrTypeInfo[])

public GeneratedClrTypeInfo(Type clrType, MessageParser parser, string[] propertyNames, string[] oneofNames, Type[] nestedEnums, GeneratedClrTypeInfo[] nestedTypes)

Creates a GeneratedClrTypeInfo for a message descriptor, with nested types, nested enums, the CLR type, property names and oneof names. Each array parameter may be null, to indicate a lack of values. The parameter order is designed to make it feasible to format the generated code readably.

Parameters
Name Description
clrType Type
parser MessageParser
propertyNames string
oneofNames string
nestedEnums Type
nestedTypes GeneratedClrTypeInfo

GeneratedClrTypeInfo(Type[], Extension[], GeneratedClrTypeInfo[])

public GeneratedClrTypeInfo(Type[] nestedEnums, Extension[] extensions, GeneratedClrTypeInfo[] nestedTypes)

Creates a GeneratedClrTypeInfo for a file descriptor, with only types, enums, and extensions.

Parameters
Name Description
nestedEnums Type
extensions Extension
nestedTypes GeneratedClrTypeInfo

GeneratedClrTypeInfo(Type[], GeneratedClrTypeInfo[])

public GeneratedClrTypeInfo(Type[] nestedEnums, GeneratedClrTypeInfo[] nestedTypes)

Creates a GeneratedClrTypeInfo for a file descriptor, with only types and enums.

Parameters
Name Description
nestedEnums Type
nestedTypes GeneratedClrTypeInfo

Properties

ClrType

public Type ClrType { get; }

Irrelevant for file descriptors; the CLR type for the message for message descriptors.

Property Value
Type Description
Type

Extensions

public Extension[] Extensions { get; }

The extensions defined within this file/message descriptor

Property Value
Type Description
Extension

NestedEnums

public Type[] NestedEnums { get; }

The CLR types for enums within this file/message descriptor.

Property Value
Type Description
Type

NestedTypes

public GeneratedClrTypeInfo[] NestedTypes { get; }

The reflection information for types within this file/message descriptor. Elements may be null if there is no corresponding generated type, e.g. for map entry types.

Property Value
Type Description
GeneratedClrTypeInfo

OneofNames

public string[] OneofNames { get; }

Irrelevant for file descriptors; the CLR property "base" names (in message descriptor oneof order) for oneofs in the message for message descriptors. It is expected that for a oneof name of "Foo", there will be a "FooCase" property and a "ClearFoo" method.

Property Value
Type Description
string

Parser

public MessageParser Parser { get; }

Irrelevant for file descriptors; the parser for message descriptors.

Property Value
Type Description
MessageParser

PropertyNames

public string[] PropertyNames { get; }

Irrelevant for file descriptors; the CLR property names (in message descriptor field order) for fields in the message for message descriptors.

Property Value
Type Description
string