never executed always true always false
    1 {-# OPTIONS_HADDOCK not-home #-}
    2 -- | This module exports 'MBloom'' internals.
    3 module Data.BloomFilter.Mutable.Internal (
    4     MBloom'(..),
    5 ) where
    6 
    7 import qualified Data.BloomFilter.BitVec64 as V
    8 import           Data.Kind (Type)
    9 import           Data.Word (Word64)
   10 
   11 import           Prelude hiding (div, divMod, elem, length, mod, notElem, rem,
   12                      (*), (/))
   13 
   14 -- | A mutable Bloom filter, for use within the 'ST' monad.
   15 type MBloom' :: Type -> (Type -> Type) -> Type -> Type
   16 data MBloom' s h a = MBloom {
   17       hashesN  :: {-# UNPACK #-} !Int
   18     , size     :: {-# UNPACK #-} !Word64  -- ^ size is non-zero
   19     , bitArray :: {-# UNPACK #-} !(V.MBitVec64 s)
   20     }
   21 type role MBloom' nominal nominal nominal
   22 
   23 instance Show (MBloom' s h a) where
   24     show mb = "MBloom { " ++ show (size mb) ++ " bits } "