using System; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Security; using UnityEngine.Internal; using UnityEngine.Scripting; using UnityEngineInternal; namespace UnityEngine { // Token: 0x020000D9 RID: 217 [RequiredByNativeCode] [StructLayout(LayoutKind.Sequential)] public class Object { // Token: 0x06001008 RID: 4104 [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] private static extern Object Internal_CloneSingle(Object data); // Token: 0x06001009 RID: 4105 [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] private static extern Object Internal_CloneSingleWithParent(Object data, Transform parent, bool worldPositionStays); // Token: 0x0600100A RID: 4106 RVA: 0x000156C4 File Offset: 0x000138C4 private static Object Internal_InstantiateSingle(Object data, Vector3 pos, Quaternion rot) { return Object.INTERNAL_CALL_Internal_InstantiateSingle(data, ref pos, ref rot); } // Token: 0x0600100B RID: 4107 [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] private static extern Object INTERNAL_CALL_Internal_InstantiateSingle(Object data, ref Vector3 pos, ref Quaternion rot); // Token: 0x0600100C RID: 4108 RVA: 0x000156E4 File Offset: 0x000138E4 private static Object Internal_InstantiateSingleWithParent(Object data, Transform parent, Vector3 pos, Quaternion rot) { return Object.INTERNAL_CALL_Internal_InstantiateSingleWithParent(data, parent, ref pos, ref rot); } // Token: 0x0600100D RID: 4109 [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] private static extern Object INTERNAL_CALL_Internal_InstantiateSingleWithParent(Object data, Transform parent, ref Vector3 pos, ref Quaternion rot); // Token: 0x0600100E RID: 4110 [ThreadAndSerializationSafe] [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] private static extern int GetOffsetOfInstanceIDInCPlusPlusObject(); // Token: 0x0600100F RID: 4111 [ThreadAndSerializationSafe] [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] private extern void EnsureRunningOnMainThread(); // Token: 0x06001010 RID: 4112 [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] public static extern void Destroy(Object obj, [DefaultValue("0.0F")] float t); // Token: 0x06001011 RID: 4113 RVA: 0x00015704 File Offset: 0x00013904 [ExcludeFromDocs] public static void Destroy(Object obj) { float num = 0f; Object.Destroy(obj, num); } // Token: 0x06001012 RID: 4114 [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] public static extern void DestroyImmediate(Object obj, [DefaultValue("false")] bool allowDestroyingAssets); // Token: 0x06001013 RID: 4115 RVA: 0x00015720 File Offset: 0x00013920 [ExcludeFromDocs] public static void DestroyImmediate(Object obj) { bool flag = false; Object.DestroyImmediate(obj, flag); } // Token: 0x06001014 RID: 4116 [TypeInferenceRule(TypeInferenceRules.ArrayOfTypeReferencedByFirstArgument)] [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] public static extern Object[] FindObjectsOfType(Type type); // Token: 0x17000368 RID: 872 // (get) Token: 0x06001015 RID: 4117 // (set) Token: 0x06001016 RID: 4118 public extern string name { [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] get; [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] set; } // Token: 0x06001017 RID: 4119 [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] public static extern void DontDestroyOnLoad(Object target); // Token: 0x17000369 RID: 873 // (get) Token: 0x06001018 RID: 4120 // (set) Token: 0x06001019 RID: 4121 public extern HideFlags hideFlags { [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] get; [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] set; } // Token: 0x0600101A RID: 4122 [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] public static extern void DestroyObject(Object obj, [DefaultValue("0.0F")] float t); // Token: 0x0600101B RID: 4123 RVA: 0x00015738 File Offset: 0x00013938 [ExcludeFromDocs] public static void DestroyObject(Object obj) { float num = 0f; Object.DestroyObject(obj, num); } // Token: 0x0600101C RID: 4124 [Obsolete("use Object.FindObjectsOfType instead.")] [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] public static extern Object[] FindSceneObjectsOfType(Type type); // Token: 0x0600101D RID: 4125 [Obsolete("use Resources.FindObjectsOfTypeAll instead.")] [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] public static extern Object[] FindObjectsOfTypeIncludingAssets(Type type); // Token: 0x0600101E RID: 4126 RVA: 0x00015754 File Offset: 0x00013954 [Obsolete("Please use Resources.FindObjectsOfTypeAll instead")] public static Object[] FindObjectsOfTypeAll(Type type) { return Resources.FindObjectsOfTypeAll(type); } // Token: 0x0600101F RID: 4127 [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] public override extern string ToString(); // Token: 0x06001020 RID: 4128 [ThreadAndSerializationSafe] [GeneratedByOldBindingsGenerator] [MethodImpl(MethodImplOptions.InternalCall)] internal static extern bool DoesObjectWithInstanceIDExist(int instanceID); // Token: 0x06001021 RID: 4129 RVA: 0x00015770 File Offset: 0x00013970 [SecuritySafeCritical] public unsafe int GetInstanceID() { int num; if (this.m_CachedPtr == IntPtr.Zero) { num = 0; } else { if (Object.OffsetOfInstanceIDInCPlusPlusObject == -1) { Object.OffsetOfInstanceIDInCPlusPlusObject = Object.GetOffsetOfInstanceIDInCPlusPlusObject(); } num = *(int*)(void*)new IntPtr(this.m_CachedPtr.ToInt64() + (long)Object.OffsetOfInstanceIDInCPlusPlusObject); } return num; } // Token: 0x06001022 RID: 4130 RVA: 0x000157D4 File Offset: 0x000139D4 public override int GetHashCode() { return base.GetHashCode(); } // Token: 0x06001023 RID: 4131 RVA: 0x000157F0 File Offset: 0x000139F0 public override bool Equals(object other) { Object @object = other as Object; return (!(@object == null) || other == null || other is Object) && Object.CompareBaseObjects(this, @object); } // Token: 0x06001024 RID: 4132 RVA: 0x00015838 File Offset: 0x00013A38 public static implicit operator bool(Object exists) { return !Object.CompareBaseObjects(exists, null); } // Token: 0x06001025 RID: 4133 RVA: 0x00015858 File Offset: 0x00013A58 private static bool CompareBaseObjects(Object lhs, Object rhs) { bool flag = lhs == null; bool flag2 = rhs == null; bool flag3; if (flag2 && flag) { flag3 = true; } else if (flag2) { flag3 = !Object.IsNativeObjectAlive(lhs); } else if (flag) { flag3 = !Object.IsNativeObjectAlive(rhs); } else { flag3 = object.ReferenceEquals(lhs, rhs); } return flag3; } // Token: 0x06001026 RID: 4134 RVA: 0x000158BC File Offset: 0x00013ABC private static bool IsNativeObjectAlive(Object o) { return o.GetCachedPtr() != IntPtr.Zero; } // Token: 0x06001027 RID: 4135 RVA: 0x000158E4 File Offset: 0x00013AE4 private IntPtr GetCachedPtr() { return this.m_CachedPtr; } // Token: 0x06001028 RID: 4136 RVA: 0x00015900 File Offset: 0x00013B00 [TypeInferenceRule(TypeInferenceRules.TypeOfFirstArgument)] public static Object Instantiate(Object original, Vector3 position, Quaternion rotation) { Object.CheckNullArgument(original, "The Object you want to instantiate is null."); if (original is ScriptableObject) { throw new ArgumentException("Cannot instantiate a ScriptableObject with a position and rotation"); } return Object.Internal_InstantiateSingle(original, position, rotation); } // Token: 0x06001029 RID: 4137 RVA: 0x00015940 File Offset: 0x00013B40 [TypeInferenceRule(TypeInferenceRules.TypeOfFirstArgument)] public static Object Instantiate(Object original, Vector3 position, Quaternion rotation, Transform parent) { Object @object; if (parent == null) { @object = Object.Internal_InstantiateSingle(original, position, rotation); } else { Object.CheckNullArgument(original, "The Object you want to instantiate is null."); @object = Object.Internal_InstantiateSingleWithParent(original, parent, position, rotation); } return @object; } // Token: 0x0600102A RID: 4138 RVA: 0x00015984 File Offset: 0x00013B84 [TypeInferenceRule(TypeInferenceRules.TypeOfFirstArgument)] public static Object Instantiate(Object original) { Object.CheckNullArgument(original, "The Object you want to instantiate is null."); return Object.Internal_CloneSingle(original); } // Token: 0x0600102B RID: 4139 RVA: 0x000159AC File Offset: 0x00013BAC [TypeInferenceRule(TypeInferenceRules.TypeOfFirstArgument)] public static Object Instantiate(Object original, Transform parent) { return Object.Instantiate(original, parent, false); } // Token: 0x0600102C RID: 4140 RVA: 0x000159CC File Offset: 0x00013BCC [TypeInferenceRule(TypeInferenceRules.TypeOfFirstArgument)] public static Object Instantiate(Object original, Transform parent, bool instantiateInWorldSpace) { Object @object; if (parent == null) { @object = Object.Internal_CloneSingle(original); } else { Object.CheckNullArgument(original, "The Object you want to instantiate is null."); @object = Object.Internal_CloneSingleWithParent(original, parent, instantiateInWorldSpace); } return @object; } // Token: 0x0600102D RID: 4141 RVA: 0x00015A0C File Offset: 0x00013C0C public static T Instantiate(T original) where T : Object { Object.CheckNullArgument(original, "The Object you want to instantiate is null."); return (T)((object)Object.Internal_CloneSingle(original)); } // Token: 0x0600102E RID: 4142 RVA: 0x00015A44 File Offset: 0x00013C44 public static T Instantiate(T original, Vector3 position, Quaternion rotation) where T : Object { return (T)((object)Object.Instantiate(original, position, rotation)); } // Token: 0x0600102F RID: 4143 RVA: 0x00015A6C File Offset: 0x00013C6C public static T Instantiate(T original, Vector3 position, Quaternion rotation, Transform parent) where T : Object { return (T)((object)Object.Instantiate(original, position, rotation, parent)); } // Token: 0x06001030 RID: 4144 RVA: 0x00015A94 File Offset: 0x00013C94 public static T Instantiate(T original, Transform parent) where T : Object { return Object.Instantiate(original, parent, false); } // Token: 0x06001031 RID: 4145 RVA: 0x00015AB4 File Offset: 0x00013CB4 public static T Instantiate(T original, Transform parent, bool worldPositionStays) where T : Object { return (T)((object)Object.Instantiate(original, parent, worldPositionStays)); } // Token: 0x06001032 RID: 4146 RVA: 0x00015ADC File Offset: 0x00013CDC public static T[] FindObjectsOfType() where T : Object { return Resources.ConvertObjects(Object.FindObjectsOfType(typeof(T))); } // Token: 0x06001033 RID: 4147 RVA: 0x00015B08 File Offset: 0x00013D08 public static T FindObjectOfType() where T : Object { return (T)((object)Object.FindObjectOfType(typeof(T))); } // Token: 0x06001034 RID: 4148 RVA: 0x00015B34 File Offset: 0x00013D34 private static void CheckNullArgument(object arg, string message) { if (arg == null) { throw new ArgumentException(message); } } // Token: 0x06001035 RID: 4149 RVA: 0x00015B44 File Offset: 0x00013D44 [TypeInferenceRule(TypeInferenceRules.TypeReferencedByFirstArgument)] public static Object FindObjectOfType(Type type) { Object[] array = Object.FindObjectsOfType(type); Object @object; if (array.Length > 0) { @object = array[0]; } else { @object = null; } return @object; } // Token: 0x06001036 RID: 4150 RVA: 0x00015B74 File Offset: 0x00013D74 public static bool operator ==(Object x, Object y) { return Object.CompareBaseObjects(x, y); } // Token: 0x06001037 RID: 4151 RVA: 0x00015B90 File Offset: 0x00013D90 public static bool operator !=(Object x, Object y) { return !Object.CompareBaseObjects(x, y); } // Token: 0x040001F3 RID: 499 private IntPtr m_CachedPtr; // Token: 0x040001F4 RID: 500 internal static int OffsetOfInstanceIDInCPlusPlusObject = -1; } }