コード例 #1
0
 internal void FinalizeGenerics(GenericParameterName[] names)
 {
     if (names == null)
     {
         _genericParameters = new GenericParameterNameCollection(Array.Empty <GenericParameterName>());
     }
     else
     {
         _genericParameters = new GenericParameterNameCollection(names);
     }
 }
コード例 #2
0
        private void SetGenericParameters(IEnumerable <GenericParameterName> names)
        {
            if (DeclaringType != null)
            {
                // Redirect as if they were declared here
                names = this.DeclaringType.GenericParameters.Select(
                    (t, i) => new RedirectedGenericParameterName(this, i, t))
                        .Concat(names);
            }

            _genericParameters = new GenericParameterNameCollection(names.ToArray());
        }
コード例 #3
0
        internal void FinalizeGenerics(GenericParameterName[] names, bool includesEnclosing = false)
        {
            if (names == null)
            {
                _genericParameters = new GenericParameterNameCollection(Array.Empty <GenericParameterName>());
            }
            else
            {
                _genericParameters = new GenericParameterNameCollection(names);
            }

            if (!includesEnclosing)
            {
                SetGenericParameters(names);
            }
        }
コード例 #4
0
        internal void FinalizeGenerics(int count)
        {
            GenericParameterName[] names = new GenericParameterName[count];
            if (count == 1)
            {
                names[0] = GenericParameterName.New(this, 0, "``0");
            }
            else
            {
                for (int i = 0; i < count; i++)
                {
                    names[i] = GenericParameterName.New(this, i, "``" + i);
                }
            }

            _genericParameters = new GenericParameterNameCollection(names);
        }