{-# options_haddock prune #-}
module Polysemy.Process.Effect.ProcessOutput where
data OutputPipe =
Stdout
|
Stderr
deriving stock (OutputPipe -> OutputPipe -> Bool
(OutputPipe -> OutputPipe -> Bool)
-> (OutputPipe -> OutputPipe -> Bool) -> Eq OutputPipe
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: OutputPipe -> OutputPipe -> Bool
$c/= :: OutputPipe -> OutputPipe -> Bool
== :: OutputPipe -> OutputPipe -> Bool
$c== :: OutputPipe -> OutputPipe -> Bool
Eq, Int -> OutputPipe -> ShowS
[OutputPipe] -> ShowS
OutputPipe -> String
(Int -> OutputPipe -> ShowS)
-> (OutputPipe -> String)
-> ([OutputPipe] -> ShowS)
-> Show OutputPipe
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [OutputPipe] -> ShowS
$cshowList :: [OutputPipe] -> ShowS
show :: OutputPipe -> String
$cshow :: OutputPipe -> String
showsPrec :: Int -> OutputPipe -> ShowS
$cshowsPrec :: Int -> OutputPipe -> ShowS
Show)
data ProcessOutput (p :: OutputPipe) a :: Effect where
Chunk ::
ByteString ->
ByteString ->
ProcessOutput p a m ([a], ByteString)
makeSem ''ProcessOutput