packages feed

unclogging-0.1.0.0: src/Control/Effect/Unclog.hs

module Control.Effect.Unclog (Log (..), publishLogEntry) where

import Chronos.Types (Time)
import Control.Algebra (Has, send)
import Unclog.Common (LogEntry)

data Log m r where
  PublishLogEntry :: (Time -> LogEntry) -> Log m ()

publishLogEntry :: Has Log sig m => (Time -> LogEntry) -> m ()
publishLogEntry = send . PublishLogEntry
{-# INLINE publishLogEntry #-}