use clap;
use common::*;
use std::fs::File;
use std::path::PathBuf;
pub fn run(path: PathBuf, place: &str) -> Result<(), clap::Error> {
let file = File::open(&path)
.map_err(|e| read_error(&path, e))?;
let mut data = decode(&file, &path)?;
unlock(&mut data, |mut unlocked| {
match unlocked.get(place) {
Ok(Some(s)) => {
println!("{}", s);
Ok(())
},
Ok(None) => Err(error("entry not found")),
Err(e) => Err(read_error(&path, e))
}
})
}