module Swarm.ReadableIORef (mkReadonly, ReadableIORef, readIORef) where
import Data.IORef (IORef)
import Data.IORef qualified as R (readIORef)
newtype ReadableIORef a = ReadableIORef (IORef a)
mkReadonly :: IORef a -> ReadableIORef a
mkReadonly :: forall a. IORef a -> ReadableIORef a
mkReadonly = forall a. IORef a -> ReadableIORef a
ReadableIORef
readIORef :: ReadableIORef a -> IO a
readIORef :: forall a. ReadableIORef a -> IO a
readIORef (ReadableIORef IORef a
ref) = forall a. IORef a -> IO a
R.readIORef IORef a
ref