16#include <system_error>
32 using exception_ref = std::optional<std::reference_wrapper<const std::exception>>;
107 virtual const
xtd::
string& help_link() const noexcept;
111 virtual std::error_code error_code() const noexcept;
119 virtual
xtd::
size line_number() const noexcept;
123 virtual const
xtd::
string& member_name() const noexcept;
127 virtual const
xtd::
string& message() const noexcept;
131 virtual const
xtd::
string& name() const noexcept;
135 virtual
xtd::
string stack_trace() const noexcept;
143 xtd::
string to_string() const noexcept override;
147 const
char* what() const noexcept override;
155 static
bool enable_stack_trace() noexcept;
158 static
void enable_stack_trace(
bool enable) noexcept;
162 exception(const
xtd::
string& message, const std::
exception* inner_exception, const std::error_code& error, const
xtd::
string& help_link, const
xtd::diagnostics::stack_frame& information);
163 xtd::
string stack_trace_to_string() const noexcept;
164 const
char* default_message() const noexcept;
168 static
bool enable_stack_trace_;
Represents text as a sequence of character units.
Definition basic_string.h:79
Provides information about a xtd::diagnostics::stack_frame, which represents a function call on the c...
Definition stack_frame.h:46
static stack_frame empty() noexcept
Return an empty stack frame.
Defines the base class for predefined exceptions in the xtd namespace.
Definition exception.h:26
exception(const xtd::string &message, const xtd::string &help_link, const xtd::diagnostics::stack_frame &information=xtd::diagnostics::stack_frame::empty())
Create a new instance of class exception.
exception(const xtd::string &message, const std::exception &inner_exception, const xtd::string &help_link, const xtd::diagnostics::stack_frame &information=xtd::diagnostics::stack_frame::empty())
Create a new instance of class exception.
exception(const xtd::diagnostics::stack_frame &information=xtd::diagnostics::stack_frame::empty())
Create a new instance of class exception.
std::optional< std::reference_wrapper< const std::exception > > exception_ref
Optional reference wrapper on std::exception.
Definition exception.h:32
exception(const std::exception &inner_exception, const xtd::diagnostics::stack_frame &information=xtd::diagnostics::stack_frame::empty())
Create a new instance of class exception.
virtual const xtd::string & file_path() const noexcept
Gets file path where exception occurred.
exception(const xtd::string &message, const std::exception &inner_exception, const xtd::diagnostics::stack_frame &information=xtd::diagnostics::stack_frame::empty())
Create a new instance of class exception.
exception(const xtd::string &message, const std::exception &inner_exception, const std::error_code &error, const xtd::string &help_link, const xtd::diagnostics::stack_frame &information=xtd::diagnostics::stack_frame::empty())
Create a new instance of class exception.
exception(const xtd::string &message, const std::exception &inner_exception, const std::error_code &error, const xtd::diagnostics::stack_frame &information=xtd::diagnostics::stack_frame::empty())
Create a new instance of class exception.
exception(const xtd::string &message, const std::error_code &error, const xtd::diagnostics::stack_frame &information=xtd::diagnostics::stack_frame::empty())
Create a new instance of class exception.
exception(const xtd::string &message, const xtd::diagnostics::stack_frame &information=xtd::diagnostics::stack_frame::empty())
Create a new instance of class exception.
exception(const xtd::string &message, const std::error_code &error, const xtd::string &help_link, const xtd::diagnostics::stack_frame &information=xtd::diagnostics::stack_frame::empty())
Create a new instance of class exception.
Supports all classes in the xtd class hierarchy and provides low-level services to derived classes....
Definition object.h:42
Contains core_export_ keyword.
#define core_export_
Define shared library export.
Definition core_export.h:13
xtd::sptr< type_t > ptr
The xtd::ptr object is a shared pointer.
Definition ptr.h:27
size_t size
Represents a size of any object in bytes.
Definition size.h:23
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition xtd_about_box.h:10
Contains xtd::object class.
Contains std::optional type and std::bad_optional_access exception.
Contains xtd::diagnostics::stack_frame class.
Contains xtd::diagnostics::stack_trace class.
Contains xtd::string alias.
Contains xtd::drawing::size class.