haxl-2.0.0.0: A Haskell library for efficient, concurrent, and concise data access.

Safe HaskellNone
LanguageHaskell2010

Haxl.Core.Profile

Description

Implementation of lightweight profiling. Most users should import Haxl.Core instead.

Synopsis

Documentation

withLabel :: ProfileLabel -> GenHaxl u a -> GenHaxl u a Source #

Label a computation so profiling data is attributed to the label.

withFingerprintLabel :: Addr# -> Addr# -> GenHaxl u a -> GenHaxl u a Source #

Label a computation so profiling data is attributed to the label. Intended only for internal use by memoFingerprint.

addProfileFetch :: forall r u a. (DataSourceName r, Eq (r a), Hashable (r a), Typeable (r a)) => Env u -> r a -> IO () Source #

collectProfileData :: ProfileLabel -> (Env u -> IO (Result u a)) -> Env u -> IO (Result u a) Source #

Collect profiling data and attribute it to given label.

profileCont :: (Env u -> IO (Result u a)) -> Env u -> IO (Result u a) Source #