/*** 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; AuUInt32 GetOSErrorFence(); AuOptional TryGetOrFetchOSError(); AuUInt32 GetCErrorFence(); AuOptional TryGetOrFetchCError(); AuUInt32 GetStackTraceFence(); AuOptional TryGetOrFetchStackTrace(); AuOptional TryFetchStackTrace(); AuOptional TryFetchOSError(); AuOptional TryFetchCError(); void CheckErrors(); void InitDebug(); }