haskell-xmpp-2.0.1: Haskell XMPP (eXtensible Message Passing Protocol, a.k.a. Jabber) library
Copyright(c) pierre 2007
LicenseBSD3
Maintainerk.pierre.k@gmail.com
Stabilityexperimental
Portabilityportable
Safe HaskellNone
LanguageHaskell2010

Network.XMPP.Concurrent

Description

Concurrent actions over single IO channel

Synopsis

Documentation

data Thread e Source #

Instances

Instances details
MonadIO m => XmppSendable (ReaderT (Thread e) m) (Stanza t 'Outgoing ()) Source # 
Instance details

Defined in Network.XMPP.Concurrent

Methods

xmppSend :: Stanza t 'Outgoing () -> ReaderT (Thread e) m () Source #

type XmppThreadT m a e = ReaderT (Thread e) m a Source #

runThreaded :: (FromXML e, MonadIO m, MonadUnliftIO m) => XmppThreadT m () e -> XmppMonad m () Source #

Runs thread in XmppState monad blocks forever.

withNewThread :: (MonadIO m, MonadUnliftIO m) => XmppThreadT m () e -> XmppThreadT m (Async ()) e Source #

Runs specified action in parallel

loop :: MonadIO m => XmppThreadT m () e -> XmppThreadT m () e Source #

Turns action into infinite loop