diff options
author | Nora <nora.widdecke@tu-bs.de> | 2019-01-12 15:07:38 +0100 |
---|---|---|
committer | Nora <nora.widdecke@tu-bs.de> | 2019-01-12 16:35:11 +0100 |
commit | c3da66e3a6fb6232214a52da3b419396cd552776 (patch) | |
tree | 91bf473b440434f5f0b213041ba89ffcb9fad6cf /src/seqfile.rs | |
parent | dbc6a2bb978d15eea8093f83c8a5826bbdee85f4 (diff) |
split off seqfile handling from seq.rs
Diffstat (limited to 'src/seqfile.rs')
-rw-r--r-- | src/seqfile.rs | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/seqfile.rs b/src/seqfile.rs new file mode 100644 index 0000000..1f1abc8 --- /dev/null +++ b/src/seqfile.rs @@ -0,0 +1,28 @@ +extern crate atty; + +use std::fs::rename; +use std::io; + +use defaults::*; +use utils::fileutil; + +pub fn write_to_seqfile(lines: &str) { + let tmpfilename = get_datafile("tmpseq"); + + if let Err(error) = fileutil::write_file(&tmpfilename, lines) { + error!("Could not write seqfile: {}", error); + return + } + + let seqfile = get_seqfile(); + if let Err(error) = rename(tmpfilename, seqfile) { + error!("{}", error) + } +} + +pub fn read_seqfile() -> io::Result<impl Iterator<Item = String>> { + let seqfile = get_seqfile(); + debug!("Reading sequence file: {}", seqfile.to_string_lossy()); + fileutil::read_lines_from_file(&seqfile) +} + |