Enum lava_torrent::LavaTorrentError
source · pub enum LavaTorrentError {
Io(Error),
MalformedBencode(Cow<'static, str>),
MalformedTorrent(Cow<'static, str>),
MalformedResponse(Cow<'static, str>),
TorrentBuilderFailure(Cow<'static, str>),
InvalidArgument(Cow<'static, str>),
FailedNumericConv(Cow<'static, str>),
}
Expand description
Custom error.
Variants§
Io(Error)
IO error occurred. The bencode and the torrent may or may not be malformed (as we can’t verify that).
MalformedBencode(Cow<'static, str>)
The bencode is found to be bad before we can parse the torrent, so the torrent may or may not be malformed. This is generally unexpected behavior and thus should be handled.
MalformedTorrent(Cow<'static, str>)
Bencode is fine, but parsed data is gibberish, so we can’t extract a torrent from it.
MalformedResponse(Cow<'static, str>)
Bencode is fine, but parsed data is gibberish, so we can’t extract a response from it.
TorrentBuilderFailure(Cow<'static, str>)
TorrentBuilder
encounters problems when building Torrent
. For instance, a field is set to an empty string by the caller.
InvalidArgument(Cow<'static, str>)
An invalid argument is passed to a function.
FailedNumericConv(Cow<'static, str>)
Conversion between numeric types (e.g. i64 -> u64
) has failed.
Trait Implementations§
source§impl Debug for LavaTorrentError
impl Debug for LavaTorrentError
source§impl Display for LavaTorrentError
impl Display for LavaTorrentError
source§impl Error for LavaTorrentError
impl Error for LavaTorrentError
source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more
1.0.0 · source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Auto Trait Implementations§
impl !RefUnwindSafe for LavaTorrentError
impl Send for LavaTorrentError
impl Sync for LavaTorrentError
impl Unpin for LavaTorrentError
impl !UnwindSafe for LavaTorrentError
Blanket Implementations§
source§impl<Src, Scheme> ApproxFrom<Src, Scheme> for Srcwhere
Scheme: ApproxScheme,
impl<Src, Scheme> ApproxFrom<Src, Scheme> for Srcwhere Scheme: ApproxScheme,
source§fn approx_from(src: Src) -> Result<Src, <Src as ApproxFrom<Src, Scheme>>::Err>
fn approx_from(src: Src) -> Result<Src, <Src as ApproxFrom<Src, Scheme>>::Err>
Convert the given value into an approximately equivalent representation.
source§impl<Dst, Src, Scheme> ApproxInto<Dst, Scheme> for Srcwhere
Dst: ApproxFrom<Src, Scheme>,
Scheme: ApproxScheme,
impl<Dst, Src, Scheme> ApproxInto<Dst, Scheme> for Srcwhere Dst: ApproxFrom<Src, Scheme>, Scheme: ApproxScheme,
§type Err = <Dst as ApproxFrom<Src, Scheme>>::Err
type Err = <Dst as ApproxFrom<Src, Scheme>>::Err
The error type produced by a failed conversion.
source§fn approx_into(self) -> Result<Dst, <Src as ApproxInto<Dst, Scheme>>::Err>
fn approx_into(self) -> Result<Dst, <Src as ApproxInto<Dst, Scheme>>::Err>
Convert the subject into an approximately equivalent representation.
source§impl<T, Dst> ConvAsUtil<Dst> for T
impl<T, Dst> ConvAsUtil<Dst> for T
source§fn approx(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst, DefaultApprox>,
fn approx(self) -> Result<Dst, Self::Err>where Self: Sized + ApproxInto<Dst, DefaultApprox>,
Approximate the subject with the default scheme.
source§fn approx_by<Scheme>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst, Scheme>,
Scheme: ApproxScheme,
fn approx_by<Scheme>(self) -> Result<Dst, Self::Err>where Self: Sized + ApproxInto<Dst, Scheme>, Scheme: ApproxScheme,
Approximate the subject with a specific scheme.
source§impl<T> ConvUtil for T
impl<T> ConvUtil for T
source§fn approx_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst, DefaultApprox>,
fn approx_as<Dst>(self) -> Result<Dst, Self::Err>where Self: Sized + ApproxInto<Dst, DefaultApprox>,
Approximate the subject to a given type with the default scheme.
source§fn approx_as_by<Dst, Scheme>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst, Scheme>,
Scheme: ApproxScheme,
fn approx_as_by<Dst, Scheme>(self) -> Result<Dst, Self::Err>where Self: Sized + ApproxInto<Dst, Scheme>, Scheme: ApproxScheme,
Approximate the subject to a given type with a specific scheme.
source§fn into_as<Dst>(self) -> Dstwhere
Self: Sized + Into<Dst>,
fn into_as<Dst>(self) -> Dstwhere Self: Sized + Into<Dst>,
Convert the subject to a given type.