internal unsafe RuntimeType Instantiate(Type[] inst) { int length; fixed(IntPtr *pInst = RuntimeTypeHandle.CopyRuntimeTypeHandles(inst, out length)) { RuntimeType o = (RuntimeType)null; RuntimeTypeHandle.Instantiate(this.GetNativeHandle(), pInst, length, JitHelpers.GetObjectHandleOnStack <RuntimeType>(ref o)); GC.KeepAlive((object)inst); return(o); } }
internal unsafe RuntimeType Instantiate(Type[] inst) { int numGenericArgs; IntPtr[] array = RuntimeTypeHandle.CopyRuntimeTypeHandles(inst, out numGenericArgs); fixed(IntPtr *ptr = array) { RuntimeType result = null; RuntimeTypeHandle.Instantiate(this.GetNativeHandle(), ptr, numGenericArgs, JitHelpers.GetObjectHandleOnStack <RuntimeType>(ref result)); GC.KeepAlive(inst); return(result); } }