using Ryujinx.Graphics.GAL; using System.Diagnostics; using System.Runtime.CompilerServices; namespace Ryujinx.Graphics.OpenGL { static class Handle { public static T FromInt32<T>(int handle) where T : unmanaged { Debug.Assert(Unsafe.SizeOf<T>() == sizeof(ulong)); ulong handle64 = (uint)handle; return Unsafe.As<ulong, T>(ref handle64); } public static int ToInt32(this BufferHandle handle) { return (int)Unsafe.As<BufferHandle, ulong>(ref handle); } } }