#include "Core.hpp"
#include "../src/SignalHandling.hpp"

/// @file

std::string ExceptionHandler::_ArbutilsLastException = "";
/// @brief Returns a null-terminated C string to the last exception found.
export const char* Arbutils_C_GetLastException() { return ExceptionHandler::GetLastException(); }

#if !WINDOWS && SIGNAL_HANDLING
static ArbUt::SignalHandling sh;
/// @brief Sets a callback to a function to run when a signal occurs.
export void Arbutils_C_SetSignalCallback(void (*callback)(const char*)) { sh.SetCallback(callback); }
#else
/// @brief Sets a callback to a function to run when a signal occurs.
export void Arbutils_C_SetSignalCallback(void (*)(const char*)) {  }
#endif