pub enum TranscodeConvertError<DE, EE, V> {
Failure(TranscodeFailure),
DecodeDomain(TranscodeDomainError<DE>),
EncodeDomain(TranscodeDomainError<EE>),
Unencodable {
input_index: usize,
value: Option<V>,
},
}Expand description
Error reported by a unit-to-unit transcode conversion.
Variants§
Failure(TranscodeFailure)
Framework-level transcode failure.
DecodeDomain(TranscodeDomainError<DE>)
Source-side domain error.
EncodeDomain(TranscodeDomainError<EE>)
Target-side domain error.
Unencodable
The decoded intermediate value cannot be encoded by the target codec and policy.
Implementations§
Source§impl<DE, EE, V> TranscodeConvertError<DE, EE, V>
impl<DE, EE, V> TranscodeConvertError<DE, EE, V>
Sourcepub const fn decode_domain_reset(source: DE) -> Self
pub const fn decode_domain_reset(source: DE) -> Self
Creates a source reset-phase domain-specific converter error.
Sourcepub const fn decode_domain_main(source: DE, input_index: usize) -> Self
pub const fn decode_domain_main(source: DE, input_index: usize) -> Self
Creates a source main-phase domain-specific converter error.
Sourcepub const fn decode_domain_main_with_consumed(
source: DE,
input_index: usize,
input_consumed: Option<NonZeroUsize>,
) -> Self
pub const fn decode_domain_main_with_consumed( source: DE, input_index: usize, input_consumed: Option<NonZeroUsize>, ) -> Self
Creates a source main-phase converter error with decode consumption context.
Sourcepub const fn decode_domain_finish(source: DE) -> Self
pub const fn decode_domain_finish(source: DE) -> Self
Creates a source finish-phase domain-specific converter error.
Sourcepub const fn encode_domain_reset(source: EE) -> Self
pub const fn encode_domain_reset(source: EE) -> Self
Creates a target reset-phase domain-specific converter error.
Sourcepub const fn encode_domain_main(source: EE, input_index: usize) -> Self
pub const fn encode_domain_main(source: EE, input_index: usize) -> Self
Creates a target main-phase domain-specific converter error.
Sourcepub const fn encode_domain_finish(source: EE) -> Self
pub const fn encode_domain_finish(source: EE) -> Self
Creates a target finish-phase domain-specific converter error.
Sourcepub fn unencodable(input_index: usize, value: V) -> Self
pub fn unencodable(input_index: usize, value: V) -> Self
Creates an unencodable intermediate-value error with value context.
Sourcepub const fn unencodable_without_context(input_index: usize) -> Self
pub const fn unencodable_without_context(input_index: usize) -> Self
Creates an unencodable intermediate-value error without value context.
Sourcepub const fn failure_ref(&self) -> Option<&TranscodeFailure>
pub const fn failure_ref(&self) -> Option<&TranscodeFailure>
Returns the framework failure carried by this error.
Sourcepub const fn unencodable_ref(&self) -> Option<(usize, Option<&V>)>
pub const fn unencodable_ref(&self) -> Option<(usize, Option<&V>)>
Borrows the unencodable value context carried by this error.
Sourcepub fn map_decode_domain<F, T>(self, f: F) -> TranscodeConvertError<T, EE, V>where
F: FnOnce(DE) -> T,
pub fn map_decode_domain<F, T>(self, f: F) -> TranscodeConvertError<T, EE, V>where
F: FnOnce(DE) -> T,
Maps the source domain error while preserving other errors.
Sourcepub fn map_encode_domain<F, T>(self, f: F) -> TranscodeConvertError<DE, T, V>where
F: FnOnce(EE) -> T,
pub fn map_encode_domain<F, T>(self, f: F) -> TranscodeConvertError<DE, T, V>where
F: FnOnce(EE) -> T,
Maps the target domain error while preserving other errors.
Sourcepub fn map_value<F, W>(self, f: F) -> TranscodeConvertError<DE, EE, W>where
F: FnOnce(V) -> W,
pub fn map_value<F, W>(self, f: F) -> TranscodeConvertError<DE, EE, W>where
F: FnOnce(V) -> W,
Maps value context carried by unencodable-value errors.
Sourcepub fn from_encode_error_with_value(
error: TranscodeEncodeError<EE, V>,
fallback_value: V,
) -> Self
pub fn from_encode_error_with_value( error: TranscodeEncodeError<EE, V>, fallback_value: V, ) -> Self
Converts an encode error into a converter error while adding fallback value context to unencodable errors that lack it.
Trait Implementations§
Source§impl<DE: Clone, EE: Clone, V: Clone> Clone for TranscodeConvertError<DE, EE, V>
impl<DE: Clone, EE: Clone, V: Clone> Clone for TranscodeConvertError<DE, EE, V>
Source§fn clone(&self) -> TranscodeConvertError<DE, EE, V>
fn clone(&self) -> TranscodeConvertError<DE, EE, V>
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl<DE, EE, V> Display for TranscodeConvertError<DE, EE, V>
impl<DE, EE, V> Display for TranscodeConvertError<DE, EE, V>
impl<DE: Eq, EE: Eq, V: Eq> Eq for TranscodeConvertError<DE, EE, V>
Source§impl<DE, EE, V> Error for TranscodeConvertError<DE, EE, V>where
TranscodeDomainError<DE>: Error + 'static,
TranscodeDomainError<EE>: Error + 'static,
Self: Debug + Display,
impl<DE, EE, V> Error for TranscodeConvertError<DE, EE, V>where
TranscodeDomainError<DE>: Error + 'static,
TranscodeDomainError<EE>: Error + 'static,
Self: Debug + Display,
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl<DE, EE, V> From<CapacityError> for TranscodeConvertError<DE, EE, V>
impl<DE, EE, V> From<CapacityError> for TranscodeConvertError<DE, EE, V>
Source§fn from(error: CapacityError) -> Self
fn from(error: CapacityError) -> Self
Converts capacity planning errors into transcode framework errors.
Source§impl<DE, EE, V> From<TranscodeDecodeError<DE>> for TranscodeConvertError<DE, EE, V>
impl<DE, EE, V> From<TranscodeDecodeError<DE>> for TranscodeConvertError<DE, EE, V>
Source§fn from(error: TranscodeDecodeError<DE>) -> Self
fn from(error: TranscodeDecodeError<DE>) -> Self
Converts a source-side decode error into a converter error.
Source§impl<DE, EE, V> From<TranscodeEncodeError<EE, V>> for TranscodeConvertError<DE, EE, V>
impl<DE, EE, V> From<TranscodeEncodeError<EE, V>> for TranscodeConvertError<DE, EE, V>
Source§fn from(error: TranscodeEncodeError<EE, V>) -> Self
fn from(error: TranscodeEncodeError<EE, V>) -> Self
Converts a target-side encode error into a converter error.