heddle_cli_render/cli/warning_render.rs
1// SPDX-License-Identifier: Apache-2.0
2//! Terminal Adapter for structured library warnings.
3
4use objects::{Warning, WarningSink};
5
6/// Render structured warnings on stderr for the human CLI surface.
7#[derive(Debug, Default, Clone, Copy)]
8pub struct StderrWarningSink;
9
10impl WarningSink for StderrWarningSink {
11 fn warn(&self, warning: Warning) {
12 eprintln!(
13 "{} {}",
14 super::style::warn_marker(),
15 super::style::human_text(&warning.message)
16 );
17 }
18}