Files
27Aug2021-Cpp2IL-Dump/mscorlib/System/Reflection/GenericParameterAttributes.cs
T
niko c12fbe3fc6 m
2026-04-12 16:51:38 +02:00

46 lines
2.5 KiB
C#

using System;
using Cpp2IlInjected;
namespace System.Reflection
{
/// <summary>Describes the constraints on a generic type parameter of a generic type or method.</summary>
// Token: 0x02000222 RID: 546
[Token(Token = "0x2000222")]
[Flags]
public enum GenericParameterAttributes
{
/// <summary>There are no special flags.</summary>
// Token: 0x04000A66 RID: 2662
[Token(Token = "0x4000A66")]
None = 0,
/// <summary>Selects the combination of all variance flags. This value is the result of using logical OR to combine the following flags: <see cref="F:System.Reflection.GenericParameterAttributes.Contravariant" /> and <see cref="F:System.Reflection.GenericParameterAttributes.Covariant" />.</summary>
// Token: 0x04000A67 RID: 2663
[Token(Token = "0x4000A67")]
VarianceMask = 3,
/// <summary>The generic type parameter is covariant. A covariant type parameter can appear as the result type of a method, the type of a read-only field, a declared base type, or an implemented interface.</summary>
// Token: 0x04000A68 RID: 2664
[Token(Token = "0x4000A68")]
Covariant = 1,
/// <summary>The generic type parameter is contravariant. A contravariant type parameter can appear as a parameter type in method signatures.</summary>
// Token: 0x04000A69 RID: 2665
[Token(Token = "0x4000A69")]
Contravariant = 2,
/// <summary>Selects the combination of all special constraint flags. This value is the result of using logical OR to combine the following flags: <see cref="F:System.Reflection.GenericParameterAttributes.DefaultConstructorConstraint" />, <see cref="F:System.Reflection.GenericParameterAttributes.ReferenceTypeConstraint" />, and <see cref="F:System.Reflection.GenericParameterAttributes.NotNullableValueTypeConstraint" />.</summary>
// Token: 0x04000A6A RID: 2666
[Token(Token = "0x4000A6A")]
SpecialConstraintMask = 28,
/// <summary>A type can be substituted for the generic type parameter only if it is a reference type.</summary>
// Token: 0x04000A6B RID: 2667
[Token(Token = "0x4000A6B")]
ReferenceTypeConstraint = 4,
/// <summary>A type can be substituted for the generic type parameter only if it is a value type and is not nullable.</summary>
// Token: 0x04000A6C RID: 2668
[Token(Token = "0x4000A6C")]
NotNullableValueTypeConstraint = 8,
/// <summary>A type can be substituted for the generic type parameter only if it has a parameterless constructor.</summary>
// Token: 0x04000A6D RID: 2669
[Token(Token = "0x4000A6D")]
DefaultConstructorConstraint = 16
}
}