name: concurrent-extra
version: 0.1.0.1
cabal-version: >= 1.6
build-type: Custom
stability: experimental
author: Bas van Dijk <v.dijk.bas@gmail.com>
Roel van Dijk <vandijk.roel@gmail.com>
maintainer: Bas van Dijk <v.dijk.bas@gmail.com>
Roel van Dijk <vandijk.roel@gmail.com>
copyright: (c) 2010 Bas van Dijk & Roel van Dijk
license: BSD3
license-file: LICENSE
category: Concurrency
synopsis: Extra concurrency primitives
description:
Offers a selection of synchronization primitives:
.
* Lock: Enforce exclusive access to a resource. Also known as a
binary semaphore.
.
* RLock: A lock which can be acquired multiple times by the same
thread. Also known as a reentrant mutex.
.
* Event: Wake multiple threads by signaling an event.
.
* ReadWriteLock: Multiple-reader, single-writer locks. Used to
protect shared resources which may be concurrently read, but only
sequentially written.
.
* ReadWriteVar: Concurrent read, sequential write variables.
.
Please consult the API documentation of the individual modules for
more detailed information.
.
Inspired by the concurrency libraries of Java and Python.
--source-repository head
-- Type: darcs
-- Location: http://code.haskell.org/concurrent-extra
-------------------------------------------------------------------------------
flag test
description: Build the testing suite
default: False
flag hpc
description: Enable program coverage on test executable
default: False
flag nolib
description: Don't build the library
default: False
-------------------------------------------------------------------------------
library
build-depends: base >= 3 && < 4.3
, base-unicode-symbols >= 0.1.1 && < 0.2
, stm >= 2.1.1 && < 2.2
exposed-modules: Control.Concurrent.Lock
, Control.Concurrent.RLock
, Control.Concurrent.Event
, Control.Concurrent.ReadWriteLock
, Control.Concurrent.ReadWriteVar
, Control.Concurrent.STM.Event
ghc-options: -Wall
if flag(nolib)
buildable: False
-------------------------------------------------------------------------------
executable test-concurrent-extra
main-is: test.hs
ghc-options: -Wall
if flag(test)
build-depends: HUnit >= 1.2.2 && < 1.3
, QuickCheck >= 2.1.0 && < 2.2
, test-framework >= 0.2.4 && < 0.3
, test-framework-hunit >= 0.2.4 && < 0.3
, test-framework-quickcheck2 >= 0.2.4 && < 0.3
buildable: True
else
buildable: False
if flag(hpc)
ghc-options: -fhpc