ToShortTypeName() private static method

private static ToShortTypeName ( Type t ) : string
t System.Type
return string
Esempio n. 1
0
 public static string ToString(Type t)
 {
     SerializedType.SerializedTypeData data = default(SerializedType.SerializedTypeData);
     if (t == null)
     {
         return(string.Empty);
     }
     data.typeName  = string.Empty;
     data.isGeneric = t.ContainsGenericParameters;
     if (data.isGeneric && t.IsGenericType)
     {
         data.typeName = SerializedType.ToShortTypeName(t.GetGenericTypeDefinition());
     }
     else if (data.isGeneric && t.IsArray)
     {
         data.typeName = "T[]";
     }
     else if (data.isGeneric)
     {
         data.typeName = "T";
     }
     else
     {
         data.typeName = SerializedType.ToShortTypeName(t);
     }
     return(SerializedType.ToString(data));
 }
Esempio n. 2
0
        public static string SetGenericArgumentType(string serializedTypeString, Type type)
        {
            if (SerializedType.IsGeneric(serializedTypeString))
            {
                SerializedType.SerializedTypeData data = SerializedType.SplitTypeString(serializedTypeString);
                data.genericTypeName = data.typeName;
                data.isGeneric       = false;
                string typeName = data.typeName;
                if (typeName != null)
                {
                    if (SerializedType.< > f__switch$map1 == null)
                    {
                        SerializedType.< > f__switch$map1 = new Dictionary <string, int>(2)
                        {
                            {
                                "T",
                                0
                            },
                            {
                                "T[]",
                                1
                            }
                        };
                    }
                    int num;
                    if (SerializedType.< > f__switch$map1.TryGetValue(typeName, out num))
                    {
                        if (num == 0)
                        {
                            data.typeName = SerializedType.ToShortTypeName(type);
                            goto IL_105;
                        }
                        if (num == 1)
                        {
                            data.typeName = SerializedType.ToShortTypeName(type.MakeArrayType());
                            goto IL_105;
                        }
                    }
                }
                data.typeName = SerializedType.ToShortTypeName(Type.GetType(data.typeName, true).GetGenericTypeDefinition().MakeGenericType(new Type[]
                {
                    type
                }));
IL_105:
                return(SerializedType.ToString(data));
            }
            if (SerializedType.IsBaseTypeGeneric(serializedTypeString))
            {
                throw new ArgumentException("Trying to set a different generic type. Reset old one first.");
            }
            throw new ArgumentException("Trying to set generic argument type for non generic type.");
        }