1#![doc = document_features::document_features!()]
9#![deny(missing_docs, rustdoc::broken_intra_doc_links)]
15#![expect(
16 clippy::missing_errors_doc,
17 reason = "each fallible function returns one typed error whose variants carry the docs"
18)]
19
20#[cfg(feature = "app")]
22pub mod app;
23pub mod color;
25#[cfg(feature = "document")]
27pub mod document;
28pub mod format;
30pub mod model;
32
33#[cfg(feature = "fixture")]
35pub mod fixture;
36#[cfg(feature = "cli")]
38pub mod flags;
39#[cfg(feature = "help")]
41pub mod help;
42#[cfg(feature = "input")]
44pub mod input;
45#[cfg(feature = "render")]
46mod layout;
47#[cfg(feature = "cli")]
49pub mod parser;
50pub mod prelude;
52#[cfg(feature = "render")]
54pub mod render;
55#[cfg(feature = "served")]
58pub mod served;
59#[cfg(feature = "render")]
60mod style;
61#[cfg(feature = "surface-model")]
63pub mod surface;
64#[cfg(feature = "render")]
66pub mod table;
67#[cfg(feature = "usage")]
69pub mod usage;
70#[cfg(feature = "validate")]
72pub mod validate;
73#[cfg(feature = "view")]
75pub mod view;
76
77#[cfg(feature = "app")]
78pub use app::App;
79pub use color::ColorMode;
80#[cfg(feature = "document")]
81pub use document::{
82 Block, Document, Fields, Notice, NoticeLevel, Role, Rule, Section, Span, Table, Text,
83};
84#[cfg(feature = "cli")]
85pub use flags::{
86 ColorLong, DryRunArgs, FlagWarning, FormatArgs, FormatLong, OutputArgs, WarningKind,
87 chassis_warnings, emit_warnings, resolve_color, switch, warn_opposites,
88};
89pub use format::OutputFormat;
90pub use indoc::{concatdoc, eprintdoc, formatdoc, indoc, printdoc, writedoc};
91pub use model::{Envelope, ErrorBody, SCHEMA_VERSION};
92#[cfg(feature = "render")]
93pub use render::{
94 DEFAULT_COLUMN_BUFFER, DEFAULT_COLUMN_BUFFER_ENV, DEFAULT_COLUMN_BUFFER_ENVS,
95 DEFAULT_FALLBACK_WIDTH, DEFAULT_LIST_STYLE_ENV, DEFAULT_LIST_STYLE_ENVS,
96 DEFAULT_MINIMUM_AUTOMATIC_WIDTH, DEFAULT_RECORD_STYLE_ENV, DEFAULT_RECORD_STYLE_ENVS,
97 DEFAULT_ROW_SEPARATION_ENV, DEFAULT_ROW_SEPARATION_ENVS, ListStyle, RecordStyle, RenderOptions,
98 Renderer, RowSeparation,
99};
100#[cfg(feature = "surface-model")]
101pub use surface::{Surface, SurfaceArgument, SurfaceCommand, SurfaceRequirement, SurfaceScope};
102#[cfg(feature = "render")]
103pub use table::{grid, kv};
104#[cfg(feature = "usage")]
105pub use usage::{mount_line, spec, spec_bin, take};
106#[cfg(feature = "view")]
107pub use view::{
108 Captured, DEFAULT_JSON_LAYOUT_ENV, DEFAULT_JSON_LAYOUT_ENVS, JsonLayout, MessageKind, Present,
109 Stream, View,
110};