1//! Terminal I/O stream operations.
2//!
3//! This API automatically supports setting arbitrary I/O speeds, on any
4//! platform that supports them, including Linux and the BSDs.
5//!
6//! The [`speed`] module contains various predefined speed constants which
7//! are more likely to be portable, however any `u32` value can be passed to
8//! [`Termios::set_input_speed`], and it will simply fail if the speed is not
9//! supported by the platform.
10
11#[cfg(not(any(target_os = "espidf", target_os = "haiku", target_os = "wasi")))]
12mod ioctl;
13#[cfg(not(target_os = "wasi"))]
14mod tc;
15#[cfg(not(windows))]
16mod tty;
17#[cfg(not(any(target_os = "espidf", target_os = "wasi")))]
18mod types;
19
20#[cfg(not(any(target_os = "espidf", target_os = "haiku", target_os = "wasi")))]
21pub use ioctl::*;
22#[cfg(not(target_os = "wasi"))]
23pub use tc::*;
24#[cfg(not(windows))]
25pub use tty::*;
26#[cfg(not(any(target_os = "espidf", target_os = "wasi")))]
27pub use types::*;
28