{-# LINE 1 "src/System/ZMQ4/Internal/Base.hsc" #-}
{-# LANGUAGE CPP #-}
{-# LANGUAGE ForeignFunctionInterface #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
module System.ZMQ4.Internal.Base where
import Foreign
import Foreign.C.Types
import Foreign.C.String
import Control.Applicative
import Prelude
{-# LINE 20 "src/System/ZMQ4/Internal/Base.hsc" #-}
newtype ZMQMsg = ZMQMsg
{ ZMQMsg -> Ptr ()
content :: Ptr ()
} deriving (ZMQMsg -> ZMQMsg -> Bool
(ZMQMsg -> ZMQMsg -> Bool)
-> (ZMQMsg -> ZMQMsg -> Bool) -> Eq ZMQMsg
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ZMQMsg -> ZMQMsg -> Bool
== :: ZMQMsg -> ZMQMsg -> Bool
$c/= :: ZMQMsg -> ZMQMsg -> Bool
/= :: ZMQMsg -> ZMQMsg -> Bool
Eq, Eq ZMQMsg
Eq ZMQMsg =>
(ZMQMsg -> ZMQMsg -> Ordering)
-> (ZMQMsg -> ZMQMsg -> Bool)
-> (ZMQMsg -> ZMQMsg -> Bool)
-> (ZMQMsg -> ZMQMsg -> Bool)
-> (ZMQMsg -> ZMQMsg -> Bool)
-> (ZMQMsg -> ZMQMsg -> ZMQMsg)
-> (ZMQMsg -> ZMQMsg -> ZMQMsg)
-> Ord ZMQMsg
ZMQMsg -> ZMQMsg -> Bool
ZMQMsg -> ZMQMsg -> Ordering
ZMQMsg -> ZMQMsg -> ZMQMsg
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: ZMQMsg -> ZMQMsg -> Ordering
compare :: ZMQMsg -> ZMQMsg -> Ordering
$c< :: ZMQMsg -> ZMQMsg -> Bool
< :: ZMQMsg -> ZMQMsg -> Bool
$c<= :: ZMQMsg -> ZMQMsg -> Bool
<= :: ZMQMsg -> ZMQMsg -> Bool
$c> :: ZMQMsg -> ZMQMsg -> Bool
> :: ZMQMsg -> ZMQMsg -> Bool
$c>= :: ZMQMsg -> ZMQMsg -> Bool
>= :: ZMQMsg -> ZMQMsg -> Bool
$cmax :: ZMQMsg -> ZMQMsg -> ZMQMsg
max :: ZMQMsg -> ZMQMsg -> ZMQMsg
$cmin :: ZMQMsg -> ZMQMsg -> ZMQMsg
min :: ZMQMsg -> ZMQMsg -> ZMQMsg
Ord)
instance Storable ZMQMsg where
alignment :: ZMQMsg -> Int
alignment ZMQMsg
_ = Int
8
{-# LINE 30 "src/System/ZMQ4/Internal/Base.hsc" #-}
sizeOf _ = (64)
{-# LINE 31 "src/System/ZMQ4/Internal/Base.hsc" #-}
peek p = ZMQMsg <$> (\hsc_ptr -> peekByteOff hsc_ptr 0) p
{-# LINE 32 "src/System/ZMQ4/Internal/Base.hsc" #-}
poke p (ZMQMsg c) = (\hsc_ptr -> pokeByteOff hsc_ptr 0) p c
{-# LINE 33 "src/System/ZMQ4/Internal/Base.hsc" #-}
data ZMQPoll = ZMQPoll
{ ZMQPoll -> Ptr ()
pSocket :: {-# UNPACK #-} !ZMQSocket
, ZMQPoll -> CInt
pFd :: {-# UNPACK #-} !CInt
, ZMQPoll -> CShort
pEvents :: {-# UNPACK #-} !CShort
, ZMQPoll -> CShort
pRevents :: {-# UNPACK #-} !CShort
}
instance Storable ZMQPoll where
alignment :: ZMQPoll -> Int
alignment ZMQPoll
_ = Int
8
{-# LINE 46 "src/System/ZMQ4/Internal/Base.hsc" #-}
sizeOf _ = (16)
{-# LINE 47 "src/System/ZMQ4/Internal/Base.hsc" #-}
peek p = do
s <- (\hsc_ptr -> peekByteOff hsc_ptr 0) p
{-# LINE 49 "src/System/ZMQ4/Internal/Base.hsc" #-}
f <- (\hsc_ptr -> peekByteOff hsc_ptr 8) p
{-# LINE 50 "src/System/ZMQ4/Internal/Base.hsc" #-}
e <- (\hsc_ptr -> peekByteOff hsc_ptr 12) p
{-# LINE 51 "src/System/ZMQ4/Internal/Base.hsc" #-}
re <- (\hsc_ptr -> peekByteOff hsc_ptr 14) p
{-# LINE 52 "src/System/ZMQ4/Internal/Base.hsc" #-}
return $ ZMQPoll s f e re
poke :: Ptr ZMQPoll -> ZMQPoll -> IO ()
poke Ptr ZMQPoll
p (ZMQPoll Ptr ()
s CInt
f CShort
e CShort
re) = do
(\Ptr ZMQPoll
hsc_ptr -> Ptr ZMQPoll -> Int -> Ptr () -> IO ()
forall b. Ptr b -> Int -> Ptr () -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr ZMQPoll
hsc_ptr Int
0) Ptr ZMQPoll
p Ptr ()
s
{-# LINE 55 "src/System/ZMQ4/Internal/Base.hsc" #-}
(\Ptr ZMQPoll
hsc_ptr -> Ptr ZMQPoll -> Int -> CInt -> IO ()
forall b. Ptr b -> Int -> CInt -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr ZMQPoll
hsc_ptr Int
8) Ptr ZMQPoll
p CInt
f
{-# LINE 56 "src/System/ZMQ4/Internal/Base.hsc" #-}
(\Ptr ZMQPoll
hsc_ptr -> Ptr ZMQPoll -> Int -> CShort -> IO ()
forall b. Ptr b -> Int -> CShort -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr ZMQPoll
hsc_ptr Int
12) Ptr ZMQPoll
p CShort
e
{-# LINE 57 "src/System/ZMQ4/Internal/Base.hsc" #-}
(\Ptr ZMQPoll
hsc_ptr -> Ptr ZMQPoll -> Int -> CShort -> IO ()
forall b. Ptr b -> Int -> CShort -> IO ()
forall a b. Storable a => Ptr b -> Int -> a -> IO ()
pokeByteOff Ptr ZMQPoll
hsc_ptr Int
14) Ptr ZMQPoll
p CShort
re
{-# LINE 58 "src/System/ZMQ4/Internal/Base.hsc" #-}
type ZMQMsgPtr = Ptr ZMQMsg
type ZMQCtx = Ptr ()
type ZMQSocket = Ptr ()
type ZMQPollPtr = Ptr ZMQPoll
{-# LINE 67 "src/System/ZMQ4/Internal/Base.hsc" #-}
newtype ZMQSocketType = ZMQSocketType
{ ZMQSocketType -> CInt
typeVal :: CInt
} deriving (ZMQSocketType -> ZMQSocketType -> Bool
(ZMQSocketType -> ZMQSocketType -> Bool)
-> (ZMQSocketType -> ZMQSocketType -> Bool) -> Eq ZMQSocketType
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ZMQSocketType -> ZMQSocketType -> Bool
== :: ZMQSocketType -> ZMQSocketType -> Bool
$c/= :: ZMQSocketType -> ZMQSocketType -> Bool
/= :: ZMQSocketType -> ZMQSocketType -> Bool
Eq, Eq ZMQSocketType
Eq ZMQSocketType =>
(ZMQSocketType -> ZMQSocketType -> Ordering)
-> (ZMQSocketType -> ZMQSocketType -> Bool)
-> (ZMQSocketType -> ZMQSocketType -> Bool)
-> (ZMQSocketType -> ZMQSocketType -> Bool)
-> (ZMQSocketType -> ZMQSocketType -> Bool)
-> (ZMQSocketType -> ZMQSocketType -> ZMQSocketType)
-> (ZMQSocketType -> ZMQSocketType -> ZMQSocketType)
-> Ord ZMQSocketType
ZMQSocketType -> ZMQSocketType -> Bool
ZMQSocketType -> ZMQSocketType -> Ordering
ZMQSocketType -> ZMQSocketType -> ZMQSocketType
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: ZMQSocketType -> ZMQSocketType -> Ordering
compare :: ZMQSocketType -> ZMQSocketType -> Ordering
$c< :: ZMQSocketType -> ZMQSocketType -> Bool
< :: ZMQSocketType -> ZMQSocketType -> Bool
$c<= :: ZMQSocketType -> ZMQSocketType -> Bool
<= :: ZMQSocketType -> ZMQSocketType -> Bool
$c> :: ZMQSocketType -> ZMQSocketType -> Bool
> :: ZMQSocketType -> ZMQSocketType -> Bool
$c>= :: ZMQSocketType -> ZMQSocketType -> Bool
>= :: ZMQSocketType -> ZMQSocketType -> Bool
$cmax :: ZMQSocketType -> ZMQSocketType -> ZMQSocketType
max :: ZMQSocketType -> ZMQSocketType -> ZMQSocketType
$cmin :: ZMQSocketType -> ZMQSocketType -> ZMQSocketType
min :: ZMQSocketType -> ZMQSocketType -> ZMQSocketType
Ord)
pair :: ZMQSocketType
pair :: ZMQSocketType
pair = CInt -> ZMQSocketType
ZMQSocketType CInt
0
pub :: ZMQSocketType
pub :: ZMQSocketType
pub = CInt -> ZMQSocketType
ZMQSocketType CInt
1
sub :: ZMQSocketType
sub :: ZMQSocketType
sub = CInt -> ZMQSocketType
ZMQSocketType CInt
2
xpub :: ZMQSocketType
xpub :: ZMQSocketType
xpub = CInt -> ZMQSocketType
ZMQSocketType CInt
9
xsub :: ZMQSocketType
xsub :: ZMQSocketType
xsub = CInt -> ZMQSocketType
ZMQSocketType CInt
10
request :: ZMQSocketType
request :: ZMQSocketType
request = CInt -> ZMQSocketType
ZMQSocketType CInt
3
response :: ZMQSocketType
response :: ZMQSocketType
response = CInt -> ZMQSocketType
ZMQSocketType CInt
4
dealer :: ZMQSocketType
dealer :: ZMQSocketType
dealer = CInt -> ZMQSocketType
ZMQSocketType CInt
5
router :: ZMQSocketType
router :: ZMQSocketType
router = CInt -> ZMQSocketType
ZMQSocketType CInt
6
pull :: ZMQSocketType
pull :: ZMQSocketType
pull = CInt -> ZMQSocketType
ZMQSocketType CInt
7
push :: ZMQSocketType
push :: ZMQSocketType
push = CInt -> ZMQSocketType
ZMQSocketType CInt
8
stream :: ZMQSocketType
stream :: ZMQSocketType
stream = CInt -> ZMQSocketType
ZMQSocketType CInt
11
{-# LINE 89 "src/System/ZMQ4/Internal/Base.hsc" #-}
newtype ZMQOption = ZMQOption
{ optVal :: CInt
} deriving (Eq, Ord)
affinity :: ZMQOption
affinity = ZMQOption 4
backlog :: ZMQOption
backlog = ZMQOption 19
conflate :: ZMQOption
conflate :: ZMQOption
conflate = CInt -> ZMQOption
ZMQOption CInt
54
curve :: ZMQOption
curve :: ZMQOption
curve = CInt -> ZMQOption
ZMQOption CInt
2
curvePublicKey :: ZMQOption
curvePublicKey :: ZMQOption
curvePublicKey = CInt -> ZMQOption
ZMQOption CInt
48
curveSecretKey :: ZMQOption
curveSecretKey :: ZMQOption
curveSecretKey = CInt -> ZMQOption
ZMQOption CInt
49
curveServer :: ZMQOption
curveServer :: ZMQOption
curveServer = CInt -> ZMQOption
ZMQOption CInt
47
curveServerKey :: ZMQOption
curveServerKey :: ZMQOption
curveServerKey = CInt -> ZMQOption
ZMQOption CInt
50
delayAttachOnConnect :: ZMQOption
delayAttachOnConnect :: ZMQOption
delayAttachOnConnect = CInt -> ZMQOption
ZMQOption CInt
39
events :: ZMQOption
events :: ZMQOption
events = CInt -> ZMQOption
ZMQOption CInt
15
filedesc :: ZMQOption
filedesc :: ZMQOption
filedesc = CInt -> ZMQOption
ZMQOption CInt
14
identity :: ZMQOption
identity :: ZMQOption
identity = CInt -> ZMQOption
ZMQOption CInt
5
immediate :: ZMQOption
immediate :: ZMQOption
immediate = CInt -> ZMQOption
ZMQOption CInt
39
ipv4Only :: ZMQOption
ipv4Only :: ZMQOption
ipv4Only = CInt -> ZMQOption
ZMQOption CInt
31
ipv6 :: ZMQOption
ipv6 :: ZMQOption
ipv6 = CInt -> ZMQOption
ZMQOption CInt
42
lastEndpoint :: ZMQOption
lastEndpoint :: ZMQOption
lastEndpoint = CInt -> ZMQOption
ZMQOption CInt
32
linger :: ZMQOption
linger :: ZMQOption
linger = CInt -> ZMQOption
ZMQOption CInt
17
maxMessageSize :: ZMQOption
maxMessageSize :: ZMQOption
maxMessageSize = CInt -> ZMQOption
ZMQOption CInt
22
mcastHops :: ZMQOption
mcastHops :: ZMQOption
mcastHops = CInt -> ZMQOption
ZMQOption CInt
25
mechanism :: ZMQOption
mechanism :: ZMQOption
mechanism = CInt -> ZMQOption
ZMQOption CInt
43
null :: ZMQOption
null :: ZMQOption
null = CInt -> ZMQOption
ZMQOption CInt
0
plain :: ZMQOption
plain :: ZMQOption
plain = CInt -> ZMQOption
ZMQOption CInt
1
plainPassword :: ZMQOption
plainPassword :: ZMQOption
plainPassword = CInt -> ZMQOption
ZMQOption CInt
46
plainServer :: ZMQOption
plainServer :: ZMQOption
plainServer = CInt -> ZMQOption
ZMQOption CInt
44
plainUserName :: ZMQOption
plainUserName :: ZMQOption
plainUserName = CInt -> ZMQOption
ZMQOption CInt
45
probeRouter :: ZMQOption
probeRouter :: ZMQOption
probeRouter = CInt -> ZMQOption
ZMQOption CInt
51
rate :: ZMQOption
rate :: ZMQOption
rate = CInt -> ZMQOption
ZMQOption CInt
8
receiveBuf :: ZMQOption
receiveBuf :: ZMQOption
receiveBuf = CInt -> ZMQOption
ZMQOption CInt
12
receiveHighWM :: ZMQOption
receiveHighWM = ZMQOption 24
receiveMore :: ZMQOption
receiveMore :: ZMQOption
receiveMore = CInt -> ZMQOption
ZMQOption CInt
13
receiveTimeout :: ZMQOption
receiveTimeout :: ZMQOption
receiveTimeout = CInt -> ZMQOption
ZMQOption CInt
27
reconnectIVL :: ZMQOption
reconnectIVL :: ZMQOption
reconnectIVL = CInt -> ZMQOption
ZMQOption CInt
18
reconnectIVLMax :: ZMQOption
reconnectIVLMax :: ZMQOption
reconnectIVLMax = CInt -> ZMQOption
ZMQOption CInt
21
recoveryIVL :: ZMQOption
recoveryIVL :: ZMQOption
recoveryIVL = CInt -> ZMQOption
ZMQOption CInt
9
reqCorrelate :: ZMQOption
reqCorrelate = ZMQOption 52
reqRelaxed :: ZMQOption
reqRelaxed :: ZMQOption
reqRelaxed = CInt -> ZMQOption
ZMQOption CInt
53
routerMandatory :: ZMQOption
routerMandatory :: ZMQOption
routerMandatory = CInt -> ZMQOption
ZMQOption CInt
33
sendBuf :: ZMQOption
sendBuf :: ZMQOption
sendBuf = CInt -> ZMQOption
ZMQOption CInt
11
sendHighWM :: ZMQOption
sendHighWM :: ZMQOption
sendHighWM = CInt -> ZMQOption
ZMQOption CInt
23
sendTimeout :: ZMQOption
sendTimeout :: ZMQOption
sendTimeout = CInt -> ZMQOption
ZMQOption CInt
28
subscribe :: ZMQOption
subscribe :: ZMQOption
subscribe = CInt -> ZMQOption
ZMQOption CInt
6
tcpAcceptFilter :: ZMQOption
tcpAcceptFilter :: ZMQOption
tcpAcceptFilter = CInt -> ZMQOption
ZMQOption CInt
38
acceptFailed :: ZMQEventType
tcpKeepAlive :: ZMQOption
tcpKeepAlive :: ZMQOption
tcpKeepAlive = CInt -> ZMQOption
ZMQOption CInt
34
tcpKeepAliveCount :: ZMQOption
tcpKeepAliveCount :: ZMQOption
tcpKeepAliveCount = CInt -> ZMQOption
ZMQOption CInt
35
tcpKeepAliveIdle :: ZMQOption
tcpKeepAliveIdle :: ZMQOption
tcpKeepAliveIdle = ZMQOption 36
tcpKeepAliveInterval :: ZMQOption
tcpKeepAliveInterval :: ZMQOption
tcpKeepAliveInterval = ZMQOption 37
unsubscribe :: ZMQOption
unsubscribe :: ZMQOption
unsubscribe = CInt -> ZMQOption
ZMQOption CInt
7
xpubVerbose :: ZMQOption
xpubVerbose :: ZMQOption
xpubVerbose = CInt -> ZMQOption
ZMQOption CInt
40
zapDomain :: ZMQOption
zapDomain :: ZMQOption
zapDomain = CInt -> ZMQOption
ZMQOption CInt
55
{-# LINE 148 "src/System/ZMQ4/Internal/Base.hsc" #-}
newtype ZMQCtxOption = ZMQCtxOption
{ ctxOptVal :: CInt
} deriving (Eq, Ord)
_ioThreads :: ZMQCtxOption
_ioThreads = ZMQCtxOption 1
_maxSockets :: ZMQCtxOption
_maxSockets = ZMQCtxOption 2
{-# LINE 160 "src/System/ZMQ4/Internal/Base.hsc" #-}
newtype ZMQEventType = ZMQEventType
{ eventTypeVal :: Word16
} deriving (Eq, Ord, Show, Storable)
connected :: ZMQEventType
connected = ZMQEventType 1
connectDelayed :: ZMQEventType
connectDelayed = ZMQEventType 2
connectRetried :: ZMQEventType
connectRetried = ZMQEventType 4
listening :: ZMQEventType
listening = ZMQEventType 8
bindFailed :: ZMQEventType
bindFailed = ZMQEventType 16
accepted :: ZMQEventType
accepted = ZMQEventType 32
acceptFailed :: ZMQEventType
acceptFailed = ZMQEventType 64
closed :: ZMQEventType
closed = ZMQEventType 128
closeFailed :: ZMQEventType
closeFailed = ZMQEventType 256
disconnected :: ZMQEventType
disconnected = ZMQEventType 512
allEvents :: ZMQEventType
allEvents = ZMQEventType 65535
monitorStopped :: ZMQEventType
monitorStopped = ZMQEventType 1024
{-# LINE 182 "src/System/ZMQ4/Internal/Base.hsc" #-}
data ZMQEvent = ZMQEvent
{ zeEvent :: {-# UNPACK #-} !ZMQEventType
, zeValue :: {-# UNPACK #-} !Int32
}
{-# LINE 202 "src/System/ZMQ4/Internal/Base.hsc" #-}
peekZMQEvent :: ZMQMsgPtr -> IO ZMQEvent
peekZMQEvent :: Ptr ZMQMsg -> IO ZMQEvent
peekZMQEvent Ptr ZMQMsg
m = do
Ptr ZMQEventType
p <- Ptr ZMQMsg -> IO (Ptr ZMQEventType)
forall a. Ptr ZMQMsg -> IO (Ptr a)
c_zmq_msg_data Ptr ZMQMsg
m
{-# LINE 209 "src/System/ZMQ4/Internal/Base.hsc" #-}
ZMQEventType
e <- Ptr ZMQEventType -> IO ZMQEventType
forall a. Storable a => Ptr a -> IO a
peek Ptr ZMQEventType
p
Int32
v <- Ptr Int32 -> IO Int32
forall a. Storable a => Ptr a -> IO a
peek (Ptr ZMQEventType
p Ptr ZMQEventType -> Int -> Ptr Int32
forall a b. Ptr a -> Int -> Ptr b
`plusPtr` Int
2)
ZMQEvent -> IO ZMQEvent
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return (ZMQEventType -> Int32 -> ZMQEvent
ZMQEvent ZMQEventType
e Int32
v)
{-# LINE 213 "src/System/ZMQ4/Internal/Base.hsc" #-}
newtype ZMQSecMechanism = ZMQSecMechanism
{ ZMQSecMechanism -> Int
secMechanism :: Int
} deriving (ZMQSecMechanism -> ZMQSecMechanism -> Bool
(ZMQSecMechanism -> ZMQSecMechanism -> Bool)
-> (ZMQSecMechanism -> ZMQSecMechanism -> Bool)
-> Eq ZMQSecMechanism
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ZMQSecMechanism -> ZMQSecMechanism -> Bool
== :: ZMQSecMechanism -> ZMQSecMechanism -> Bool
$c/= :: ZMQSecMechanism -> ZMQSecMechanism -> Bool
/= :: ZMQSecMechanism -> ZMQSecMechanism -> Bool
Eq, Eq ZMQSecMechanism
Eq ZMQSecMechanism =>
(ZMQSecMechanism -> ZMQSecMechanism -> Ordering)
-> (ZMQSecMechanism -> ZMQSecMechanism -> Bool)
-> (ZMQSecMechanism -> ZMQSecMechanism -> Bool)
-> (ZMQSecMechanism -> ZMQSecMechanism -> Bool)
-> (ZMQSecMechanism -> ZMQSecMechanism -> Bool)
-> (ZMQSecMechanism -> ZMQSecMechanism -> ZMQSecMechanism)
-> (ZMQSecMechanism -> ZMQSecMechanism -> ZMQSecMechanism)
-> Ord ZMQSecMechanism
ZMQSecMechanism -> ZMQSecMechanism -> Bool
ZMQSecMechanism -> ZMQSecMechanism -> Ordering
ZMQSecMechanism -> ZMQSecMechanism -> ZMQSecMechanism
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: ZMQSecMechanism -> ZMQSecMechanism -> Ordering
compare :: ZMQSecMechanism -> ZMQSecMechanism -> Ordering
$c< :: ZMQSecMechanism -> ZMQSecMechanism -> Bool
< :: ZMQSecMechanism -> ZMQSecMechanism -> Bool
$c<= :: ZMQSecMechanism -> ZMQSecMechanism -> Bool
<= :: ZMQSecMechanism -> ZMQSecMechanism -> Bool
$c> :: ZMQSecMechanism -> ZMQSecMechanism -> Bool
> :: ZMQSecMechanism -> ZMQSecMechanism -> Bool
$c>= :: ZMQSecMechanism -> ZMQSecMechanism -> Bool
>= :: ZMQSecMechanism -> ZMQSecMechanism -> Bool
$cmax :: ZMQSecMechanism -> ZMQSecMechanism -> ZMQSecMechanism
max :: ZMQSecMechanism -> ZMQSecMechanism -> ZMQSecMechanism
$cmin :: ZMQSecMechanism -> ZMQSecMechanism -> ZMQSecMechanism
min :: ZMQSecMechanism -> ZMQSecMechanism -> ZMQSecMechanism
Ord, Int -> ZMQSecMechanism -> ShowS
[ZMQSecMechanism] -> ShowS
ZMQSecMechanism -> String
(Int -> ZMQSecMechanism -> ShowS)
-> (ZMQSecMechanism -> String)
-> ([ZMQSecMechanism] -> ShowS)
-> Show ZMQSecMechanism
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> ZMQSecMechanism -> ShowS
showsPrec :: Int -> ZMQSecMechanism -> ShowS
$cshow :: ZMQSecMechanism -> String
show :: ZMQSecMechanism -> String
$cshowList :: [ZMQSecMechanism] -> ShowS
showList :: [ZMQSecMechanism] -> ShowS
Show)
secNull :: ZMQSecMechanism
secNull :: ZMQSecMechanism
secNull = Int -> ZMQSecMechanism
ZMQSecMechanism Int
0
secPlain :: ZMQSecMechanism
secPlain :: ZMQSecMechanism
secPlain = Int -> ZMQSecMechanism
ZMQSecMechanism Int
1
secCurve :: ZMQSecMechanism
secCurve :: ZMQSecMechanism
secCurve = Int -> ZMQSecMechanism
ZMQSecMechanism Int
2
{-# LINE 226 "src/System/ZMQ4/Internal/Base.hsc" #-}
newtype ZMQMsgOption = ZMQMsgOption
{ ZMQMsgOption -> CInt
msgOptVal :: CInt
} deriving (ZMQMsgOption -> ZMQMsgOption -> Bool
(ZMQMsgOption -> ZMQMsgOption -> Bool)
-> (ZMQMsgOption -> ZMQMsgOption -> Bool) -> Eq ZMQMsgOption
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ZMQMsgOption -> ZMQMsgOption -> Bool
== :: ZMQMsgOption -> ZMQMsgOption -> Bool
$c/= :: ZMQMsgOption -> ZMQMsgOption -> Bool
/= :: ZMQMsgOption -> ZMQMsgOption -> Bool
Eq, Eq ZMQMsgOption
Eq ZMQMsgOption =>
(ZMQMsgOption -> ZMQMsgOption -> Ordering)
-> (ZMQMsgOption -> ZMQMsgOption -> Bool)
-> (ZMQMsgOption -> ZMQMsgOption -> Bool)
-> (ZMQMsgOption -> ZMQMsgOption -> Bool)
-> (ZMQMsgOption -> ZMQMsgOption -> Bool)
-> (ZMQMsgOption -> ZMQMsgOption -> ZMQMsgOption)
-> (ZMQMsgOption -> ZMQMsgOption -> ZMQMsgOption)
-> Ord ZMQMsgOption
ZMQMsgOption -> ZMQMsgOption -> Bool
ZMQMsgOption -> ZMQMsgOption -> Ordering
ZMQMsgOption -> ZMQMsgOption -> ZMQMsgOption
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: ZMQMsgOption -> ZMQMsgOption -> Ordering
compare :: ZMQMsgOption -> ZMQMsgOption -> Ordering
$c< :: ZMQMsgOption -> ZMQMsgOption -> Bool
< :: ZMQMsgOption -> ZMQMsgOption -> Bool
$c<= :: ZMQMsgOption -> ZMQMsgOption -> Bool
<= :: ZMQMsgOption -> ZMQMsgOption -> Bool
$c> :: ZMQMsgOption -> ZMQMsgOption -> Bool
> :: ZMQMsgOption -> ZMQMsgOption -> Bool
$c>= :: ZMQMsgOption -> ZMQMsgOption -> Bool
>= :: ZMQMsgOption -> ZMQMsgOption -> Bool
$cmax :: ZMQMsgOption -> ZMQMsgOption -> ZMQMsgOption
max :: ZMQMsgOption -> ZMQMsgOption -> ZMQMsgOption
$cmin :: ZMQMsgOption -> ZMQMsgOption -> ZMQMsgOption
min :: ZMQMsgOption -> ZMQMsgOption -> ZMQMsgOption
Ord)
more :: ZMQMsgOption
more :: ZMQMsgOption
more = CInt -> ZMQMsgOption
ZMQMsgOption CInt
1
{-# LINE 237 "src/System/ZMQ4/Internal/Base.hsc" #-}
newtype ZMQFlag = ZMQFlag
{ ZMQFlag -> CInt
flagVal :: CInt
} deriving (ZMQFlag -> ZMQFlag -> Bool
(ZMQFlag -> ZMQFlag -> Bool)
-> (ZMQFlag -> ZMQFlag -> Bool) -> Eq ZMQFlag
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ZMQFlag -> ZMQFlag -> Bool
== :: ZMQFlag -> ZMQFlag -> Bool
$c/= :: ZMQFlag -> ZMQFlag -> Bool
/= :: ZMQFlag -> ZMQFlag -> Bool
Eq, Eq ZMQFlag
Eq ZMQFlag =>
(ZMQFlag -> ZMQFlag -> Ordering)
-> (ZMQFlag -> ZMQFlag -> Bool)
-> (ZMQFlag -> ZMQFlag -> Bool)
-> (ZMQFlag -> ZMQFlag -> Bool)
-> (ZMQFlag -> ZMQFlag -> Bool)
-> (ZMQFlag -> ZMQFlag -> ZMQFlag)
-> (ZMQFlag -> ZMQFlag -> ZMQFlag)
-> Ord ZMQFlag
ZMQFlag -> ZMQFlag -> Bool
ZMQFlag -> ZMQFlag -> Ordering
ZMQFlag -> ZMQFlag -> ZMQFlag
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: ZMQFlag -> ZMQFlag -> Ordering
compare :: ZMQFlag -> ZMQFlag -> Ordering
$c< :: ZMQFlag -> ZMQFlag -> Bool
< :: ZMQFlag -> ZMQFlag -> Bool
$c<= :: ZMQFlag -> ZMQFlag -> Bool
<= :: ZMQFlag -> ZMQFlag -> Bool
$c> :: ZMQFlag -> ZMQFlag -> Bool
> :: ZMQFlag -> ZMQFlag -> Bool
$c>= :: ZMQFlag -> ZMQFlag -> Bool
>= :: ZMQFlag -> ZMQFlag -> Bool
$cmax :: ZMQFlag -> ZMQFlag -> ZMQFlag
max :: ZMQFlag -> ZMQFlag -> ZMQFlag
$cmin :: ZMQFlag -> ZMQFlag -> ZMQFlag
min :: ZMQFlag -> ZMQFlag -> ZMQFlag
Ord)
dontWait :: ZMQFlag
dontWait :: ZMQFlag
dontWait = CInt -> ZMQFlag
ZMQFlag CInt
1
sndMore :: ZMQFlag
sndMore :: ZMQFlag
sndMore = CInt -> ZMQFlag
ZMQFlag CInt
2
{-# LINE 249 "src/System/ZMQ4/Internal/Base.hsc" #-}
newtype ZMQPollEvent = ZMQPollEvent
{ ZMQPollEvent -> CShort
pollVal :: CShort
} deriving (ZMQPollEvent -> ZMQPollEvent -> Bool
(ZMQPollEvent -> ZMQPollEvent -> Bool)
-> (ZMQPollEvent -> ZMQPollEvent -> Bool) -> Eq ZMQPollEvent
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ZMQPollEvent -> ZMQPollEvent -> Bool
== :: ZMQPollEvent -> ZMQPollEvent -> Bool
$c/= :: ZMQPollEvent -> ZMQPollEvent -> Bool
/= :: ZMQPollEvent -> ZMQPollEvent -> Bool
Eq, Eq ZMQPollEvent
Eq ZMQPollEvent =>
(ZMQPollEvent -> ZMQPollEvent -> Ordering)
-> (ZMQPollEvent -> ZMQPollEvent -> Bool)
-> (ZMQPollEvent -> ZMQPollEvent -> Bool)
-> (ZMQPollEvent -> ZMQPollEvent -> Bool)
-> (ZMQPollEvent -> ZMQPollEvent -> Bool)
-> (ZMQPollEvent -> ZMQPollEvent -> ZMQPollEvent)
-> (ZMQPollEvent -> ZMQPollEvent -> ZMQPollEvent)
-> Ord ZMQPollEvent
ZMQPollEvent -> ZMQPollEvent -> Bool
ZMQPollEvent -> ZMQPollEvent -> Ordering
ZMQPollEvent -> ZMQPollEvent -> ZMQPollEvent
forall a.
Eq a =>
(a -> a -> Ordering)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> Bool)
-> (a -> a -> a)
-> (a -> a -> a)
-> Ord a
$ccompare :: ZMQPollEvent -> ZMQPollEvent -> Ordering
compare :: ZMQPollEvent -> ZMQPollEvent -> Ordering
$c< :: ZMQPollEvent -> ZMQPollEvent -> Bool
< :: ZMQPollEvent -> ZMQPollEvent -> Bool
$c<= :: ZMQPollEvent -> ZMQPollEvent -> Bool
<= :: ZMQPollEvent -> ZMQPollEvent -> Bool
$c> :: ZMQPollEvent -> ZMQPollEvent -> Bool
> :: ZMQPollEvent -> ZMQPollEvent -> Bool
$c>= :: ZMQPollEvent -> ZMQPollEvent -> Bool
>= :: ZMQPollEvent -> ZMQPollEvent -> Bool
$cmax :: ZMQPollEvent -> ZMQPollEvent -> ZMQPollEvent
max :: ZMQPollEvent -> ZMQPollEvent -> ZMQPollEvent
$cmin :: ZMQPollEvent -> ZMQPollEvent -> ZMQPollEvent
min :: ZMQPollEvent -> ZMQPollEvent -> ZMQPollEvent
Ord)
pollIn :: ZMQPollEvent
pollIn :: ZMQPollEvent
pollIn = CShort -> ZMQPollEvent
ZMQPollEvent CShort
1
pollOut :: ZMQPollEvent
pollOut :: ZMQPollEvent
pollOut = CShort -> ZMQPollEvent
ZMQPollEvent CShort
2
pollerr :: ZMQPollEvent
pollerr :: ZMQPollEvent
pollerr = CShort -> ZMQPollEvent
ZMQPollEvent CShort
4
{-# LINE 262 "src/System/ZMQ4/Internal/Base.hsc" #-}
foreign import ccall unsafe "zmq.h zmq_version"
c_zmq_version :: Ptr CInt -> Ptr CInt -> Ptr CInt -> IO ()
foreign import ccall unsafe "zmq.h zmq_ctx_new"
c_zmq_ctx_new :: IO ZMQCtx
foreign import ccall unsafe "zmq.h zmq_ctx_shutdown"
c_zmq_ctx_shutdown :: ZMQCtx -> IO CInt
foreign import ccall safe "zmq.h zmq_ctx_term"
c_zmq_ctx_term :: ZMQCtx -> IO CInt
foreign import ccall unsafe "zmq.h zmq_ctx_get"
c_zmq_ctx_get :: ZMQCtx -> CInt -> IO CInt
foreign import ccall unsafe "zmq.h zmq_ctx_set"
c_zmq_ctx_set :: ZMQCtx -> CInt -> CInt -> IO CInt
foreign import ccall unsafe "zmq.h zmq_msg_init"
c_zmq_msg_init :: ZMQMsgPtr -> IO CInt
foreign import ccall unsafe "zmq.h zmq_msg_init_size"
c_zmq_msg_init_size :: ZMQMsgPtr -> CSize -> IO CInt
foreign import ccall unsafe "zmq.h zmq_msg_close"
c_zmq_msg_close :: ZMQMsgPtr -> IO CInt
foreign import ccall unsafe "zmq.h zmq_msg_data"
c_zmq_msg_data :: ZMQMsgPtr -> IO (Ptr a)
foreign import ccall unsafe "zmq.h zmq_msg_size"
c_zmq_msg_size :: ZMQMsgPtr -> IO CSize
foreign import ccall unsafe "zmq.h zmq_msg_get"
c_zmq_msg_get :: ZMQMsgPtr -> CInt -> IO CInt
foreign import ccall unsafe "zmq.h zmq_msg_set"
c_zmq_msg_set :: ZMQMsgPtr -> CInt -> CInt -> IO CInt
foreign import ccall unsafe "zmq.h zmq_socket"
c_zmq_socket :: ZMQCtx -> CInt -> IO ZMQSocket
foreign import ccall unsafe "zmq.h zmq_close"
c_zmq_close :: ZMQSocket -> IO CInt
foreign import ccall unsafe "zmq.h zmq_setsockopt"
c_zmq_setsockopt :: ZMQSocket
-> CInt
-> Ptr ()
-> CSize
-> IO CInt
foreign import ccall unsafe "zmq.h zmq_getsockopt"
c_zmq_getsockopt :: ZMQSocket
-> CInt
-> Ptr ()
-> Ptr CSize
-> IO CInt
foreign import ccall unsafe "zmq.h zmq_bind"
c_zmq_bind :: ZMQSocket -> CString -> IO CInt
foreign import ccall unsafe "zmq.h zmq_unbind"
c_zmq_unbind :: ZMQSocket -> CString -> IO CInt
foreign import ccall unsafe "zmq.h zmq_connect"
c_zmq_connect :: ZMQSocket -> CString -> IO CInt
foreign import ccall unsafe "zmq.h zmq_disconnect"
c_zmq_disconnect :: ZMQSocket -> CString -> IO CInt
{-# LINE 350 "src/System/ZMQ4/Internal/Base.hsc" #-}
foreign import ccall unsafe "zmq.h zmq_sendmsg"
c_zmq_sendmsg :: ZMQSocket -> ZMQMsgPtr -> CInt -> IO CInt
foreign import ccall unsafe "zmq.h zmq_recvmsg"
c_zmq_recvmsg :: ZMQSocket -> ZMQMsgPtr -> CInt -> IO CInt
{-# LINE 356 "src/System/ZMQ4/Internal/Base.hsc" #-}
foreign import ccall unsafe "zmq.h zmq_socket_monitor"
c_zmq_socket_monitor :: ZMQSocket -> CString -> CInt -> IO CInt
foreign import ccall unsafe "zmq.h zmq_errno"
c_zmq_errno :: IO CInt
foreign import ccall unsafe "zmq.h zmq_strerror"
c_zmq_strerror :: CInt -> IO CString
foreign import ccall safe "zmq.h zmq_proxy"
c_zmq_proxy :: ZMQSocket -> ZMQSocket -> ZMQSocket -> IO CInt
foreign import ccall safe "zmq.h zmq_poll"
c_zmq_poll :: ZMQPollPtr -> CInt -> CLong -> IO CInt
foreign import ccall unsafe "zmq.h zmq_z85_encode"
c_zmq_z85_encode :: CString -> Ptr Word8 -> CSize -> IO CString
foreign import ccall unsafe "zmq.h zmq_z85_decode"
c_zmq_z85_decode :: Ptr Word8 -> CString -> IO (Ptr Word8)
foreign import ccall unsafe "zmq.h zmq_curve_keypair"
c_zmq_curve_keypair :: CString -> CString -> IO CInt