From f916f4d419790d17937cfa511976663d77b417a9 Mon Sep 17 00:00:00 2001 From: Talison Fabio <54823205+talis-fb@users.noreply.github.com> Date: Sun, 23 Mar 2025 11:34:16 -0300 Subject: [PATCH] doc: improve rename_path docs --- src/utils/fs.rs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/utils/fs.rs b/src/utils/fs.rs index 2acac29..d4cb8a5 100644 --- a/src/utils/fs.rs +++ b/src/utils/fs.rs @@ -53,7 +53,7 @@ pub fn remove_file_or_dir(path: &Path) -> crate::Result<()> { Ok(()) } -/// Create a new path renaming the "filename" from &Path until find a free name +/// Create a new path renaming the "filename" from &Path for a available name in the same directory pub fn rename_for_available_filename(path: &Path) -> PathBuf { let mut renamed_path = rename_or_increment_filename(path); while renamed_path.exists() { @@ -63,7 +63,10 @@ pub fn rename_for_available_filename(path: &Path) -> PathBuf { } /// Create a new path renaming the "filename" from &Path to `filename_1` -/// or `filename_2`, `filename_3` until find a free name +/// if its name already ends with `_` and some number, then it increments the number +/// Example: +/// - `file.txt` -> `file_1.txt` +/// - `file_1.txt` -> `file_2.txt` pub fn rename_or_increment_filename(path: &Path) -> PathBuf { let parent = path.parent().unwrap_or_else(|| Path::new("")); let filename = path.file_stem().and_then(|s| s.to_str()).unwrap_or("");