Beispiel #1
0
 public static string ObjectToString(object obj)
 {
     if (obj == null)
     {
         return("null");
     }
     if (Helper.IsPrimitive(obj.GetType()))
     {
         return(PrimitiveToString(obj));
     }
     if (obj is IList)
     {
         return(ListToString(obj));
     }
     if (obj.GetType().IsArray)
     {
         return(ListToString(obj));
     }
     if (obj.GetType().IsEnum)
     {
         return(obj.ToString());
     }
     if (obj.GetType().IsClass)
     {
         return(ClassObjectToString(obj));
     }
     if (obj.GetType().IsValueType&& !obj.GetType().IsEnum)
     {
         return(ClassObjectToString(obj));
     }
     return("");
 }
Beispiel #2
0
 private static object ParsedToObject(object parsed, Type objtype)
 {
     if (Helper.IsPrimitive(objtype))
     {
         return(PrimitiveToObject(parsed, objtype));
     }
     if (parsed.GetType() == typeof(Dictionary <string, object>))
     {
         return(DictionaryToObject(parsed, objtype));
     }
     if (parsed.GetType() == typeof(List <object>))
     {
         if (objtype.IsArray)
         {
             return(ArrayToObject(parsed, objtype));
         }
         else
         {
             return(ListToObject(parsed, objtype));
         }
     }
     if (objtype.IsEnum && parsed.GetType() == typeof(string))
     {
         if (Enum.IsDefined(objtype, (string)parsed))
         {
             return(Enum.Parse(objtype, (string)parsed));
         }
         Debug.LogWarning("The specified enum for " + objtype.Name + " does not exist. Existing Values are: " + Helper.ArrayToString(Enum.GetValues(objtype)));
         return(Enum.GetValues(objtype).GetValue(0));
     }
     return(null);
 }
Beispiel #3
0
 public static string ObjectToString(object obj)
 {
     if (obj == null)
     {
         return("null");
     }
     if (Helper.IsPrimitive(obj.GetType()))
     {
         return(SerializePrimitive(obj));
     }
     if (obj is IList)
     {
         return(SerializeList(obj));
     }
     if (obj.GetType().IsGenericType&& obj.GetType().GetGenericTypeDefinition() == typeof(Dictionary <,>))
     {
         return(SerializeDictionary(obj));
     }
     if (obj.GetType().IsArray)
     {
         return(SerializeList(obj));
     }
     if (obj.GetType().IsEnum)
     {
         return(obj.ToString());
     }
     if (obj.GetType().IsClass)
     {
         return(SerializeClass(obj));
     }
     if (obj.GetType().IsValueType&& !obj.GetType().IsEnum)
     {
         return(SerializeClass(obj));
     }
     return("");
 }
Beispiel #4
0
 private static object ParsedToObject(object parsed, Type objtype)
 {
     if (parsed == null)
     {
         return(null);
     }
     if (Helper.IsPrimitive(objtype))
     {
         return(ConvertToPrimitive(parsed, objtype));
     }
     if (objtype.IsGenericType && objtype.GetInterfaces().Contains(typeof(IList)))
     {
         return(ConvertToList(parsed, objtype));
     }
     if (objtype.IsGenericType && objtype.GetGenericTypeDefinition() == typeof(Dictionary <,>))
     {
         return(ConvertToDictionary(parsed, objtype));
     }
     if (objtype.IsArray)
     {
         return(ConvertToArray(parsed, objtype));
     }
     if (objtype.IsEnum)
     {
         return(ConvertToEnum(parsed, objtype));
     }
     if (objtype.IsClass)
     {
         return(ConvertToObject(parsed, objtype));
     }
     if (objtype.IsValueType && !objtype.IsEnum)
     {
         return(ConvertToObject(parsed, objtype));
     }
     return(null);
 }