private static bool IsValueTypeSerializable(TypeReference typeReference) { if (typeReference.IsPrimitive) { return(IsSerializablePrimitive(typeReference)); } return(UnityEngineTypePredicates.IsSerializableUnityStruct(typeReference) || typeReference.IsEnum() || ShouldImplementIDeserializable(typeReference)); }
private static bool IsTypeSerializable(TypeReference typeReference) { if (typeReference.IsAssignableTo("UnityScript.Lang.Array")) { return(false); } if (IsGenericDictionary(typeReference)) { return(false); } return(IsSerializablePrimitive(typeReference) || typeReference.IsEnum() || IsUnityEngineObject(typeReference) || UnityEngineTypePredicates.IsSerializableUnityStruct(typeReference) || ShouldImplementIDeserializable(typeReference)); }