pub trait TransformBuilder: MemoryBounds {
// Required methods
fn input_event_type(&self) -> EventType;
fn outputs(&self) -> &[OutputDefinition<EventType>];
fn build<'life0, 'async_trait>(
&'life0 self,
context: ComponentContext,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn Transform + Send>, GenericError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
}Expand description
A transform builder.
Transform builders are responsible for creating instances of Transforms, as well as describing high-level
aspects of the built transform, such as the data types allowed for input events and the outputs exposed by the
transform.
Required Methods§
Sourcefn input_event_type(&self) -> EventType
fn input_event_type(&self) -> EventType
Event type allowed as input events to this transform.
Sourcefn outputs(&self) -> &[OutputDefinition<EventType>]
fn outputs(&self) -> &[OutputDefinition<EventType>]
Event outputs exposed by this transform.
Sourcefn build<'life0, 'async_trait>(
&'life0 self,
context: ComponentContext,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn Transform + Send>, GenericError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn build<'life0, 'async_trait>(
&'life0 self,
context: ComponentContext,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn Transform + Send>, GenericError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Builds an instance of the transform.
§Errors
If the transform 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".