-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Socket effect for polysemy. -- -- Socket effect for polysemy. @package polysemy-socket @version 0.0.1.0 -- | Socket effect for polysemy. module Polysemy.Socket data Socket s k b c m a [Acquire] :: Socket s k b c m s [Bind] :: s -> Socket s k b c m () [Release] :: s -> Socket s k b c m () [Listen] :: s -> Int -> Socket s k b c m () [Accept] :: s -> Socket s k b c m (s, k) [Send] :: s -> c -> Socket s k b c m () [Receive] :: s -> Socket s k b c m b [Close] :: s -> Socket s k b c m () acquire :: forall s_adbR k_adbS b_adbT c_adbU r_adAa. MemberWithError (Socket s_adbR k_adbS b_adbT c_adbU) r_adAa => Sem r_adAa s_adbR bind :: forall s_adbW k_adbX b_adbY c_adbZ r_adAb. MemberWithError (Socket s_adbW k_adbX b_adbY c_adbZ) r_adAb => s_adbW -> Sem r_adAb () listen :: forall s_adc6 k_adc7 b_adc8 c_adc9 r_adAf. MemberWithError (Socket s_adc6 k_adc7 b_adc8 c_adc9) r_adAf => s_adc6 -> Int -> Sem r_adAf () send :: forall s_adcg k_adci b_adcj c_adch r_adAk. MemberWithError (Socket s_adcg k_adci b_adcj c_adch) r_adAk => s_adcg -> c_adch -> Sem r_adAk () receive :: forall s_adcl k_adcm b_adcn c_adco r_adAn. MemberWithError (Socket s_adcl k_adcm b_adcn c_adco) r_adAn => s_adcl -> Sem r_adAn b_adcn release :: forall s_adc1 k_adc2 b_adc3 c_adc4 r_adAd. MemberWithError (Socket s_adc1 k_adc2 b_adc3 c_adc4) r_adAd => s_adc1 -> Sem r_adAd () accept :: forall s_adcb k_adcc b_adcd c_adce r_adAi. MemberWithError (Socket s_adcb k_adcc b_adcd c_adce) r_adAi => s_adcb -> Sem r_adAi (s_adcb, k_adcc) close :: forall s_adcq k_adcr b_adcs c_adct r_adAp. MemberWithError (Socket s_adcq k_adcr b_adcs c_adct) r_adAp => s_adcq -> Sem r_adAp () adaptSocket :: Members '[Socket s k b' c'] r => (b' -> b) -> (c -> c') -> Sem (Socket s k b c : r) a -> Sem r a adaptSocketSem :: Members '[Socket s k b' c'] r => (b' -> Sem r b) -> (c -> Sem r c') -> Sem (Socket s k b c : r) a -> Sem r a runSocketTcp :: forall s r a. (Socket Inet6 Stream TCP ~ s, Members '[Resource, Embed IO, Input Inet6Port] r) => Sem (Socket s (SocketAddress Inet6) ByteString ByteString : r) a -> Sem r a runSocketVirtual :: Members '[State p] r => (c -> p) -> (p -> b) -> Sem (Socket Virtual Virtual b c : r) a -> Sem r a data Virtual traceSocket :: forall s k b c r a. Members '[Socket s k b c, Trace] r => Sem r a -> Sem r a