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
//! Fibril is a library for implementing distributed systems with commmunicating fibers.
//!
//! # Usage
//!
//! Please see [the `fibril_verifier` docs](https://docs.rs/fibril_verifier/).
//!
//! # Features
//!
//! - `fibers`: Include support for
//! [fibers](https://en.wikipedia.org/wiki/Fiber_(computer_science)).
//! - `rt`: Include a UDP runtime.
//! - `serde_json`: Include a `new_with_serde_json` helper in the UDP runtime.

#![cfg_attr(all(doc, CHANNEL_NIGHTLY), feature(doc_auto_cfg))]
#![deny(unused_must_use)]
#![warn(rust_2018_idioms, unreachable_pub)]

#[cfg(feature = "fibers")]
mod fiber;
#[cfg(feature = "fibers")]
mod sdk;
#[cfg(feature = "rt")]
mod udp;

pub use fibril_core::Deadline;

#[cfg(feature = "fibers")]
pub use fiber::Fiber;

pub use fibril_core::Id;

#[cfg(feature = "fibers")]
pub use sdk::Sdk;

#[cfg(feature = "rt")]
pub use udp::UdpRuntime;