19 #ifndef PSYSTEM_EXCEPTION_BASE_EXCEPTION_HPP
20 #define PSYSTEM_EXCEPTION_BASE_EXCEPTION_HPP
74 :
public std::exception,
90 std::string file, std::string
function, uint32_t line)
noexcept;
102 template <
typename... MessageArgs>
105 std::string
function,
223 std::ostream& operator<<(
229 #endif // PSYSTEM_EXCEPTION_BASE_EXCEPTION_HPP
uint32_t const m_line_number
The line number (in m_source_file) where the exception occurred.
Definition: base_exception.hpp:198
std::string const m_function
The function where the exception occurred.
Definition: base_exception.hpp:195
Defines the psystem::not_assignable interface.
Definition: shared_handle.hpp:782
static std::string format_message(char const *msg,...) noexcept
A functional sprintf() replacement.
Definition: base_exception.cpp:77
Base exception class from which all PSystem exceptions must inherit.
Definition: base_exception.hpp:73
virtual char const * what() const noexcept override
Return a message describing the exception that occurred.
Definition: base_exception.cpp:49
Removes the ability to use an assignment operation on derived classes.
Definition: not_assignable.hpp:42
std::string const m_source_file
The source file where the exception occurred.
Definition: base_exception.hpp:201
std::string const & source_file() const noexcept
Return the name of the source file where the exception occurred.
Definition: base_exception.cpp:67
virtual ~base_exception() noexcept
Destroy the exception (supports run-time polymorphism).
Definition: base_exception.hpp:116
std::string const m_what
A message describing the exception condition.
Definition: base_exception.hpp:192
Declarations required for the psystem::exception namespace.
Contains the process examination "system" and basic frameworks.
Definition: pstack_event_handler.hpp:28
base_exception(std::string file, std::string function, uint32_t line, MessageArgs &&...message) noexcept
Construct a base_exception instance with a formatted message.
Definition: base_exception.hpp:103
base_exception(std::string file, std::string function, uint32_t line) noexcept
Construct a base_exception instance with no message.
Definition: base_exception.cpp:32
uint32_t line_number() const noexcept
Return the line on which the exception occurred.
Definition: base_exception.cpp:61
std::string const & function() const noexcept
Return the function where the exception occurred.
Definition: base_exception.cpp:55