From 1fe05c6389e8e9a69cc7126dc967b79d5f75f432 Mon Sep 17 00:00:00 2001 From: A Farzat Date: Sat, 20 Jun 2026 09:10:18 +0300 Subject: Add markdown generator module/function docs --- src/md_generator.rs | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'src/md_generator.rs') diff --git a/src/md_generator.rs b/src/md_generator.rs index 54b7cbb..48f066c 100644 --- a/src/md_generator.rs +++ b/src/md_generator.rs @@ -1,3 +1,8 @@ +//! Generate Markdown from null-separated path lists. +//! +//! This module reads a stream of NUL-separated file paths, normalizes each path, skips duplicates, +//! and renders selected files into Markdown. + use std::{ collections::HashSet, ffi::OsStr, @@ -15,6 +20,18 @@ use crate::{ const DEFAULT_PROJECT_NAME: &str = "Project Outline"; +/// Generates Markdown for the files listed in `input`. +/// +/// `input` is expected to contain a NUL-separated sequence of paths, such as output from +/// `find -print0` or `git ls-files -z`. +/// +/// Relative input paths are resolved against `origin_base`. File headings use paths made relative +/// to `root`. +/// +/// Duplicate files are skipped after normalization, while preserving the first occurrence order. +/// +/// Rendering behavior such as file-size limits and placeholder output is controlled by +/// `render_options`. pub fn generate_markdown_from_paths( mut input: R, output: W, -- cgit v1.3.1