use std::io;
use crate::errors;
#[derive(Debug, StructOpt)]
#[structopt(verbatim_doc_comment)]
#[allow(clippy::tabs_in_doc_comments)]
pub struct BuildIndex {}
pub fn buildindex(_args: BuildIndex) -> errors::Result<()> {
let mut reader = csv::ReaderBuilder::new()
.has_headers(false)
.delimiter(b'\t')
.from_reader(io::stdin());
let mut index = fst::MapBuilder::new(io::stdout())?;
for record in reader.deserialize() {
let (kmer, lca): (String, u64) = record?;
index.insert(kmer, lca)?;
}
index.finish()?;
Ok(())
}