pub struct Link {
pub hash: Cid,
pub guess_type: FileType,
pub name: String,
pub tsize: u64,
}
Fields§
§hash: Cid
§guess_type: FileType
§name: String
§tsize: u64
Implementations§
Source§impl Link
impl Link
pub fn new(hash: Cid, name: String, tsize: u64) -> Self
Sourcepub fn hash(&self) -> Cid
pub fn hash(&self) -> Cid
Examples found in repository?
examples/cat_cid.rs (line 28)
12fn main() {
13 // let cid = std::env::args().nth(1).expect("use cid as argument");
14 let cid = "bafkreiaqv66m5nd6mwgkk7h5lwqnjzj54s4f7knmnrjhb7ylzqfg2vdo54";
15 let file = std::path::Path::new("test");
16 let file = file.join("carv1-basic.car");
17 let file = std::fs::File::open(file).unwrap();
18 let mut reader = reader::new_v1(file).unwrap();
19 let roots = reader.header().roots();
20 let file_cid = Cid::try_from(cid).expect("cid format error");
21 for r in roots.iter() {
22 let root_ipld = reader.ipld(r).unwrap();
23 let root: Result<UnixFs, CarError> = root_ipld.try_into();
24 let root_dir = root.unwrap();
25 let count = root_dir
26 .links()
27 .iter()
28 .filter(|u| u.hash() == file_cid)
29 .count();
30 if count > 0 {
31 cat_ipld(&mut reader, file_cid).unwrap();
32 }
33 }
34}
pub fn name_ref(&self) -> &str
pub fn tsize(&self) -> u64
pub fn guess_type(&self) -> FileType
Trait Implementations§
impl Eq for Link
impl StructuralPartialEq for Link
Auto Trait Implementations§
impl Freeze for Link
impl RefUnwindSafe for Link
impl Send for Link
impl Sync for Link
impl Unpin for Link
impl UnwindSafe for Link
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more