Details_AggregateException
Contents
[
Hide
]Details_AggregateException class
Represents an exception that contains multiple inner exceptions.
class Details_AggregateException : public System::Details_Exception
Methods
| Method | Description |
|---|---|
| virtual bool Equals(ptr) | Compares objects using C# Object.Equals semantics. |
| static std::enable_if<IsSmartPtr<T1>::value&&IsSmartPtr<T2>::value, bool>::type Equals(T1 const&, T2 const&) | Compares reference type objects in C# style. |
| static std::enable_if<!IsSmartPtr<T1>::value&&!IsSmartPtr<T2>::value, bool>::type Equals(T1 const&, T2 const&) | Compares value type objects in C# style. |
| static bool Equals(float const&, float const&) | Emulates C#-style floating point comparison where two NaNs are considered equal even though according to IEC 60559:1989 NaN is not equal to any value, including NaN. |
| static bool Equals(double const&, double const&) | Emulates C#-style floating point comparison where two NaNs are considered equal even though according to IEC 60559:1989 NaN is not equal to any value, including NaN. |
| virtual bool FastCast(const Details::FastRttiBase&, void **) const | For internal purposes only. |
| AggregateException Flatten() | Flattens the aggregate exception by unwrapping all nested AggregateExceptions into a single-level list. |
| int32_t get_HResult() const | Returns a 32-bit integer value which is a HRESULT code associated with the exception reprsented by the current object. |
| virtual ExceptionWrapper<Details_Exception> get_InnerException() const | Returns a reference to the object representing the inner exception. |
| int32_t get_InnerExceptionCount() | Gets the number of inner exceptions contained in this aggregate exception. |
| SharedPtr<Collections::ObjectModel::ReadOnlyCollection<Exception>> get_InnerExceptions() | Gets a read-only collection of the inner exceptions. |
| const ArrayPtr<Exception>& get_InternalInnerExceptions() | Returns the internal array of inner exceptions. |
| String get_Message() const override | Overrides the base message to include aggregated information from all inner exceptions. |
| virtual String get_StackTrace() const | Returns the string containing the stack trace. |
| Exception GetBaseException() const override | Returns the root cause exception by recursively unwrapping inner exceptions. |
| Detail::SmartPtrCounter * GetCounter() | Gets reference counter data structure associated with the object. |
| virtual int32_t GetHashCode() const | Analog of C# Object.GetHashCode() method. Enables hashing of custom objects. |
| virtual const TypeInfo& GetType() const | Gets actual type of object. Analog of C# System.Object.GetType() call. |
| void Handle(const Func<Exception, bool>&) | Invokes a handler function on each inner exception and rethrows any unhandled exceptions. |
| virtual bool Is(const TypeInfo&) const | Check if object represents an instance of type described by targetType. Analog of C# ‘is’ operator. |
| void Lock() | Implements C# lock() statement locking. Call directly or use LockContext sentry object. |
| virtual ptr MemberwiseClone() const | Analog of C# Object.MemberwiseClone() method. Enables cloning custom types. |
| Object() | Creates object. Initializes all internal data structures. |
| Object(Object const&) | Copy constructor. Doesn’t copy anything, really, just initializes new object and enables copy constructing subclasses. |
| Object& operator=(Object const&) | Assignment operator. Doesn’t copy anything, really, just initializes new object and enables copy constructing subclasses. |
| static bool ReferenceEquals(ptr const&, ptr const&) | Compares objects by reference. |
| static std::enable_if<!IsSmartPtr<T>::value, bool>::type ReferenceEquals(T const&, T const&) | Compares objects by reference. |
| static std::enable_if<!IsSmartPtr<T>::value, bool>::type ReferenceEquals(T const&, std::nullptr_t) | Reference-compares value type object with nullptr. |
| bool ReferenceEquals(String const&, std::nullptr_t) | Specialization of Object::ReferenceEquals for case of string and nullptr. |
| bool ReferenceEquals(String const&, String const&) | Specialization of Object::ReferenceEquals for case of strings. |
| int RemovedSharedRefs(int) | Decreases shared reference count by specified value. |
| void set_HResult(int32_t) | Sets HRESULT, a coded numerical value that is assigned to a specific exception. |
| virtual void SetTemplateWeakPtr(uint32_t) | Set n’th template argument a weak pointer (rather than shared). Allows switching pointers in containers to weak mode. |
| int SharedCount() const | Gets current value of shared reference counter. |
| Object * SharedRefAdded() | Increments shared reference count. Shouldn’t be called directly; instead, use smart pointers or ThisProtector. |
| int SharedRefRemovedSafe() | Decrements and returns shared reference count. Shouldn’t be called directly; instead, use smart pointers or ThisProtector. |
| String ToString() const override | Returns a string representation of the exception, including all inner exceptions. |
| static const TypeInfo& Type() | Implements C# typeof(System.Object) construct. |
| void Unlock() | Implements C# lock() statement unlocking. Call directly or use LockContext sentry object. |
| Detail::SmartPtrCounter * WeakRefAdded() | Increments weak reference count. Shouldn’t be called directly; instead, use smart pointers or ThisProtector. |
| void WeakRefRemoved() | Decrements weak reference count. Shouldn’t be called directly; instead, use smart pointers or ThisProtector. |
| virtual const char * what() const | Implements what() method which is called by ExceptionWrapper class. Despite of the fact that this class is not inherited from std::exception derived classes can use protected/private members to implement their logic. Moving this method implementation to the ExceptionWrapper may broke that logic. |
| virtual ~Object() | Destroys object. Frees all internal data structures. |
Remarks
This class is typically used to group several exceptions that occur concurrently, such as in parallel processing or asynchronous task execution scenarios. It allows users to examine, flatten, or selectively handle the contained exceptions.
See Also
- Class Details_Exception
- Namespace System
- Library Aspose.Slides