-
Notifications
You must be signed in to change notification settings - Fork 0
callstack.hpp
In this header the wrapper class for the C++ support can be found.
Its not necessary to include this header on its own, this is automatically done by
callstack.h.
The namespace used to separate the wrapper class from the struct callstack, declared in
callstack.h.
The actual wrapper class, consisting of all necessary operators and constructors for seemlessly integration into C++ code.
A typedef to improve the readability of the code.
A private variable containing the underlying struct callstack.
Note: The
structis part of this class.
The default constructor. Creates a new backtrace unless emplace is set to false.
In either case, the underlying struct callstack is properly initialized.
Throws a runtime_error or a system_error if compiled using C++11 or newer
if the backtrace could not be created.
Constructs the underlying struct callstack using the given trace.
Throws a runtime_error or a system_error if compiled using C++11 or newer
if the length of the trace is smaller than zero.
Trivial copy constructor.
Constructs a callstack object using the given struct callstack.
Trivial move constructor. Only available when compiled using a compiler supporting C++11 or newer.
Trivial destructor.
Trivial copy assignation operator.
Trivial move assignation operator. Only available when compiled using a compiler supporting C++11 or newer.
Implicit casting operator. Returns a pointer to the underlying struct callstack.
Implicit casting operator. Returns a pointer to the underlying struct callstack.
Prvate helper function used to throw either a system_error if compiled using C++11
or newer or to throw a runtime_error otherwise.
Copyright (C) 2022, 2024 - 2025 mhahnFr.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".