LeechCraft 0.6.70-17335-ge406ffdcaf
Modular cross-platform feature rich live environment.
Loading...
Searching...
No Matches
LC::Util::ConcurrentException< T > Class Template Reference

A concurrent exception that plays nicely with Qt. More...

#include "concurrentexception.h"

+ Inheritance diagram for LC::Util::ConcurrentException< T >:
+ Collaboration diagram for LC::Util::ConcurrentException< T >:

Public Member Functions

 ConcurrentException ()=default
 Default-constructs the exception object.
 
template<typename... Args>
requires requires (Args&&... args) { T { std::forward<Args> (args)... }; }
 ConcurrentException (Args &&... args)
 Constructs the exception object with the given args.
 
void raise () const override
 Rethrows an exception of exactly this type and state.
 
ConcurrentException< T > * clone () const override
 Constructs a copy of this object.
 
const char * what () const noexcept override
 Overrides base pure virtual.
 

Detailed Description

template<typename T>
class LC::Util::ConcurrentException< T >

A concurrent exception that plays nicely with Qt.

This class can be used to make some third-party exception type compatible with the QtConcurrent framework, which requires all exceptions to be derived from a Qt's base exception class.

Template Parameters
TThe base type of the exception.

Definition at line 30 of file concurrentexception.h.

Constructor & Destructor Documentation

◆ ConcurrentException() [1/2]

template<typename T>
LC::Util::ConcurrentException< T >::ConcurrentException ( )
default

Default-constructs the exception object.

◆ ConcurrentException() [2/2]

template<typename T>
template<typename... Args>
requires requires (Args&&... args) { T { std::forward<Args> (args)... }; }
LC::Util::ConcurrentException< T >::ConcurrentException ( Args &&... args)
inlineexplicit

Constructs the exception object with the given args.

Parameters
[in]argsThe argments to pass to the constructor of the base exception T.
Template Parameters
ArgsThe types of the arguments of the constructor of T.

Definition at line 48 of file concurrentexception.h.

Member Function Documentation

◆ clone()

template<typename T>
ConcurrentException< T > * LC::Util::ConcurrentException< T >::clone ( ) const
inlineoverride

Constructs a copy of this object.

Returns
The copy of this object.

Definition at line 66 of file concurrentexception.h.

◆ raise()

template<typename T>
void LC::Util::ConcurrentException< T >::raise ( ) const
inlineoverride

Rethrows an exception of exactly this type and state.

Exceptions
ConcurrentException<T>

Definition at line 57 of file concurrentexception.h.

◆ what()

template<typename T>
const char * LC::Util::ConcurrentException< T >::what ( ) const
inlineoverridenoexcept

Overrides base pure virtual.

Calls T::what().

Definition at line 75 of file concurrentexception.h.


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