rsv_lib/io/
to.rs

1use crate::args::To;
2use crate::utils::cli_result::CliResult;
3use crate::utils::to::{csv_or_io_to_csv, io_to_excel, is_valid_excel, is_valid_plain_text};
4
5impl To {
6    pub fn io_run(&self) -> CliResult {
7        let out = self.out.to_lowercase();
8
9        match out.as_str() {
10            v if is_valid_plain_text(v) => csv_or_io_to_csv(None, &out)?,
11            v if is_valid_excel(v) => io_to_excel(self, &out)?,
12            _ => return Err(format!("output file format <{out}> is un-recognized.").into()),
13        };
14
15        Ok(())
16    }
17}