metro-0.1.0.1: A simple tcp and udp socket server framework

Safe HaskellNone
LanguageHaskell2010

Metro.IOHashMap

Documentation

data IOHashMap a b Source #

insert :: (Eq a, Hashable a, MonadIO m) => IOHashMap a b -> a -> b -> m () Source #

delete :: (Eq a, Hashable a, MonadIO m) => IOHashMap a b -> a -> m () Source #

lookup :: (Eq a, Hashable a, MonadIO m) => IOHashMap a b -> a -> m (Maybe b) Source #

update :: (Eq a, Hashable a, MonadIO m) => IOHashMap a b -> (b -> Maybe b) -> a -> m () Source #

adjust :: (Eq a, Hashable a, MonadIO m) => IOHashMap a b -> (b -> b) -> a -> m () Source #

alter :: (Eq a, Hashable a, MonadIO m) => IOHashMap a b -> (Maybe b -> Maybe b) -> a -> m () Source #

null :: MonadIO m => IOHashMap a b -> m Bool Source #

size :: MonadIO m => IOHashMap a b -> m Int Source #

member :: (Eq a, Hashable a, MonadIO m) => IOHashMap a b -> a -> m Bool Source #

keys :: MonadIO m => IOHashMap a b -> m [a] Source #

elems :: MonadIO m => IOHashMap a b -> m [b] Source #

clear :: MonadIO m => IOHashMap a b -> m () Source #

toList :: MonadIO m => IOHashMap a b -> m [(a, b)] Source #

insertSTM :: (Eq a, Hashable a) => IOHashMap a b -> a -> b -> STM () Source #

lookupSTM :: (Eq a, Hashable a) => IOHashMap a b -> a -> STM (Maybe b) Source #

foldrWithKeySTM :: IOHashMap a b -> (a -> b -> c -> c) -> c -> STM c Source #

deleteSTM :: (Eq a, Hashable a) => IOHashMap a b -> a -> STM () Source #