Skip to main content

DecoderBuilder

Trait DecoderBuilder 

Source
pub trait DecoderBuilder: MemoryBounds {
    // Required methods
    fn input_payload_type(&self) -> PayloadType;
    fn output_event_type(&self) -> EventType;
    fn build<'life0, 'async_trait>(
        &'life0 self,
        context: ComponentContext,
    ) -> Pin<Box<dyn Future<Output = Result<Box<dyn Decoder + Send>, GenericError>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
}
Expand description

A decoder builder.

Decoder builders are responsible for creating instances of Decoders, as well as describing high-level aspects of the built decoder, such as the data types allowed for input events and the outputs exposed by the decoder.

Required Methods§

Source

fn input_payload_type(&self) -> PayloadType

Data types allowed as input payloads to this decoder.

Source

fn output_event_type(&self) -> EventType

Data types emitted as output events by this decoder.

Source

fn build<'life0, 'async_trait>( &'life0 self, context: ComponentContext, ) -> Pin<Box<dyn Future<Output = Result<Box<dyn Decoder + Send>, GenericError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Builds an instance of the decoder.

§Errors

If the decoder can’t be built for any reason, an error is returned.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§