Criterion.Monad

criterion-1.1.1.0: Robust, reliable performance measurement and analysis

Copyright | (c) 2009 Neil Brown
License | BSD-style
Maintainer | bos@serpentine.com
Stability | experimental
Portability | GHC
Safe Haskell | None
Language | Haskell98

Criterion.Monad

Description

The environment in which most criterion code executes.

Synopsis

- data Criterion a
- withConfig :: Config -> Criterion a -> IO a
- getGen :: Criterion GenIO
- getOverhead :: Criterion Double

# Documentation

data Criterion a

The monad in which most criterion code executes.

Instances

Monad Criterion |
Functor Criterion |
Applicative Criterion |
MonadIO Criterion |
MonadReader Config Criterion |
CritHPrintfType (Criterion a) |

withConfig :: Config -> Criterion a -> IO a

Run a `Criterion` action with the given `Config`.

getGen :: Criterion GenIO

Return a random number generator, creating one if necessary.

This is not currently thread-safe, but in a harmless way (we might call `createSystemRandom` more than once if multiple threads race).

getOverhead :: Criterion Double

Return an estimate of the measurement overhead.