Share via


CorGenericParamAttr Enumeration

Contains values that describe the Type parameters for generic types, as used in calls to IMetaDataEmit2::DefineGenericParam.

typedef enum CorGenericParamAttr {
    
    gpVarianceMask                     =   0x0003,
    gpNonVariant                       =   0x0000, 
    gpCovariant                        =   0x0001,
    gpContravariant                    =   0x0002,
    
    gpSpecialConstraintMask            =   0x001C,
    gpNoSpecialConstraint              =   0x0000,
    gpReferenceTypeConstraint          =   0x0004, 
    gpNotNullableValueTypeConstraint   =   0x0008,
    gpDefaultConstructorConstraint     =   0x0010
    
} CorGenericParamAttr;

Members

Member

Description

gpVarianceMask

Parameter variance applies only to generic parameters for interfaces and delegates.

gpNonVariant

Indicates the absence of variance.

gpCovariant

Indicates covariance.

gpContravariant

Indicates contravariance.

gpSpecialConstraintMask

Special constraints can apply to any Type parameter.

gpNoSpecialConstraint

Indicates that no constraint applies to the Type parameter.

gpReferenceTypeConstraint

Indicates that the Type parameter must be a reference type.

gpNotNullableValueTypeConstraint

Indicates that the Type parameter must be a value type that cannot be a null value.

gpDefaultConstructorConstraint

Indicates that the Type parameter must have a default public constructor that takes no parameters.

Requirements

Platforms: See .NET Framework System Requirements.

Header: CorHdr.h

.NET Framework Versions: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0

See Also

Other Resources

Metadata Enumerations