summaryrefslogtreecommitdiffstats
path: root/src/lib.rs
blob: 449dc6004c27b393efeb6f878d34e8ab08eb8128 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
//! Mio bindings with streams and futures
//!
//! This crate uses the `futures_io` and `futures` crates to provide a thin
//! binding on top of mio of TCP and UDP sockets.

#![deny(missing_docs)]

extern crate futures;
extern crate futures_io;
extern crate mio;
extern crate slab;

#[macro_use]
extern crate scoped_tls;

#[macro_use]
extern crate log;

#[path = "../../src/slot.rs"]
mod slot;
#[path = "../../src/lock.rs"]
mod lock;

mod channel;
mod event_loop;
mod mpsc_queue;
mod readiness_stream;
mod tcp;
mod timeout;
mod timer_wheel;
mod udp;

pub use channel::{Sender, Receiver};
pub use event_loop::{Loop, LoopPin, LoopHandle, AddSource, AddTimeout};
pub use event_loop::{LoopData, AddLoopData, TimeoutToken, IoToken};
pub use readiness_stream::ReadinessStream;
pub use tcp::{TcpListener, TcpStream};
pub use timeout::Timeout;
pub use udp::UdpSocket;