Browse Source

Refactor: Removed unnecessary SerializedObject.Create overloads

BearishSun 6 years ago
parent
commit
d76cdb7bdd

+ 2 - 36
Source/EditorManaged/Utility/SerializedObject.cs

@@ -23,34 +23,6 @@ namespace bs.Editor
         private SerializedObject()
         private SerializedObject()
         { }
         { }
 
 
-        /// <summary>
-        /// Serializes all data within the provided component.
-        /// </summary>
-        /// <param name="obj">Component to serialize.</param>
-        /// <returns>Object containing serialized data.</returns>
-        public static SerializedObject Create(Component obj)
-        {
-            if (obj == null)
-                return null;
-
-            IntPtr componentPtr = obj.GetCachedPtr();
-            return Internal_CreateComponent(componentPtr);
-        }
-
-        /// <summary>
-        /// Serializes all data within the provided resources.
-        /// </summary>
-        /// <param name="obj">Resource to serialize.</param>
-        /// <returns>Object containing serialized data.</returns>
-        public static SerializedObject Create(ManagedResource obj)
-        {
-            if (obj == null)
-                return null;
-
-            IntPtr resourcePtr = obj.GetCachedPtr();
-            return Internal_CreateResource(resourcePtr);
-        }
-
         /// <summary>
         /// <summary>
         /// Serializes all data within the provided object.
         /// Serializes all data within the provided object.
         /// </summary>
         /// </summary>
@@ -61,7 +33,7 @@ namespace bs.Editor
             if (obj == null)
             if (obj == null)
                 return null;
                 return null;
 
 
-            return Internal_CreateGeneric(obj);
+            return Internal_Create(obj);
         }
         }
 
 
         /// <summary>
         /// <summary>
@@ -75,13 +47,7 @@ namespace bs.Editor
         }
         }
 
 
         [MethodImpl(MethodImplOptions.InternalCall)]
         [MethodImpl(MethodImplOptions.InternalCall)]
-        private static extern SerializedObject Internal_CreateComponent(IntPtr componentPtr);
-
-        [MethodImpl(MethodImplOptions.InternalCall)]
-        private static extern SerializedObject Internal_CreateResource(IntPtr resourcePtr);
-
-        [MethodImpl(MethodImplOptions.InternalCall)]
-        private static extern SerializedObject Internal_CreateGeneric(object obj);
+        private static extern SerializedObject Internal_Create(object obj);
 
 
         [MethodImpl(MethodImplOptions.InternalCall)]
         [MethodImpl(MethodImplOptions.InternalCall)]
         private static extern object Internal_Deserialize(IntPtr instance);
         private static extern object Internal_Deserialize(IntPtr instance);

+ 2 - 52
Source/EditorScript/Wrappers/BsScriptSerializedObject.cpp

@@ -23,61 +23,11 @@ namespace bs
 
 
 	void ScriptSerializedObject::initRuntimeData()
 	void ScriptSerializedObject::initRuntimeData()
 	{
 	{
-		metaData.scriptClass->addInternalCall("Internal_CreateComponent", (void*)&ScriptSerializedObject::internal_CreateComponent);
-		metaData.scriptClass->addInternalCall("Internal_CreateResource", (void*)&ScriptSerializedObject::internal_CreateResource);
-		metaData.scriptClass->addInternalCall("Internal_CreateGeneric", (void*)&ScriptSerializedObject::internal_CreateGeneric);
+		metaData.scriptClass->addInternalCall("Internal_Create", (void*)&ScriptSerializedObject::internal_Create);
 		metaData.scriptClass->addInternalCall("Internal_Deserialize", (void*)&ScriptSerializedObject::internal_Deserialize);
 		metaData.scriptClass->addInternalCall("Internal_Deserialize", (void*)&ScriptSerializedObject::internal_Deserialize);
 	}
 	}
 
 
-	MonoObject* ScriptSerializedObject::internal_CreateComponent(ScriptComponentBase* componentPtr)
-	{
-		HComponent component = componentPtr->getComponent();
-		if (component.isDestroyed())
-			return nullptr;
-
-		SPtr<IReflectable> serializedObject;
-		if (rtti_is_of_type<ManagedComponent>(component.get()))
-		{
-			ManagedComponent* managedComponent = static_cast<ManagedComponent*>(component.get());
-			MonoObject* managedInstance = managedComponent->getManagedInstance();
-
-			SPtr<ManagedSerializableObject> managedSerializedObject = ManagedSerializableObject::createFromExisting(managedInstance);
-			if (managedSerializedObject == nullptr)
-				return nullptr;
-
-			managedSerializedObject->serialize();
-			serializedObject = managedSerializedObject;
-		}
-		else
-			serializedObject = SerializedObject::create(*component.get());
-
-
-		MonoObject* instance = metaData.scriptClass->createInstance();
-		new (bs_alloc<ScriptSerializedObject>()) ScriptSerializedObject(instance, serializedObject);
-
-		return instance;
-	}
-
-	MonoObject* ScriptSerializedObject::internal_CreateResource(ScriptManagedResource* resourcePtr)
-	{
-		HManagedResource resource = resourcePtr->getHandle();
-		if (!resource.isLoaded())
-			return nullptr;
-
-		MonoObject* managedInstance = resource->getManagedInstance();
-		SPtr<ManagedSerializableObject> serializedObject = ManagedSerializableObject::createFromExisting(managedInstance);
-		if (serializedObject == nullptr)
-			return nullptr;
-
-		serializedObject->serialize();
-
-		MonoObject* instance = metaData.scriptClass->createInstance();
-		new (bs_alloc<ScriptSerializedObject>()) ScriptSerializedObject(instance, serializedObject);
-
-		return instance;
-	}
-
-	MonoObject* ScriptSerializedObject::internal_CreateGeneric(MonoObject* obj)
+	MonoObject* ScriptSerializedObject::internal_Create(MonoObject* obj)
 	{
 	{
 		if (obj == nullptr)
 		if (obj == nullptr)
 			return nullptr;
 			return nullptr;

+ 1 - 3
Source/EditorScript/Wrappers/BsScriptSerializedObject.h

@@ -28,9 +28,7 @@ namespace bs
 		/************************************************************************/
 		/************************************************************************/
 		/* 								CLR HOOKS						   		*/
 		/* 								CLR HOOKS						   		*/
 		/************************************************************************/
 		/************************************************************************/
-		static MonoObject* internal_CreateComponent(ScriptComponentBase* componentPtr);
-		static MonoObject* internal_CreateResource(ScriptManagedResource* resourcePtr);
-		static MonoObject* internal_CreateGeneric(MonoObject* obj);
+		static MonoObject* internal_Create(MonoObject* obj);
 		static MonoObject* internal_Deserialize(ScriptSerializedObject* thisPtr);
 		static MonoObject* internal_Deserialize(ScriptSerializedObject* thisPtr);
 	};
 	};