#parse #path #file-path #parse-input #clarifier #clarify

src-dst-clarifier

Give SRC and DST path, each may be a FILE or a DIR (even STDIO). Handle situations well and produce iterator over FILE-FILE pairs.

1 unstable release

0.2.0 May 6, 2023
0.1.0 May 3, 2023

#949 in Filesystem

39 downloads per month
Used in quadim

MIT/Apache

17KB
324 lines

SRC-DST-Clarifier

(WIP)

Give SRC and DST path, each may be a FILE or a DIR (even STDIO). Handle situations well and produce iterator over FILE-FILE pairs.

SrcDstConfig::new("png").parse("input.jpg", None);
// [./input.jpg => ./A01123-0456-0789.png]

SrcDstConfig::new("png").parse("input.jpg", Some("output.jpg"));
// [./input.jpg => ./output.jpg]

SrcDstConfig::new("png").parse("./frames", None);
// [./frames/0001.jpg   => ./A01123-0456-0789/0001.jpg]
// [./frames/0002.jpg   => ./A01123-0456-0789/0002.jpg]
// [./frames/0003.jpg   => ./A01123-0456-0789/0003.jpg]
//  ...
// [./frames/xxxx.jpg   => ./A01123-0456-0789/xxxx.jpg]

SrcDstConfig::new("png").parse("-", Some("-"));
// [<io::Stdin> => <io::Stdout>]

See documentation on docs.rs.

TODOs

  • Add wildcard matcher and (number) range filter to SRC.

    -i "./*.jpg"
    -i "./4???.jpg"
    -i "./{:04d}.jpg"
    -i "./{1..=999:04d}.jpg"
    

Dependencies

~1.3–2MB
~37K SLoC