Show / Hide Table of Contents

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
System.Object
GeneratedClrTypeInfo
Inherited Members
System.Object.ToString()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
Namespace: Google.Protobuf.Reflection
Assembly: Google.Protobuf.dll
Syntax
public sealed class GeneratedClrTypeInfo

Constructors

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

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.

Declaration
public GeneratedClrTypeInfo(Type clrType, MessageParser parser, string[] propertyNames, string[] oneofNames, Type[] nestedEnums, GeneratedClrTypeInfo[] nestedTypes)
Parameters
Type Name Description
System.Type clrType
MessageParser parser
System.String[] propertyNames
System.String[] oneofNames
System.Type[] nestedEnums
GeneratedClrTypeInfo[] nestedTypes

GeneratedClrTypeInfo(Type[], GeneratedClrTypeInfo[])

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

Declaration
public GeneratedClrTypeInfo(Type[] nestedEnums, GeneratedClrTypeInfo[] nestedTypes)
Parameters
Type Name Description
System.Type[] nestedEnums
GeneratedClrTypeInfo[] nestedTypes

Properties

ClrType

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

Declaration
public Type ClrType { get; }
Property Value
Type Description
System.Type

NestedEnums

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

Declaration
public Type[] NestedEnums { get; }
Property Value
Type Description
System.Type[]

NestedTypes

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.

Declaration
public GeneratedClrTypeInfo[] NestedTypes { get; }
Property Value
Type Description
GeneratedClrTypeInfo[]

OneofNames

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.

Declaration
public string[] OneofNames { get; }
Property Value
Type Description
System.String[]

Parser

Irrelevant for file descriptors; the parser for message descriptors.

Declaration
public MessageParser Parser { get; }
Property Value
Type Description
MessageParser

PropertyNames

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

Declaration
public string[] PropertyNames { get; }
Property Value
Type Description
System.String[]
Back to top