diff options
| author | A Farzat <a@farzat.xyz> | 2026-06-21 21:35:56 +0300 |
|---|---|---|
| committer | A Farzat <a@farzat.xyz> | 2026-06-22 05:19:58 +0300 |
| commit | 06b52872961427ed4eb32e60f33936fa0a309d86 (patch) | |
| tree | 471f1a02e8ca45597bfe3196a5aa12bcabfdef74 /src/run.rs | |
| parent | d460ef157a5822f6326958cf7ab2309560eba2a4 (diff) | |
| download | repo2markdown-06b52872961427ed4eb32e60f33936fa0a309d86.tar.gz repo2markdown-06b52872961427ed4eb32e60f33936fa0a309d86.zip | |
Refactor markdown generators into a single struct
Diffstat (limited to 'src/run.rs')
| -rw-r--r-- | src/run.rs | 30 |
1 files changed, 10 insertions, 20 deletions
@@ -7,8 +7,7 @@ use std::io::{Read, Write}; use repo2markdown::{ - fenced_md_generator::generate_fenced_markdown, logger::Logger, - md_generator::generate_markdown_from_paths, path_list::paths_from_null_separated_bytes, + generator::MarkdownGenerator, logger::Logger, path_list::paths_from_null_separated_bytes, }; use crate::cli::Cli; @@ -31,26 +30,17 @@ pub fn run<R: Read, W: Write>( input.read_to_end(&mut input_buf)?; let paths = paths_from_null_separated_bytes(&input_buf); + let md_generator = MarkdownGenerator::new(&paths) + .with_logger(logger) + .with_origin(&cli.origin) + .with_project_title(cli.name.as_deref()) + .with_render_options(cli.render_options()) + .with_root(&cli.root); + if cli.fenced { - generate_fenced_markdown( - &paths, - output, - cli.render_options(), - &cli.root, - &cli.origin, - cli.name.as_deref(), - logger, - ) + md_generator.generate_fenced(output) } else { - generate_markdown_from_paths( - &paths, - output, - cli.render_options(), - &cli.root, - &cli.origin, - cli.name.as_deref(), - logger, - ) + md_generator.generate(output) } } |
