module Data.STRef ( STRef, newSTRef, readSTRef, writeSTRef, modifySTRef, modifySTRef' ) where import Prelude #ifdef __GLASGOW_HASKELL__ import GHC.ST import GHC.STRef #endif #ifdef __HUGS__ import Hugs.ST import Data.Typeable #include "Typeable.h" INSTANCE_TYPEABLE2(STRef,stRefTc,"STRef") #endif modifySTRef :: STRef s a -> (a -> a) -> ST s () modifySTRef ref f = writeSTRef ref . f =<< readSTRef ref modifySTRef' :: STRef s a -> (a -> a) -> ST s () modifySTRef' ref f = do x <- readSTRef ref let x' = f x x' `seq` writeSTRef ref x'
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4