pub fn untar<I, O, R, D>( input_file: I, output_dir: O, remove_prefix: Option<String>, decoder: R ) -> Result<(), ProtoError>where I: AsRef<Path>, O: AsRef<Path>, R: FnOnce(File) -> D, D: Read,