[][src]Enum lewton::header::HeaderReadError

pub enum HeaderReadError {
    EndOfPacket,
    NotVorbisHeader,
    UnsupportedVorbisVersion,
    HeaderBadFormat,
    HeaderBadType(u8),
    HeaderIsAudio,
    Utf8DecodeError,
    BufferNotAddressable,
}

Errors that can occur during Header decoding

Variants

EndOfPacket
NotVorbisHeader

If the passed data don't start with the "vorbis" capture pattern, this error is returned.

UnsupportedVorbisVersion
HeaderBadFormat

If the header violates the vorbis spec

HeaderBadType(u8)

The given packet indeed seems to be a vorbis header, but it looks like it is a different header type than the function it was passed to.

It is not guaranteed that the type is a valid header type.

HeaderIsAudio

The given packet does not seem to be a header as per vorbis spec, instead it seems to be an audio packet.

Utf8DecodeError
BufferNotAddressable

If the needed memory isn't addressable by us

This error is returned if a calculation yielded a higher value for an internal buffer size that doesn't fit into the platform's address range. Note that if we "simply" encounter an allocation failure (OOM, etc), we do what libstd does in these cases: crash.

This error is not automatically an error of the passed data, but rather is due to insufficient decoder hardware.

Trait Implementations

impl Debug for HeaderReadError[src]

impl Display for HeaderReadError[src]

impl Error for HeaderReadError[src]

impl From<()> for HeaderReadError[src]

impl From<Error> for HeaderReadError[src]

impl From<FromUtf8Error> for HeaderReadError[src]

impl From<HeaderReadError> for VorbisError[src]

impl PartialEq<HeaderReadError> for HeaderReadError[src]

impl StructuralPartialEq for HeaderReadError[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> 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.