Function mmrbi::path::has_extension

source ·
pub fn has_extension(path: impl AsRef<Path>, ext: impl AsRef<OsStr>) -> bool
Expand description

Check the extension of a file

Examples

// The full filename doesn't count as an extension
assert!(!has_extension("foo.tar.gz", ".foo.tar.gz"));
assert!(!has_extension("foo.tar.gz",  "foo.tar.gz"));
assert!(!has_extension("foo.tar.gz",   "oo.tar.gz"));

// Only the full extension (with or without a leading `.`) counts
assert!( has_extension("foo.tar.gz", ".tar.gz"));
assert!( has_extension("foo.tar.gz",  "tar.gz"));
assert!(!has_extension("foo.tar.gz",   "ar.gz"));

// Case sensitive
assert!(!has_extension("foo.tAr.gZ", ".tar.gz"));
assert!(!has_extension("foo.tAr.gZ",  "tar.gz"));
assert!(!has_extension("foo.tAr.gZ",   "ar.gz"));

assert!( has_extension("foo.tar.gz", ".gz"));
assert!( has_extension("foo.tar.gz",  "gz"));
assert!(!has_extension("foo.tar.gz",   "z"));