websockets-simple-0.0.4: Simpler interface to the websockets api

Safe HaskellNone
LanguageHaskell2010

Network.WebSockets.Simple

Synopsis

Documentation

data WebSocketsAppParams send m Source #

Constructors

WebSocketsAppParams 

Fields

Instances

Generic (WebSocketsAppParams send m) Source # 

Associated Types

type Rep (WebSocketsAppParams send m) :: * -> * #

Methods

from :: WebSocketsAppParams send m -> Rep (WebSocketsAppParams send m) x #

to :: Rep (WebSocketsAppParams send m) x -> WebSocketsAppParams send m #

type Rep (WebSocketsAppParams send m) Source # 
type Rep (WebSocketsAppParams send m) = D1 (MetaData "WebSocketsAppParams" "Network.WebSockets.Simple" "websockets-simple-0.0.4-GTX2AwUs0Cm37PNYFFLfoJ" False) (C1 (MetaCons "WebSocketsAppParams" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "send") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (send -> m ()))) (S1 (MetaSel (Just Symbol "close") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (m ())))))

data WebSocketsApp send receive m Source #

Constructors

WebSocketsApp 

Fields

Instances

Generic (WebSocketsApp send receive m) Source # 

Associated Types

type Rep (WebSocketsApp send receive m) :: * -> * #

Methods

from :: WebSocketsApp send receive m -> Rep (WebSocketsApp send receive m) x #

to :: Rep (WebSocketsApp send receive m) x -> WebSocketsApp send receive m #

type Rep (WebSocketsApp send receive m) Source # 
type Rep (WebSocketsApp send receive m) = D1 (MetaData "WebSocketsApp" "Network.WebSockets.Simple" "websockets-simple-0.0.4-GTX2AwUs0Cm37PNYFFLfoJ" False) (C1 (MetaCons "WebSocketsApp" PrefixI True) ((:*:) (S1 (MetaSel (Just Symbol "onOpen") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (WebSocketsAppParams send m -> m ()))) ((:*:) (S1 (MetaSel (Just Symbol "onReceive") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (WebSocketsAppParams send m -> receive -> m ()))) (S1 (MetaSel (Just Symbol "onClose") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe (Word16, ByteString) -> m ()))))))

hoistWebSocketsApp :: (forall a. m a -> n a) -> (forall a. n a -> m a) -> WebSocketsApp send receive m -> WebSocketsApp send receive n Source #

toClientAppT :: forall send receive m. (ToJSON send, FromJSON receive, MonadBaseControl IO m, MonadThrow m, MonadCatch m) => WebSocketsApp send receive m -> ClientAppT m (Maybe WebSocketsAppThreads) Source #

This can throw a WebSocketSimpleError when json parsing fails. However, do note: the onOpen is called once, but is still forked when called. Likewise, the onReceive function is called every time a (parsable) response is received from the other party, and is forked on every invocation.

toClientAppT' :: (ToJSON send, FromJSON receive, MonadBaseControl IO m, MonadThrow m, MonadCatch m) => WebSocketsApp send receive m -> ClientAppT m () Source #