[][src]Enum ipfs_unixfs::file::FileError

pub enum FileError {
    LinksAndBlocksizesMismatch,
    NoLinksNoContent,
    NonRootDefinesMetadata(Metadata),
    IntermediateNodeWithoutFileSize,
    TreeExpandsOnLinks,
    TreeOverlapsBetweenLinks,
    EarlierLink,
    TreeJumpsBetweenLinks,
    UnexpectedRawOrFileProperties {
        hash_type: Option<u64>,
        fanout: Option<u64>,
    },
}

Errors which can happen while processing UnixFS type File or Raw blocks.

Variants

LinksAndBlocksizesMismatch

There are nonequal number of links and blocksizes and thus the file ranges for linked trees or blocks cannot be determined.

NoLinksNoContent

Errored when the filesize is non-zero.

NonRootDefinesMetadata(Metadata)

Unsupported: non-root block defines metadata.

IntermediateNodeWithoutFileSize

A non-leaf node in the tree has no filesize value which is used to determine the file range for this tree.

The tree or merkle dag should only collapse or stay the same length.

The tree links contain overlapping file segments. This is at least unsupported right now, but the larger segment could be collapsed down to the reused part.

Reader has been fed a link to earlier range.

The tree links contain a hole from a file segment to the next tree. This is at least unsupported right now. Zeroes could be generated for the hole.

UnexpectedRawOrFileProperties

These values should not be present for unixfs files with File or Raw. If they have a valid meaning, support for such has not been implemented.

Fields of UnexpectedRawOrFileProperties

hash_type: Option<u64>

Hash type, as read from the protobuf descriptor; should only be used with HAMT directories.

fanout: Option<u64>

Fan out, as read from the protobuf descriptor; should only be used with HAMT directories.

Trait Implementations

impl Debug for FileError[src]

impl Display for FileError[src]

impl Eq for FileError[src]

impl Error for FileError[src]

impl From<FileError> for FileReadFailed[src]

impl PartialEq<FileError> for FileError[src]

impl StructuralEq for FileError[src]

impl StructuralPartialEq for FileError[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.