private static System.Reflection.GenericParameterAttributes GetGenericParameterAttributes(GenericParameter definiton)
        {
            System.Reflection.GenericParameterAttributes attributes = System.Reflection.GenericParameterAttributes.None;

            if (definiton.HasDefaultConstructorConstraint)
            {
                attributes |= System.Reflection.GenericParameterAttributes.DefaultConstructorConstraint;
            }

            if (definiton.HasReferenceTypeConstraint)
            {
                attributes |= System.Reflection.GenericParameterAttributes.ReferenceTypeConstraint;
            }

            if (definiton.IsCovariant)
            {
                attributes |= System.Reflection.GenericParameterAttributes.Covariant;
            }

            if (definiton.IsContravariant)
            {
                attributes |= System.Reflection.GenericParameterAttributes.Contravariant;
            }

            if (definiton.HasNotNullableValueTypeConstraint)
            {
                attributes |= System.Reflection.GenericParameterAttributes.NotNullableValueTypeConstraint;
            }
            return(attributes);
        }
예제 #2
0
 internal GenericTypeParameterData(string name, Accessibility accessibility, MemberFlags memberFlags, TypeKind typeKind, AssemblyData assembly, System.Reflection.GenericParameterAttributes genericParameterAttributes, int genericParameterPosition)
     : base(name, accessibility, memberFlags, typeKind)
 {
     AssemblyData = assembly;
     GenericParameterAttributes = genericParameterAttributes;
     GenericParameterPosition   = genericParameterPosition;
 }
예제 #3
0
 public void SetGenericParameterAttributes(System.Reflection.GenericParameterAttributes genericParameterAttributes)
 {
 }
 internal GenericTypeParameterData(string name, MemberAccessibility accessibility, MemberFlags memberFlags, TypeKind typeKind, AssemblyData assembly, System.Reflection.GenericParameterAttributes genericParameterAttributes, int genericParameterPosition)
     : base(name, accessibility, memberFlags, typeKind)
 {
     _assembly        = assembly;
     this.Constraints = new List <TypeData>();
     this.GenericParameterAttributes = genericParameterAttributes;
     this.GenericParameterPosition   = genericParameterPosition;
 }