{-# LANGUAGE CPP #-}
{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveFunctor #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE GADTs #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE RankNTypes #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE StandaloneDeriving #-}
module UnliftIO.Async
(
Async,
async, asyncBound, asyncOn, asyncWithUnmask, asyncOnWithUnmask,
withAsync, withAsyncBound, withAsyncOn, withAsyncWithUnmask,
withAsyncOnWithUnmask,
wait, poll, waitCatch, cancel, uninterruptibleCancel, cancelWith,
A.asyncThreadId,
A.waitSTM, A.pollSTM, A.waitCatchSTM,
waitAny, waitAnyCatch, waitAnyCancel, waitAnyCatchCancel,
waitEither, waitEitherCatch, waitEitherCancel, waitEitherCatchCancel,
waitEither_,
waitBoth,
A.waitAnySTM, A.waitAnyCatchSTM,
A.waitEitherSTM, A.waitEitherCatchSTM,
A.waitEitherSTM_,
A.waitBothSTM,
link, link2,
pooledMapConcurrentlyN,
pooledMapConcurrently,
pooledMapConcurrentlyN_,
pooledMapConcurrently_,
pooledForConcurrentlyN,
pooledForConcurrently,
pooledForConcurrentlyN_,
pooledForConcurrently_,
pooledReplicateConcurrentlyN,
pooledReplicateConcurrently,
pooledReplicateConcurrentlyN_,
pooledReplicateConcurrently_,
race, race_,
concurrently, concurrently_,
mapConcurrently, forConcurrently,
mapConcurrently_, forConcurrently_,
replicateConcurrently, replicateConcurrently_,
Concurrently (..),
#if MIN_VERSION_base(4,8,0)
Conc, conc, runConc,
ConcException (..),
#endif
#if MIN_VERSION_async(2,2,0)
A.AsyncCancelled (..),
#endif
) where
import Control.Concurrent.Async (Async)
import qualified Control.Concurrent.Async as A
import UnliftIO.Internals.Async