farben_core/lib.rs
1//! Core library for the farben terminal styling crate.
2//!
3//! Provides the full pipeline for parsing farben markup strings into ANSI escape sequences:
4//! tokenization ([`lexer`]), ANSI encoding ([`ansi`]), rendering ([`parser`]),
5//! named style registration ([`registry`]), and error types ([`errors`]).
6//!
7//! Typical usage flows through the [`lexer::tokenize`] and [`parser::render`] functions,
8//! with optional style definitions via the [`registry`] module and its macros.
9#![warn(missing_docs)]
10#![deny(rustdoc::broken_intra_doc_links)]
11#![warn(rustdoc::private_intra_doc_links)]
12
13pub mod ansi;
14pub mod debug;
15pub mod degrader;
16pub mod env;
17pub mod errors;
18pub mod lexer;
19pub mod parser;
20pub mod registry;
21mod state;
22pub use state::{active_stack, clear_active_stack, set_active_stack};
23pub mod strip;
24
25#[cfg(feature = "anstyle")]
26pub mod anstyle_conv;