Inherits System::Object, and exception.

Inherited by Aspose::Pdf::Engine::Presentation::Graphics::CoreExceptions::ImageFormats::DicomImageException, Aspose::Pdf::IncorrectCMapUsageException, Aspose::Pdf::PdfException, Aspose::Pdf::Sanitization::SanitizationException, Aspose::Zip::ZipException, Aspose::Zip::ZlibException, and System::Net::Sockets::SocketException.

Public Member Functions

ASPOSECPP_SHARED_API Exception ()
 Constructs an instance of Exception class. More...
 
ASPOSECPP_SHARED_API Exception (std::nullptr_t)
 Constructs a null-instance of Exception class that does not represent any exception. More...
 
ASPOSECPP_SHARED_API Exception (const String &message)
 
template<typename T >
 Exception (const String &message, const T &innerException)
 
ASPOSECPP_SHARED_API Exception (const Exception &e)
 
ASPOSECPP_SHARED_API Exceptionoperator= (const Exception &e)
 
ASPOSECPP_SHARED_API bool operator== (const std::nullptr_t) const
 
ASPOSECPP_SHARED_API bool operator!= (const std::nullptr_t) const
 
ASPOSECPP_SHARED_API bool operator== (const Exception &e) const
 
ASPOSECPP_SHARED_API bool Equals (const std::nullptr_t) const
 
ASPOSECPP_SHARED_API bool Equals (const Exception &e) const
 
virtual ASPOSECPP_SHARED_API String get_Message () const
 Returns the string containing the error destcription. More...
 
virtual ASPOSECPP_SHARED_API String get_StackTrace () const
 Returns the string containing the stack trace. More...
 
virtual ASPOSECPP_SHARED_API System::Exceptionget_InnerException () const
 Returns a reference to the object representing the inner exception. More...
 
ASPOSECPP_SHARED_API bool IsNull () const
 
virtual ASPOSECPP_SHARED_API Exception GetBaseException () const
 Returns the copy of Exception object representing the inner-most exception. More...
 
ASPOSECPP_SHARED_API int32_t get_HResult () ASPOSE_CONST
 Returns a 32-bit integer value which is a HRESULT code associated with the exception reprsented by the current object. More...
 
virtual ASPOSECPP_SHARED_API String ToString () ASPOSE_CONST override
 Returns the string representation of the current object. More...
 
virtual ASPOSECPP_SHARED_API const char * what () const noexcept override
 Returns the description of the exception represented by the current object. More...
 
- Public Member Functions inherited from System::Object
ASPOSECPP_SHARED_API Object ()
 Creates object. Initializes all internal data structures. More...
 
virtual ASPOSECPP_SHARED_API ~Object ()
 Destroys object. Frees all internal data structures. More...
 
ASPOSECPP_SHARED_API Object (Object const &x)
 Copy constructor. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
Objectoperator= (Object const &x)
 Assignment operator. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
ObjectSharedRefAdded ()
 Increments shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int SharedRefRemovedSafe ()
 Decrements and returns shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int RemovedSharedRefs (int count)
 Decreases shared reference count by specified value. More...
 
Detail::SmartPtrCounter * WeakRefAdded ()
 Increments weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
void WeakRefRemoved ()
 Decrements weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
Detail::SmartPtrCounter * GetCounter ()
 Gets reference counter data structure associated with the object. More...
 
int SharedCount () const
 Gets current value of shared refernce counter. More...
 
ASPOSECPP_SHARED_API void Lock ()
 Implements C# lock() statement locking. Call directly or use LockContext sentry object. More...
 
ASPOSECPP_SHARED_API void Unlock ()
 Implements C# lock() statement unlocking. Call directly or use LockContext sentry object. More...
 
virtual ASPOSECPP_SHARED_API bool Equals (ptr obj)
 Compares objects using C# Object.Equals semantics. More...
 
virtual ASPOSECPP_SHARED_API int GetHashCode () const
 Analog of C# Object.GetHashCode() method. Enables hashing of custom objects. More...
 
virtual ASPOSECPP_SHARED_API ptr MemberwiseClone () const
 Analog of C# Object.MemberwiseClone() method. Enables cloning custom types. More...
 
virtual ASPOSECPP_SHARED_API const TypeInfoGetType () const
 Gets actual type of object. Analog of C# System.Object.GetType() call. More...
 
