time-out-0.2: time-out.cabal
name: time-out
version: 0.2
cabal-version: >=1.10
build-type: Simple
license: PublicDomain
license-file: COPYING
copyright: ♡ Copying is an act of love. Please copy, reuse and share.
maintainer: fr33domlover@riseup.net
homepage: http://hub.darcs.net/fr33domlover/time-out
bug-reports: mailto:fr33domlover@riseup.net
synopsis: Timers, timeouts, alarms, monadic wrappers
description:
This library provides several timer and timeout related tools:
.
* "Control.Timeout" - Execution of a computation with a time limit, aborting
it if the limit is reached before the computation finishes. It is
more-or-less a lifted version of "System.Timeout" from the @base@ package.
It's good for single use, but it launches a temporary helper thread. If you
want to time-limit actions continuously (e.g. if you're implementing a
network protocol), you should probably use one of the other tools described
below, since they use a single dedicated thread for all the timeouts.
.
* "Control.Timer" - Managing a timer running in a dedicated thread. The timer
waits for an amount of time you specify, and then runs an action you
specify. You can stop and restart it at any time.
.
* "Control.Alarm" - Managing an alarm, which is a timer whose action is to
notify your thread when the specified amount of time passes.
.
* "Control.Monad.Trans.Timer" - A monad transformer for managing a timer
.
* "Control.Monad.Trans.Alarm" - A monad transformer for managing an alarm
.
* "Control.Monad.Trans.Timeout" - A monad transformer for running actions
with timeouts, useful for e.g. network protocols where any send and receive
can timeout
.
* "Control.Monad.Timeout.Class" - A monad typeclass for running actions with
a time limit. "Control.Timeout" provides a simple trivial for IO (which can
then be used with any @MonadIO@), and "Control.Monad.Trans.Timeout"
provides a scalable instance.
category: Control, Monad, Time, Timeout
author: fr33domlover
extra-source-files:
AUTHORS
ChangeLog
COPYING
INSTALL.md
NEWS.md
README.md
source-repository head
type: darcs
location: http://hub.darcs.net/fr33domlover/time-out
library
exposed-modules:
Control.Alarm
Control.Monad.Timeout.Class
Control.Monad.Trans.Alarm
Control.Monad.Trans.Timeout
Control.Monad.Trans.Timer
Control.Timer
Control.Timeout
build-depends:
base >=4.8 && <5,
data-default-class >=0.0.1,
exceptions >=0.8.2.1,
time-interval >=0.1.1,
time-units >=1.0.0,
transformers >=0.4.2.0
default-language: Haskell2010
hs-source-dirs: src
ghc-options: -Wall
test-suite test
type: exitcode-stdio-1.0
main-is: test.hs
build-depends:
base >=4.8.2.0,
time-out >=0.2,
time-units >=1.0.0,
transformers >=0.4.2.0
default-language: Haskell2010
hs-source-dirs: test