Skip to main content

magic_pack/contents/
enums.rs

1use clap::ValueEnum;
2
3#[derive(Copy, Clone, PartialEq, Eq, PartialOrd, Ord, ValueEnum, Debug)]
4pub enum FileType {
5    Zip,
6    Tar,
7    Bz2,
8    Gz,
9    Tarbz2,
10    Targz,
11    SevenZ,
12    Xz,
13    Tarxz,
14    Zst,
15    Tarzst,
16    Lz4,
17    Tarlz4,
18}
19
20pub fn get_file_type_string(file_type: FileType) -> &'static str {
21    match file_type {
22        FileType::Zip => "zip",
23        FileType::Tar => "tar",
24        FileType::Bz2 => "bz2",
25        FileType::Gz => "gz",
26        FileType::Tarbz2 => "tar.bz2",
27        FileType::Targz => "tar.gz",
28        FileType::SevenZ => "7z",
29        FileType::Xz => "xz",
30        FileType::Tarxz => "tar.xz",
31        FileType::Zst => "zst",
32        FileType::Tarzst => "tar.zst",
33        FileType::Lz4 => "lz4",
34        FileType::Tarlz4 => "tar.lz4",
35    }
36}