[−][src]Crate zedmq
Note that this library is in the very early stages of development! Anything and everything may change!
zedmq
A Lightweight, Safe, pure-Rust ØMQ/ZMTP library implementation
Index
Brief
Zedmq is a native implementation of ØMQ in Rust focusing on:
- being as lightweight as possible.
- being completely safe.
- providing a simple, blocking, obvious API.
This library is lazy and blocking, no work is done unless a call to a
recv
or send
is made. There is no "background" thread or task accepting
new connections or performing reconnections on the users behalf
consequently there is no shared state or synchronization being performed.
Frame<'_>
and FrameBuf
This library also exposes the underlying ZMQ concept of a frame.
Additionally a distinction is made with the Frame
and FrameBuf
types
for optimization purposes.
Conceptually a Frame<'_>
is equivelent to &'_ [u8]
or &'_ str
and
the FrameBuf
equivelent is Vec<u8>
or String
. This distinction is
made in an attempt to make "zero copy" or "zero heap" practice easier.
Examples
use zedmq::prelude::*; fn main() -> std::io::Result<()> { let mut socket = Pull::connect("127.0.0.1:5678")?; while let Ok(message) = socket.recv() { dbg!(message); } Ok(()) }
Modules
prelude | The prelude. |
Constants
ZMQ_VERSION | The currently supported ZMQ version. |