HikoGUI
A low latency retained GUI
Loading...
Searching...
No Matches
Namespaces | Functions | Variables
terminate.hpp File Reference

Utilities for throwing exceptions and terminating the application. More...

#include "../macros.hpp"
#include "dialog.hpp"
#include "debugger.hpp"
#include <exception>
#include <stdexcept>
#include <atomic>
#include <bit>
#include <format>
#include <iostream>
#include <functional>
#include <mutex>
#include <print>
#include <cstdio>
#include <stacktrace>

Go to the source code of this file.

Namespaces

namespace  hi
 The HikoGUI namespace.
 
namespace  hi::v1
 The HikoGUI API version 1.
 

Functions

 hi_export_module (hikogui.utility.terminate)
 
void hi::v1::detail::call_atterminate () noexcept
 
void hi::v1::atterminate (std::function< void()> f) noexcept
 Register functions that need to be called on std::terminate().
 
void hi::v1::terminate_handler () noexcept
 The HikoGUI terminate handler.
 

Variables

std::mutex hi::v1::detail::terminate_mutex
 
std::vector< std::function< void()> > hi::v1::detail::atterminate_functions
 
std::terminate_handler hi::v1::old_terminate_handler
 The old terminate handler.
 

Detailed Description

Utilities for throwing exceptions and terminating the application.