LeechCraft  0.6.70-3565-g2d86529
Modular cross-platform feature rich live environment.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
futures.h File Reference
#include <type_traits>
#include <functional>
#include <memory>
#include <QFutureWatcher>
#include <QtConcurrentRun>
#include "slotclosure.h"
+ Include dependency graph for futures.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  LeechCraft::Util::detail::UnwrapFutureType< T >
 
struct  LeechCraft::Util::detail::UnwrapFutureType< QFuture< T > >
 
struct  LeechCraft::Util::detail::IsFuture< T >
 
struct  LeechCraft::Util::detail::IsFuture< QFuture< T > >
 
struct  LeechCraft::Util::detail::HandlerInvoker< RetType, ResultHandler >
 
struct  LeechCraft::Util::detail::HandlerInvoker< void, ResultHandler >
 
class  LeechCraft::Util::detail::Sequencer< Executor, Args >
 Incapsulates the sequencing logic of asynchronous actions. More...
 
class  LeechCraft::Util::detail::SequenceProxy< Ret, E0, A0 >
 A proxy object allowing type-checked sequencing of actions and responsible for starting the initial action. More...
 

Namespaces

 LeechCraft
 
 LeechCraft::Util
 
 LeechCraft::Util::detail
 

Typedefs

template<typename T >
using LeechCraft::Util::detail::UnwrapFutureType_t = typename UnwrapFutureType< T >::type
 

Functions

template<typename Executor , typename ResultHandler , typename... Args>
void LeechCraft::Util::ExecuteFuture (Executor f, ResultHandler rh, QObject *parent, Args...args)
 Runs a QFuture-returning function and feeding the future to a handler when it is ready. More...
 
template<typename Executor , typename... Args>
detail::SequenceProxy
< typename detail::Sequencer
< Executor, Args...>
::RetType_t, Executor, Args...> 
LeechCraft::Util::Sequence (QObject *parent, Executor f, Args...args)
 Creates a sequencer that allows chaining multiple futures. More...