timer-wheel-1.0.0: src/TimerWheel/Internal/Prelude.hs
module TimerWheel.Internal.Prelude
( Seconds,
module X,
)
where
import Control.Monad as X (when)
import Data.Coerce as X (coerce)
import Data.Fixed (E9, Fixed)
import Data.IORef as X (IORef, newIORef, readIORef, writeIORef)
import Data.Word as X (Word64)
import GHC.Generics as X (Generic)
import Prelude as X hiding (lookup, null)
-- | A number of seconds, with nanosecond precision.
--
-- You can use numeric literals to construct a value of this type, e.g. @0.5@.
--
-- Otherwise, to convert from a type like @Int@ or @Double@, you can use the generic numeric conversion function
-- @realToFrac@.
type Seconds =
Fixed E9