3#ifndef ICE_LOCAL_EXCEPTION_H
4#define ICE_LOCAL_EXCEPTION_H
27 [[nodiscard]]
const char*
what() const noexcept final;
31 [[nodiscard]] const
char*
ice_id() const noexcept override;
35 [[nodiscard]] const
char*
ice_file() const noexcept;
53 std::shared_ptr<std::
string> _whatString;
54 std::shared_ptr<std::vector<
void*>> _stackFrames;
Exception() noexcept=default
Default constructor.
const char * what() const noexcept final
Gets the error message of this local Ice exception.
const char * ice_file() const noexcept
Gets the name of the file where this exception was constructed.
void ice_print(std::ostream &os) const final
Outputs a description of this exception to a stream.
static void ice_enableStackTraceCollection()
Enables the collection of stack traces for exceptions.
std::string ice_stackTrace() const
Gets the stack trace at the point this exception was constructed.
int ice_line() const noexcept
Gets the line number where this exception was constructed.
LocalException(const char *file, int line, std::string message)
Constructs a local exception.
const char * ice_id() const noexcept override
Returns the type ID of this exception.