blast_radius/report/
mod.rs1use anyhow::Result;
2
3use crate::cli::OutputFormat;
4use crate::graph::AnalysisResult;
5
6mod graph_formats;
7use graph_formats::{render_dot, render_mermaid};
8
9mod theme;
10
11mod tree;
12use tree::render_tree;
13
14pub fn render(format: &OutputFormat, result: &AnalysisResult, verbose: bool) -> Result<String> {
15 let rendered = match format {
16 OutputFormat::Tree => render_tree(result, verbose),
17 OutputFormat::Json => serde_json::to_string_pretty(result)?,
18 OutputFormat::Mermaid => render_mermaid(result),
19 OutputFormat::Dot => render_dot(result),
20 };
21
22 Ok(rendered)
23}