virtual ASPOSECPP_SHARED_API bool Is (const TypeInfo &targetType) const
 Check if object represents an instance of type described by targetType. Analog of C# 'is' operator. More...
 
virtual ASPOSECPP_SHARED_API void SetTemplateWeakPtr (unsigned int argument)
 Set n'th template argument a weak pointer (rather than shared). Allows switching pointers in containers to weak mode. More...
 
template<>
bool Equals (float const &objA, float const &objB)
 
template<>
bool Equals (double const &objA, double const &objB)
 
template<>
bool ReferenceEquals (String const &str, std::nullptr_t)
 
template<>
bool ReferenceEquals (String const &str1, String const &str2)
 

Static Public Member Functions

static void * operator new (std::size_t)=delete
 
static void * operator new[] (std::size_t)=delete
 
- Static Public Member Functions inherited from System::Object
static bool ReferenceEquals (ptr const &objA, ptr const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, T const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, std::nullptr_t)
 Reference-compares value type object with nullptr. More...
 
template<typename T1 , typename T2 >
static std::enable_if< IsSmartPtr< T1 >::value &&IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares reference type objects in C# style. More...
 
template<typename T1 , typename T2 >
static std::enable_if<!IsSmartPtr< T1 >::value &&!IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares value type objects in C# style. More...
 
static const TypeInfoType ()
 Impleemnts C# typeof(System.Object) construct. More...
 

Protected Member Functions

ASPOSECPP_SHARED_API Exception (const System::SharedPtr< System::Runtime::Serialization::SerializationInfo > &info, System::Runtime::Serialization::StreamingContext context)
 
virtual ASPOSECPP_SHARED_API String ExtraDescription () const
 Returns a string containing additional description of the exception. More...
 

Protected Attributes

uint64_t m_reference
 A unique unsigned 64-bit integer value that identifies particular exception. More...
 
String m_message
 The error description. More...
 
System::SharedPtr< System::Exceptionm_innerexception
 The Exception object representing the inner exception. More...
 
std::string m_std_message
 A string describing the std::exception portion of the current object. More...
 
int32_t m_HResult
 HRESULT code associated with the exception represented by the current object. More...
 

Additional Inherited Members

- Public Types inherited from System::Object
typedef SmartPtr< Objectptr
 Alias for smart pointer type. More...
 
typedef System::Details::SharedMembersType shared_members_type
 structure to keep list of shared pointers contained in object. More...
 

Detailed Description

Represents an exception. This type should be allocated on stack and passed to functions by value or by reference. Never use System::SmartPtr class to manage objects of this type.

Constructor & Destructor Documentation

◆ Exception() [1/6]

ASPOSECPP_SHARED_API System::Exception::Exception ( )

Constructs an instance of Exception class.

◆ Exception() [2/6]

ASPOSECPP_SHARED_API System::Exception::Exception ( std::nullptr_t  )

Constructs a null-instance of Exception class that does not represent any exception.

◆ Exception() [3/6]

ASPOSECPP_SHARED_API System::Exception::Exception ( const String message)

Constructs an instance of Exception class and assigns the specified error message to it.

Parameters
messageString that contains the error destription

◆ Exception() [4/6]

template<typename T >
System::Exception::Exception ( const String message,
const T &  innerException 
)
inline

Constructs an instance of Exception class and assigns the specified error message and a reference to the inner exception object.

Parameters
messageString that contains the error destription
innerExceptionA reference to the exception object interpreted as a cause for the exception represented by the Exception being constructed
Template Parameters
TThe type of the object representing the inner exception

◆ Exception() [5/6]

ASPOSECPP_SHARED_API System::Exception::Exception ( const Exception e)

Constructs an instance of Exception which is a copy of and represents the same exception as the specified object.

Parameters
eAn Exception object to copy the object being constructed from

◆ Exception() [6/6]

ASPOSECPP_SHARED_API System::Exception::Exception ( const System::SharedPtr< System::Runtime::Serialization::SerializationInfo > &  info,
System::Runtime::Serialization::StreamingContext  context 
)
protected

Deserializes exception.

Parameters
infoSerializationInfo object holding serialized exception.
contextStreaming context bound to serialization info passed.

Member Function Documentation

◆ Equals() [1/2]

