{-# LANGUAGE MagicHash #-}
module Effectful.Concurrent.STM.Utils
( evaluateSTM,
)
where
import GHC.Conc (STM (STM))
import GHC.Exts (seq#)
evaluateSTM :: a -> STM a
evaluateSTM :: forall a. a -> STM a
evaluateSTM a
a = (State# RealWorld -> (# State# RealWorld, a #)) -> STM a
forall a. (State# RealWorld -> (# State# RealWorld, a #)) -> STM a
STM ((State# RealWorld -> (# State# RealWorld, a #)) -> STM a)
-> (State# RealWorld -> (# State# RealWorld, a #)) -> STM a
forall a b. (a -> b) -> a -> b
$ \State# RealWorld
s -> a -> State# RealWorld -> (# State# RealWorld, a #)
forall a s. a -> State# s -> (# State# s, a #)
seq# a
a State# RealWorld
s