aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.HLE/Exceptions/InvalidStructLayoutException.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx.HLE/Exceptions/InvalidStructLayoutException.cs')
-rw-r--r--Ryujinx.HLE/Exceptions/InvalidStructLayoutException.cs15
1 files changed, 15 insertions, 0 deletions
diff --git a/Ryujinx.HLE/Exceptions/InvalidStructLayoutException.cs b/Ryujinx.HLE/Exceptions/InvalidStructLayoutException.cs
new file mode 100644
index 00000000..f4ccb7ba
--- /dev/null
+++ b/Ryujinx.HLE/Exceptions/InvalidStructLayoutException.cs
@@ -0,0 +1,15 @@
+using System;
+using System.Runtime.CompilerServices;
+
+namespace Ryujinx.HLE.Exceptions
+{
+ public class InvalidStructLayoutException<T> : Exception
+ {
+ static readonly Type _structType = typeof(T);
+
+ public InvalidStructLayoutException(string message) : base(message) {}
+
+ public InvalidStructLayoutException(int expectedSize) :
+ base($"Type {_structType.Name} has the wrong size. Expected: {expectedSize} bytes, Got: {Unsafe.SizeOf<T>()} bytes") {}
+ }
+} \ No newline at end of file