Example #1
0
            public static bool Prefix(Type t, int controlID, out Object __result)
            {
                if (!s_StateCache.TryGetValue(controlID, out __result) || __result.GetIl2CppType() != t)
                {
                    s_StateCache[controlID] = __result = t.GetConstructor(new Il2CppReferenceArray <Type>(0)).Invoke(null, new Il2CppReferenceArray <Object>(0));
                }

                return(false);
            }
Example #2
0
        public static Il2CppSystem.Object DynamicCast(this Il2CppSystem.Object obj, Il2CppSystem.Type type)
        {
            var mi = obj.GetIl2CppType().GetMethod("Cast");

            var genericArg = new Il2CppReferenceArray <Il2CppSystem.Type>(1);

            genericArg[0] = type;

            var fooRef = mi.MakeGenericMethod(genericArg);

            return(fooRef.Invoke(obj, null));
        }