private string[] ParseNestedNames()
 {
     string[] strArrays = null;
     while (this.TryParse('+'))
     {
         TypeParser.Add <string>(ref strArrays, this.ParsePart());
     }
     return(strArrays);
 }
 private int[] ParseSpecs()
 {
     int[] numArray = null;
     while (this.position < this.length)
     {
         char chr = this.fullname[this.position];
         if (chr == '&')
         {
             this.position++;
             TypeParser.Add <int>(ref numArray, -2);
         }
         else if (chr == '*')
         {
             this.position++;
             TypeParser.Add <int>(ref numArray, -1);
         }
         else
         {
             if (chr != '[')
             {
                 return(numArray);
             }
             this.position++;
             chr = this.fullname[this.position];
             if (chr == '*')
             {
                 this.position++;
                 TypeParser.Add <int>(ref numArray, 1);
             }
             else if (chr != ']')
             {
                 int num = 1;
                 while (this.TryParse(','))
                 {
                     num++;
                 }
                 TypeParser.Add <int>(ref numArray, num);
                 this.TryParse(']');
             }
             else
             {
                 this.position++;
                 TypeParser.Add <int>(ref numArray, -3);
             }
         }
     }
     return(numArray);
 }
 private TypeParser.Type[] ParseGenericArguments(int arity)
 {
     TypeParser.Type[] typeArray = null;
     if (this.position == this.length || this.fullname[this.position] != '[')
     {
         return(typeArray);
     }
     this.TryParse('[');
     for (int i = 0; i < arity; i++)
     {
         bool flag = this.TryParse('[');
         TypeParser.Add <TypeParser.Type>(ref typeArray, this.ParseType(flag));
         if (flag)
         {
             this.TryParse(']');
         }
         this.TryParse(',');
         this.TryParseWhiteSpace();
     }
     this.TryParse(']');
     return(typeArray);
 }