aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib.rs
blob: d4ead8386babf0f1291ce904bddc01eae9392ed5 (plain) (blame)
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
37
38
39
40
41
42
43
//! This crate contains helpers for reading and writing
//! [ttyrec](https://en.wikipedia.org/wiki/Ttyrec) files.
//!
//! `Parser` and `Creator` can be used to read and write files manually, and
//! `Reader` and `Writer` are helpers to provide a nicer API for asynchronous
//! applications using futures. Additionally, `blocking::Reader` and
//! `blocking::Writer` provide a similar API for non-asynchronous
//! applications.
//!
//! If you do not need the async API, the `futures` dependency can be removed
//! by building with `default_features = false` (by default, the `"async"`
//! feature is enabled).

#![warn(clippy::cargo)]
#![warn(clippy::pedantic)]
#![warn(clippy::nursery)]
#![warn(clippy::as_conversions)]
#![warn(clippy::get_unwrap)]
#![allow(clippy::cognitive_complexity)]
#![allow(clippy::missing_const_for_fn)]
#![allow(clippy::similar_names)]
#![allow(clippy::struct_excessive_bools)]
#![allow(clippy::too_many_arguments)]
#![allow(clippy::too_many_lines)]
#![allow(clippy::type_complexity)]

mod creator;
pub use creator::Creator;
mod error;
pub use error::{Error, Result};
mod frame;
pub use frame::Frame;
mod parser;
pub use parser::Parser;
pub mod blocking;
#[cfg(feature = "async")]
mod reader;
#[cfg(feature = "async")]
pub use reader::Reader;
#[cfg(feature = "async")]
mod writer;
#[cfg(feature = "async")]
pub use writer::Writer;