Cosmos/source/Cosmos.IL2CPU/ExceptionHelper.cs
2017-01-28 00:27:45 -06:00

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");
}
}
}