xtd - Reference Guide  0.1.0
Modern c++17/20 framework to create console, GUI and unit test applications on Windows, macOS, Linux, iOS and android.
Public Types | Public Member Functions | Static Public Member Functions | List of all members
xtd::system_exception Class Reference

#include <system_exception.h>

Definition

Defines the base class for predefined exceptions in the xtd namespace.

Namespace
xtd
Library
xtd.core
Examples:
application_and_exception.cpp, exception_box.cpp, and exception_dialog.cpp.

Public Types

using exception_ref = std::optional< std::reference_wrapper< const std::exception > >
 Optional reference wrapper on std::eception. More...
 

Public Member Functions

 system_exception (const xtd::diagnostics::stack_frame &information=xtd::diagnostics::stack_frame::empty())
 Create a new instance of class system_exception. More...
 
 system_exception (const xtd::ustring &message, const xtd::diagnostics::stack_frame &information=xtd::diagnostics::stack_frame::empty())
 Create a new instance of class system_exception. More...
 
 system_exception (const xtd::ustring &message, const std::error_code &error, const xtd::diagnostics::stack_frame &information=xtd::diagnostics::stack_frame::empty())
 Create a new instance of class system_exception. More...
 
 system_exception (const xtd::ustring &message, const xtd::ustring &help_link, const xtd::diagnostics::stack_frame &information=xtd::diagnostics::stack_frame::empty())
 Create a new instance of class system_exception. More...
 
 system_exception (const xtd::ustring &message, const std::error_code &error, const xtd::ustring &help_link, const xtd::diagnostics::stack_frame &information=xtd::diagnostics::stack_frame::empty())
 Create a new instance of class system_exception. More...
 
 system_exception (const std::exception &inner_exception, const xtd::diagnostics::stack_frame &information=xtd::diagnostics::stack_frame::empty())
 Create a new instance of class system_exception. More...
 
 system_exception (const xtd::ustring &message, const std::exception &inner_exception, const xtd::diagnostics::stack_frame &information=xtd::diagnostics::stack_frame::empty())
 Create a new instance of class system_exception. More...
 
 system_exception (const xtd::ustring &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 system_exception. More...
 
 system_exception (const xtd::ustring &message, const std::exception &inner_exception, const xtd::ustring &help_link, const xtd::diagnostics::stack_frame &information=xtd::diagnostics::stack_frame::empty())
 Create a new instance of class system_exception. More...
 
 system_exception (const xtd::ustring &message, const std::exception &inner_exception, const std::error_code &error, const xtd::ustring &help_link, const xtd::diagnostics::stack_frame &information=xtd::diagnostics::stack_frame::empty())
 Create a new instance of class system_exception. More...
 
virtual std::error_code error_code () const noexcept
 Get error associate to the exception. More...
 
virtual const xtd::ustringfile_path () const noexcept
 Get file path where exception occurred. More...
 
virtual const xtd::ustringhelp_link () const noexcept
 Gets a link to the help file associated with this exception. More...
 
virtual exception_ref inner_exception () const noexcept
 Gets the exception instance that caused the current exception. More...
 
virtual uint32_t line_numer () const noexcept
 Get Line number where the exception occurred. More...
 
virtual const xtd::ustringmember_name () const noexcept
 Get file member where exception occurred. More...
 
virtual const xtd::ustringmessage () const noexcept
 Get message associate to the exception. More...
 
virtual const xtd::ustringname () const noexcept
 Get full class name the exception. More...
 
virtual xtd::ustring stack_trace () const noexcept
 Gets a string representation of the immediate frames on the call stack. More...
 
xtd::ustring to_string () const noexcept override
 Returns a string that represents the current exception. More...
 
const char * what () const noexcept override
 Get message associate to the exception. More...
 
- Public Member Functions inherited from xtd::object
 object ()=default
 Create a new instance of the ultimate base class object. More...
 
virtual bool equals (const object &obj) const noexcept
 Determines whether the specified object is equal to the current object. More...
 
virtual size_t get_hash_code () const noexcept
 Serves as a hash function for a particular type. More...
 
template<typename object_t >
std::unique_ptr< object_t > memberwise_clone () const
 Gets the type of the current instance. More...
 

Static Public Member Functions

static bool enable_stack_trace ()
 Gets or sets if the generation of the stack trace is enabled. More...
 
static void enable_stack_trace (bool enable)
 
- Static Public Member Functions inherited from xtd::object
static bool equals (const object &object_a, const object &object_b) noexcept
 Determines whether the specified object instances are considered equal. More...
 
static bool reference_equals (const object &object_a, const object &object_b) noexcept
 Determines whether the specified object instances are the same instance. More...
 

Member Typedef Documentation

◆ exception_ref

using xtd::system_exception::exception_ref = std::optional<std::reference_wrapper<const std::exception> >

Optional reference wrapper on std::eception.

Constructor & Destructor Documentation

◆ system_exception() [1/10]

xtd::system_exception::system_exception ( const xtd::diagnostics::stack_frame information = xtd::diagnostics::stack_frame::empty())
inlineexplicit

Create a new instance of class system_exception.

Parameters
information(optional) Conatains current information about memeber name, file path and line number in the file where the exception is occurred. Typically current_stack_frame_.
Remarks
Message is set with the default message associate to the exception.

◆ system_exception() [2/10]

xtd::system_exception::system_exception ( const xtd::ustring message,
const xtd::diagnostics::stack_frame information = xtd::diagnostics::stack_frame::empty() 
)
inlineexplicit

Create a new instance of class system_exception.

Parameters
messageMessage string associate to the exception.
information(optional) Conatains current information about memeber name, file path and line number in the file where the exception is occurred. Typically current_stack_frame_.

◆ system_exception() [3/10]

xtd::system_exception::system_exception ( const xtd::ustring message,
const std::error_code &  error,
const xtd::diagnostics::stack_frame information = xtd::diagnostics::stack_frame::empty() 
)
inline

Create a new instance of class system_exception.

Parameters
messageMessage string associate to the exception.
errorError code associate to the exception.
information(optional) Conatains current information about memeber name, file path and line number in the file where the exception is occurred. Typically current_stack_frame_.

◆ system_exception() [4/10]

xtd::system_exception::system_exception ( const xtd::ustring message,
const xtd::ustring help_link,
const xtd::diagnostics::stack_frame information = xtd::diagnostics::stack_frame::empty() 
)
inline

Create a new instance of class system_exception.

Parameters
messageMessage string associate to the exception.
help_linkHelp link string associate to the exception.
information(optional) Conatains current information about memeber name, file path and line number in the file where the exception is occurred. Typically current_stack_frame_.

◆ system_exception() [5/10]

xtd::system_exception::system_exception ( const xtd::ustring message,
const std::error_code &  error,
const xtd::ustring help_link,
const xtd::diagnostics::stack_frame information = xtd::diagnostics::stack_frame::empty() 
)
inline

Create a new instance of class system_exception.

Parameters
messageMessage string associate to the exception.
errorError code associate to the exception.
help_linkHelp link string associate to the exception.
information(optional) Conatains current information about memeber name, file path and line number in the file where the exception is occurred. Typically current_stack_frame_.

◆ system_exception() [6/10]

xtd::system_exception::system_exception ( const std::exception &  inner_exception,
const xtd::diagnostics::stack_frame information = xtd::diagnostics::stack_frame::empty() 
)
inlineexplicit

Create a new instance of class system_exception.

Parameters
inner_exceptionThe exception that is the cause of the current exception.
information(optional) Conatains current information about memeber name, file path and line number in the file where the exception is occurred. Typically current_stack_frame_.
Remarks
Message is set with the default message associate to the exception.

◆ system_exception() [7/10]

xtd::system_exception::system_exception ( const xtd::ustring message,
const std::exception &  inner_exception,
const xtd::diagnostics::stack_frame information = xtd::diagnostics::stack_frame::empty() 
)
inline

Create a new instance of class system_exception.

Parameters
messageMessage string associate to the exception.
inner_exceptionThe exception that is the cause of the current exception.
information(optional) Conatains current information about memeber name, file path and line number in the file where the exception is occurred. Typically current_stack_frame_.

◆ system_exception() [8/10]

xtd::system_exception::system_exception ( const xtd::ustring message,
const std::exception &  inner_exception,
const std::error_code &  error,
const xtd::diagnostics::stack_frame information = xtd::diagnostics::stack_frame::empty() 
)
inline

Create a new instance of class system_exception.

Parameters
messageMessage string associate to the exception.
inner_exceptionThe exception that is the cause of the current exception.
errorError code associate to the exception.
information(optional) Conatains current information about memeber name, file path and line number in the file where the exception is occurred. Typically current_stack_frame_.

◆ system_exception() [9/10]

xtd::system_exception::system_exception ( const xtd::ustring message,
const std::exception &  inner_exception,
const xtd::ustring help_link,
const xtd::diagnostics::stack_frame information = xtd::diagnostics::stack_frame::empty() 
)
inline

Create a new instance of class system_exception.

Parameters
messageMessage string associate to the exception.
inner_exceptionThe exception that is the cause of the current exception.
help_linkHelp link string associate to the exception.
information(optional) Conatains current information about memeber name, file path and line number in the file where the exception is occurred. Typically current_stack_frame_.

◆ system_exception() [10/10]

xtd::system_exception::system_exception ( const xtd::ustring message,
const std::exception &  inner_exception,
const std::error_code &  error,
const xtd::ustring help_link,
const xtd::diagnostics::stack_frame information = xtd::diagnostics::stack_frame::empty() 
)
inline

Create a new instance of class system_exception.

Parameters
messageMessage string associate to the exception.
inner_exceptionThe exception that is the cause of the current exception.
errorError code associate to the exception.
help_linkHelp link string associate to the exception.
information(optional) Conatains current information about memeber name, file path and line number in the file where the exception is occurred. Typically current_stack_frame_.

Member Function Documentation

◆ enable_stack_trace()

static bool xtd::system_exception::enable_stack_trace ( )
inlinestatic

Gets or sets if the generation of the stack trace is enabled.

◆ error_code()

virtual std::error_code xtd::system_exception::error_code ( ) const
inlinevirtualnoexcept

Get error associate to the exception.

Returns
An error_code represent a Error associate to the exception

◆ file_path()

virtual const xtd::ustring& xtd::system_exception::file_path ( ) const
inlinevirtualnoexcept

Get file path where exception occurred.

Returns
A string represent file path where exception occurred

◆ help_link()

virtual const xtd::ustring& xtd::system_exception::help_link ( ) const
inlinevirtualnoexcept

Gets a link to the help file associated with this exception.

Returns
A string represent a link to Help file associated with sxception

◆ inner_exception()

virtual exception_ref xtd::system_exception::inner_exception ( ) const
inlinevirtualnoexcept

Gets the exception instance that caused the current exception.

Returns
An instance of exception that describes the error that caused the current exception. The inner_exception property returns the same value as was passed into the constructor, or a null reference if the inner exception value was not supplied to the constructor.

◆ line_numer()

virtual uint32_t xtd::system_exception::line_numer ( ) const
inlinevirtualnoexcept

Get Line number where the exception occurred.

Returns
the line number where exception occurred

◆ member_name()

virtual const xtd::ustring& xtd::system_exception::member_name ( ) const
inlinevirtualnoexcept

Get file member where exception occurred.

Returns
A string represent member name where exception occurred

◆ message()

virtual const xtd::ustring& xtd::system_exception::message ( ) const
inlinevirtualnoexcept

Get message associate to the exception.

Returns
A string represent a massage associate to the exception
Examples:
application_and_exception.cpp.

◆ name()

virtual const xtd::ustring& xtd::system_exception::name ( ) const
inlinevirtualnoexcept

Get full class name the exception.

Returns
A string represent a full class name of the exception
Examples:
application_and_exception.cpp.

◆ stack_trace()

virtual xtd::ustring xtd::system_exception::stack_trace ( ) const
inlinevirtualnoexcept

Gets a string representation of the immediate frames on the call stack.

Returns
A string that describes the immediate frames of the call stack.

◆ to_string()

xtd::ustring xtd::system_exception::to_string ( ) const
overridevirtualnoexcept

Returns a string that represents the current exception.

Returns
A string that represents the current exception.

Reimplemented from xtd::object.

◆ what()

const char* xtd::system_exception::what ( ) const
inlineoverridenoexcept

Get message associate to the exception.

Returns
A string represent a massage associate to the exception

The documentation for this class was generated from the following file: