summaryrefslogtreecommitdiff
path: root/Runtime/Export/Serialization/PPtrRemapper.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Runtime/Export/Serialization/PPtrRemapper.txt')
-rw-r--r--Runtime/Export/Serialization/PPtrRemapper.txt53
1 files changed, 53 insertions, 0 deletions
diff --git a/Runtime/Export/Serialization/PPtrRemapper.txt b/Runtime/Export/Serialization/PPtrRemapper.txt
new file mode 100644
index 0000000..e1fd2a7
--- /dev/null
+++ b/Runtime/Export/Serialization/PPtrRemapper.txt
@@ -0,0 +1,53 @@
+C++RAW
+#include "UnityPrefix.h"
+#include "Configuration/UnityConfigure.h"
+#include "Runtime/Mono/MonoBehaviour.h"
+#if ENABLE_SERIALIZATION_BY_CODEGENERATION
+#include "Runtime/Mono/MonoBehaviourSerialization_ByCodeGeneration.h"
+#endif
+
+CSRAW
+using System;
+using System.Collections.Generic;
+using UnityEngine;
+using Object=UnityEngine.Object;
+
+namespace UnityEngine.Serialization
+{
+
+CONDITIONAL ENABLE_SERIALIZATION_BY_CODEGENERATION
+CLASS public PPtrRemapper : IPPtrRemapper
+
+ CSRAW public static IPPtrRemapper Instance = null;
+
+ CSRAW public static void Init()
+ {
+ if(Instance == null)
+ Instance = new PPtrRemapper();
+ }
+ CSRAW public static void SetInstance(IPPtrRemapper remapper)
+ {
+ Instance = remapper;
+ }
+ CSRAW public object GetNewInstanceToReplaceOldInstance(object value)
+ {
+ return INTERNAL_GetNewInstanceToReplaceOldInstance(((UnityEngine.Object)value).GetInstanceID());
+ }
+
+ THREAD_SAFE
+ CUSTOM private static object INTERNAL_GetNewInstanceToReplaceOldInstance(int instance_id)
+ {
+ return NativeExt_MonoBehaviourSerialization_GetNewInstanceToReplaceOldInstance(instance_id);
+ }
+
+END
+
+CONDITIONAL !ENABLE_SERIALIZATION_BY_CODEGENERATION && UNITY_METRO
+CLASS public PPtrRemapper
+ CSRAW public static void SetInstance(IPPtrRemapper reader)
+ {
+ }
+END
+
+CSRAW
+}