{-# options_haddock prune #-}
module Helic.Tmux where
import qualified Polysemy.Process as Process
import Polysemy.Process (Process)
import Polysemy.Process.Effect.Process (withProcess)
import Helic.Data.Event (Event (Event))
sendToTmux ::
∀ o e resource r .
Members [Scoped resource (Process ByteString o e), Log] r =>
Event ->
Sem r ()
sendToTmux :: Event -> Sem r ()
sendToTmux (Event InstanceName
_ AgentId
_ Time
_ Text
text) =
Sem (Process ByteString o e : r) () -> Sem r ()
forall resource i o e (r :: EffectRow).
Member (Scoped resource (Process i o e)) r =>
InterpreterFor (Process i o e) r
withProcess do
ByteString -> Sem (Process ByteString o e : r) ()
forall i o e (r :: EffectRow).
Member (Process i o e) r =>
i -> Sem r ()
Process.send (Text -> ByteString
forall a b. ConvertUtf8 a b => a -> b
encodeUtf8 Text
text)