1#![warn(missing_docs)]
29#![warn(clippy::all)]
30#![deny(clippy::await_holding_lock)]
31#![deny(clippy::await_holding_refcell_ref)]
32
33mod runtime;
34pub use self::runtime::*;
35
36mod handle;
37pub use self::handle::channel::{Channel, RecvMsg};
38pub use self::handle::on_signals::OnSignalsRef;
39pub use self::handle::socket::Socket;
40
41pub mod net;
43
44#[cfg(target_os = "fuchsia")]
45pub use self::handle::{
46 fifo::{Fifo, FifoEntry},
47 on_interrupt::OnInterrupt,
48 on_signals::{OnSignals, OnSignalsFuture},
49 rwhandle::{
50 DefaultRWHandleSpec, RWHandle, RWHandleSpec, ReadableHandle, ReadableState, WritableHandle,
51 WritableState,
52 },
53};
54
55#[cfg(target_os = "fuchsia")]
56pub use runtime::instrument;
57
58#[cfg(not(target_os = "fuchsia"))]
60pub mod emulated_handle {
61 pub use super::handle::{
62 shut_down_handles, AsHandleRef, Channel, EmulatedHandleRef, Event, EventPair, Handle,
63 HandleBased, HandleDisposition, HandleInfo, HandleOp, HandleRef, Koid, MessageBuf,
64 MessageBufEtc, ObjectType, Peered, Rights, Signals, Socket, SocketOpts,
65 };
66
67 #[allow(non_camel_case_types)]
69 pub type zx_handle_t = u32;
70}
71
72pub use fuchsia_async_macro::{run, run_singlethreaded, run_until_stalled};
73
74pub mod condition;
75pub mod test_support;