mirror of
https://github.com/danbulant/Cosmos
synced 2026-05-21 13:28:41 +00:00
41 lines
1.1 KiB
C#
41 lines
1.1 KiB
C#
using System;
|
|
using System.Reflection;
|
|
|
|
using FieldInfo = System.Reflection.FieldInfo;
|
|
|
|
namespace Cosmos.IL2CPU
|
|
{
|
|
public static class ExceptionHelper
|
|
{
|
|
public static Exception CurrentException;
|
|
|
|
public static void ThrowNotImplemented(string aError)
|
|
{
|
|
Console.WriteLine(aError);
|
|
throw new NotImplementedException(aError);
|
|
}
|
|
|
|
public static void ThrowInvalidOperation(string aError)
|
|
{
|
|
Console.WriteLine(aError);
|
|
throw new InvalidOperationException(aError);
|
|
}
|
|
|
|
public static void ThrowOverflow()
|
|
{
|
|
string xError = "Arithmetic operation gets an overflow!";
|
|
Console.WriteLine(xError);
|
|
throw new OverflowException(xError);
|
|
}
|
|
}
|
|
|
|
public static class ExceptionHelperRefs
|
|
{
|
|
public static readonly FieldInfo CurrentExceptionRef;
|
|
|
|
static ExceptionHelperRefs()
|
|
{
|
|
CurrentExceptionRef = typeof(ExceptionHelper).GetTypeInfo().GetField("CurrentException");
|
|
}
|
|
}
|
|
}
|