pub trait PostDownloadProcessor: Send + Sync {
// Required methods
fn name(&self) -> &str;
fn supported_input_formats(&self) -> &[ContentFormatKind];
fn process(
&self,
input: &CompletedDownloadInfo,
output_path: &Path,
progress: &dyn ProcessorProgress,
) -> Result<ProcessorOutput, ProcessorError>;
// Provided methods
fn capabilities(&self) -> ProcessorCapabilities { ... }
fn supports_assembly(&self) -> bool { ... }
fn assemble(
&self,
input: &CompletedDownloadInfo,
_output_path: &Path,
_progress: &dyn ProcessorProgress,
) -> Result<ProcessorOutput, ProcessorError> { ... }
}Required Methods§
fn name(&self) -> &str
fn supported_input_formats(&self) -> &[ContentFormatKind]
fn process( &self, input: &CompletedDownloadInfo, output_path: &Path, progress: &dyn ProcessorProgress, ) -> Result<ProcessorOutput, ProcessorError>
Provided Methods§
fn capabilities(&self) -> ProcessorCapabilities
fn supports_assembly(&self) -> bool
fn assemble( &self, input: &CompletedDownloadInfo, _output_path: &Path, _progress: &dyn ProcessorProgress, ) -> Result<ProcessorOutput, ProcessorError>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".