Skip to main content

harn_terminal/
lib.rs

1//! Typed pseudo-terminal sessions for deterministic TUI driving.
2//!
3//! This crate owns the process/PTY/VT mechanics shared by Harn host
4//! capabilities and product-level terminal smoke tests. It deliberately has
5//! no VM or product dependency: callers supply an argv vector and receive a
6//! typed screen capture rather than terminal escape bytes.
7
8#![deny(rust_2018_idioms)]
9#![warn(missing_docs)]
10
11mod input;
12mod session;
13mod types;
14
15pub use input::{InputEvent, KeyCode, Modifier, NamedKey};
16pub use session::TerminalSession;
17pub use types::{
18    CellCapture, CellRegion, ProcessStatus, ScreenCapture, SessionOptions, TerminalColor,
19    TerminalError, WaitIdleResult, DEFAULT_RAW_CAPACITY, MAX_CAPTURE_CELLS, MAX_DIMENSION,
20    MAX_INPUT_BYTES,
21};