cabal-version: 2.0 name: timer-wheel version: 0.2.0 category: Data description: This library provides a timer wheel data structure for . * /O(1)/ registering @IO@ actions to fire after a given amount of time * /O(1)/ canceling registered actions . It is similar to @TimerManager@ from "GHC.Event", but can scale much better under concurrent access patterns. . An unreleased version of this library has a @backpack@-based signature for selecting from a variety of different data structures used internally. However, until @backpack@ has broader support on Hackage, and in Haddocks, etc, I decided to just hard-code something decent (a priority search queue). This makes the @O(1)@ claims above a bit of a lie, as these rely on using a linked list data structure internally. synopsis: A timer wheel author: Mitchell Rosen maintainer: Mitchell Rosen homepage: https://github.com/mitchellwrosen/timer-wheel bug-reports: https://github.com/mitchellwrosen/timer-wheel/issues copyright: (c) 2018, Mitchell Rosen license: BSD3 license-file: LICENSE build-type: Simple tested-with: GHC == 8.0.2 , GHC == 8.2.2 , GHC == 8.4.4 , GHC == 8.6.3 extra-source-files: .travis.yml CHANGELOG.md source-repository head type: git location: git://github.com/mitchellwrosen/timer-wheel.git library build-depends: atomic-primops ^>= 0.8, base ^>= 4.9 || ^>= 4.10 || ^>= 4.11 || ^>= 4.12, ghc-prim ^>= 0.5, primitive ^>= 0.6, psqueues ^>= 0.2.7 if !impl(ghc >= 8.4) build-depends: clock ^>= 0.7 default-extensions: DeriveGeneric GeneralizedNewtypeDeriving LambdaCase NamedFieldPuns RecursiveDo ScopedTypeVariables TupleSections TypeApplications ViewPatterns default-language: Haskell2010 exposed-modules: Data.TimerWheel ghc-options: -fprint-expanded-synonyms -fprint-explicit-foralls -fprint-explicit-kinds -fprint-unicode-syntax -Wall -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-local-signatures -Wnoncanonical-monad-instances -Wnoncanonical-monadfail-instances -Wredundant-constraints if impl(ghc >= 8.4) ghc-options: -Wpartial-fields -Wmissing-export-lists hs-source-dirs: src other-modules: Entries Supply Wheel test-suite tests build-depends: base, random, timer-wheel default-language: Haskell2010 ghc-options: -threaded -with-rtsopts=-N2 -Wall hs-source-dirs: test main-is: Main.hs type: exitcode-stdio-1.0