Trait CarReader
Source pub trait CarReader {
// Required methods
fn header(&self) -> &CarHeader;
fn sections(&self) -> Vec<Section>;
fn read_section_data(&mut self, cid: &Cid) -> Result<Vec<u8>, CarError>;
fn ipld(&mut self, cid: &Cid) -> Result<Ipld, CarError>;
// Provided methods
fn unixfs(&mut self, cid: &Cid) -> Result<UnixFs, CarError> { ... }
fn search_file_cid_inner(
&mut self,
searchq: &mut VecDeque<Cid>,
f: &str,
) -> Result<Cid, CarError> { ... }
fn search_file_cid(&mut self, f: &str) -> Result<Cid, CarError> { ... }
}
9fn main() {
10 let file_name = std::env::args().nth(1).expect("use filename as argument");
11 let file = std::path::Path::new("test");
12 let file = file.join("carv1-basic.car");
13 let file = std::fs::File::open(file).unwrap();
14 let mut reader = reader::new_v1(file).unwrap();
15 let cid = reader
16 .search_file_cid(&file_name)
17 .expect("search file error.");
18 cat_ipld(&mut reader, cid).unwrap();
19}