ASPOSECPP_SHARED_API bool System::Exception::Equals ( const std::nullptr_t  ) const

Determines if the current Exception object is a null-object i.e. does not represent any exception.

Returns
True if the current Exception object is a null-object, otherwise - false

◆ Equals() [2/2]

ASPOSECPP_SHARED_API bool System::Exception::Equals ( const Exception e) const

Determines if the current and the specified Exception objects are equal.

Parameters
eThe Exception object to compare the current object with
Returns
True if the currnent and the specified objects are the same object or both represent the same exception or both do not represent any exceptions (are null-objects), otherwise - false

◆ ExtraDescription()

virtual ASPOSECPP_SHARED_API String System::Exception::ExtraDescription ( ) const
protectedvirtual

Returns a string containing additional description of the exception.

◆ get_HResult()

ASPOSECPP_SHARED_API int32_t System::Exception::get_HResult ( )

Returns a 32-bit integer value which is a HRESULT code associated with the exception reprsented by the current object.

◆ get_InnerException()

virtual ASPOSECPP_SHARED_API System::Exception& System::Exception::get_InnerException ( ) const
virtual

Returns a reference to the object representing the inner exception.

◆ get_Message()

virtual ASPOSECPP_SHARED_API String System::Exception::get_Message ( ) const
virtual

Returns the string containing the error destcription.

◆ get_StackTrace()

virtual ASPOSECPP_SHARED_API String System::Exception::get_StackTrace ( ) const
virtual

Returns the string containing the stack trace.

◆ GetBaseException()

virtual ASPOSECPP_SHARED_API Exception System::Exception::GetBaseException ( ) const
virtual

Returns the copy of Exception object representing the inner-most exception.

◆ IsNull()

ASPOSECPP_SHARED_API bool System::Exception::IsNull ( ) const

Determines if the current Exception object is a null-object i.e. does not represent any exception.

Returns
True if the current Exception object is a null-object, otherwise - false

◆ operator new()

static void* System::Exception::operator new ( std::size_t  )
staticdelete

◆ operator new[]()

static void* System::Exception::operator new[] ( std::size_t  )
staticdelete

◆ operator!=()

ASPOSECPP_SHARED_API bool System::Exception::operator!= ( const std::nullptr_t  ) const

Determines if the current Exception object is not a null-object i.e. represents an exception.

Returns
True if the current Exception object is not a null-object, otherwise - false

◆ operator=()

ASPOSECPP_SHARED_API Exception& System::Exception::operator= ( const Exception e)

Assigns all the properties of the specified Exception object to the current object; as a result both current and the specified objects represent the same exception.

Parameters
eThe Exception object to copy the attributes from
Returns
A reference to the self

◆ operator==() [1/2]

ASPOSECPP_SHARED_API bool System::Exception::operator== ( const std::nullptr_t  ) const

Determines if the current Exception object is a null-object i.e. does not represent any exception.

Returns
True if the current Exception object is a null-object, otherwise - false

◆ operator==() [2/2]

ASPOSECPP_SHARED_API bool System::Exception::operator== ( const Exception e) const

Determines if the current and the specified Exception objects are equal.

Parameters
eThe Exception object to compare the current object with
Returns
True if the currnent and the specified objects are the same object or both represent the same exception or both do not represent any exceptions (are null-objects), otherwise - false

◆ ToString()

virtual ASPOSECPP_SHARED_API String System::Exception::ToString ( )
overridevirtual

Returns the string representation of the current object.

Reimplemented from System::Object.

◆ what()

virtual ASPOSECPP_SHARED_API const char* System::Exception::what ( ) const
overridevirtualnoexcept

Returns the description of the exception represented by the current object.

Member Data Documentation

◆ m_HResult

int32_t System::Exception::m_HResult
mutableprotected

HRESULT code associated with the exception represented by the current object.

◆ m_innerexception

System::SharedPtr<System::Exception> System::Exception::m_innerexception
protected

The Exception object representing the inner exception.

◆ m_message

String System::Exception::m_message
protected

The error description.

◆ m_reference

uint64_t System::Exception::m_reference
protected

A unique unsigned 64-bit integer value that identifies particular exception.

◆ m_std_message

std::string System::Exception::m_std_message
mutableprotected

A string describing the std::exception portion of the current object.