AuroraRuntime/Source/Debug/Debug.hpp
2021-09-06 11:58:08 +01:00

40 lines
773 B
C++

/***
Copyright (C) 2021 J Reece Wilson (a/k/a "Reece"). All rights reserved.
File: Debug.hpp
Date: 2021-6-12
Author: Reece
***/
#pragma once
namespace Aurora::Debug
{
struct LastError
{
AuUInt address;
FailureCategory category;
AuString dbg;
};
using OSError_t = AuPair<AuUInt64, AuString>;
AuUInt32 GetOSErrorFence();
AuOptional<OSError_t> TryGetOrFetchOSError();
AuUInt32 GetCErrorFence();
AuOptional<int> TryGetOrFetchCError();
AuUInt32 GetStackTraceFence();
AuOptional<int> TryGetOrFetchStackTrace();
AuOptional<int> TryFetchStackTrace();
AuOptional<OSError_t> TryFetchOSError();
AuOptional<int> TryFetchCError();
void CheckErrors();
void InitDebug();
}