mod chan;
mod channel;
mod error;
mod recv;
mod send;
pub use channel::{Receiver, Sender, TryIter};
pub use error::{SendError, TryRecvError, TrySendError};
pub use recv::Recv;
pub use send::Send;
use chan::Chan;
pub fn bounded<T>(cap: usize) -> (Sender<T>, Receiver<T>) {
assert!(
cap > 0,
"lochan::mpsc::bounded requires a non-zero capacity"
);
let chan = Chan::bounded(cap);
(Sender::new(chan.clone()), Receiver::new(chan))
}
pub fn unbounded<T>() -> (Sender<T>, Receiver<T>) {
let chan = Chan::unbounded();
(Sender::new(chan.clone()), Receiver::new(chan))
}
#[cfg(all(test, feature = "std"))]
mod tests;