private void DefineGenericParameters(MetadataToken ownerToken, IHasGenericParameters provider)
 {
     foreach (var parameter in provider.GenericParameters)
     {
         DefineGenericParameter(ownerToken, parameter);
     }
 }
Exemplo n.º 2
0
 private void DefineGenericParameters(MetadataToken ownerToken, IHasGenericParameters provider)
 {
     for (int i = 0; i < provider.GenericParameters.Count; i++)
     {
         DefineGenericParameter(ownerToken, provider.GenericParameters[i]);
     }
 }
 public static IEnumerable <GenericParameter> GetLocalTypeParameters(this IHasGenericParameters me)
 {
     for (int i = 0; i < me.GenericParameters.Count; i++)
     {
         yield return(new GenericParameter()
         {
             DeclaringEntity = me,
             Index = i
         });
     }
 }
Exemplo n.º 4
0
        public void InheritFreeParameters(IHasGenericParameters declaringType)
        {
            while (declaringType != null)
            {
                foreach (var p in declaringType.GetLocalTypeParameters())
                {
                    if (!_parameterBindings.ContainsKey(p))
                    {
                        _parameterBindings[p] = Types.FromParameter(p);
                    }
                }

                declaringType = (declaringType as TypeDefinition)?.DeclaringElement as IHasGenericParameters;
            }
        }
 public static (IReadOnlyCollection <TypeParameterConstraintClauseSyntax> TypeParameterConstraintClauses, IReadOnlyCollection <TypeParameterSyntax> TypeParameters) GetTypeParameters(this IHasGenericParameters genericParameterContainer, ISet <string> excludeMembersAttributes, ISet <string> excludeAttributes, Nullability nullableContext)
 {
     if (genericParameterContainer.GenericParameters.Count == 0)
     {
         return(default);