pub trait TranscodeConvertHooks<D, E>{
type Error;
type DecodeError;
type EncodeError;
type DecodeHooks: TranscodeDecodeHooks<D, Error = Self::DecodeError>;
type EncodeHooks: TranscodeEncodeHooks<E, Error = Self::EncodeError>;
// Required methods
fn create_decode_hooks(
&self,
decode_codec: &D,
encode_codec: &E,
) -> Self::DecodeHooks;
fn create_encode_hooks(
&self,
decode_codec: &D,
encode_codec: &E,
) -> Self::EncodeHooks;
fn map_decode_error(&self, error: Self::DecodeError) -> Self::Error;
fn map_encode_error(&self, error: Self::EncodeError) -> Self::Error;
// Provided method
fn reset(&mut self) { ... }
}Expand description
Policy hooks for crate::TranscodeConvertEngine.
Convert hooks no longer own decoded pending values or the conversion loop. The engine owns source/target cursor state, retained decoded values, output capacity checks, and final progress reporting. Hooks only select the decode/encode policies used by the internal buffered engines and map their errors into one converter-level error type.
§Type Parameters
D: Source-side decode codec owned by the converter engine.E: Target-side encode codec owned by the converter engine.
Required Associated Types§
Sourcetype DecodeError
type DecodeError
Error type returned by the selected decode hooks.
Sourcetype EncodeError
type EncodeError
Error type returned by the selected encode hooks.
Sourcetype DecodeHooks: TranscodeDecodeHooks<D, Error = Self::DecodeError>
type DecodeHooks: TranscodeDecodeHooks<D, Error = Self::DecodeError>
Decode policy hooks used by the internal buffered decoder.
Sourcetype EncodeHooks: TranscodeEncodeHooks<E, Error = Self::EncodeError>
type EncodeHooks: TranscodeEncodeHooks<E, Error = Self::EncodeError>
Encode policy hooks used by the internal buffered encoder.
Required Methods§
Sourcefn create_decode_hooks(
&self,
decode_codec: &D,
encode_codec: &E,
) -> Self::DecodeHooks
fn create_decode_hooks( &self, decode_codec: &D, encode_codec: &E, ) -> Self::DecodeHooks
Sourcefn create_encode_hooks(
&self,
decode_codec: &D,
encode_codec: &E,
) -> Self::EncodeHooks
fn create_encode_hooks( &self, decode_codec: &D, encode_codec: &E, ) -> Self::EncodeHooks
Sourcefn map_decode_error(&self, error: Self::DecodeError) -> Self::Error
fn map_decode_error(&self, error: Self::DecodeError) -> Self::Error
Sourcefn map_encode_error(&self, error: Self::EncodeError) -> Self::Error
fn map_encode_error(&self, error: Self::EncodeError) -> Self::Error
Provided Methods§
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".