Struct rust_unixfs::file::visit::FileVisit
source · pub struct FileVisit { /* private fields */ }
Expand description
FileVisit represents an ongoing visitation over an UnixFs File tree.
The file visitor does not implement size validation of merkledag links at the moment. This could be implmented with generational storage and it would require an u64 per link.
Note: For easier to use interface, you should consider using ipfs_unixfs::walk::Walker
.
It uses IdleFileVisit
and FileVisit
internally but has a better API.
Implementations§
source§impl FileVisit
impl FileVisit
sourcepub fn pending_links(&self) -> (&Cid, impl Iterator<Item = &Cid>)
pub fn pending_links(&self) -> (&Cid, impl Iterator<Item = &Cid>)
Access hashes of all pending links for prefetching purposes. The block for the first item
returned by this method is the one which needs to be processed next with continue_walk
.
Returns tuple of the next Cid which needs to be processed and an iterator over the remaining.
sourcepub fn continue_walk<'a>(
self,
next: &'a [u8],
cache: &mut Option<Cache>
) -> Result<(&'a [u8], Option<Self>), FileReadFailed>
pub fn continue_walk<'a>( self, next: &'a [u8], cache: &mut Option<Cache> ) -> Result<(&'a [u8], Option<Self>), FileReadFailed>
Continues the walk with the data for the first pending_link
key.
Returns on success a tuple of bytes and new version of FileVisit
to continue the visit,
when there is something more to visit.