pub trait TextCleanup: Send + Sync {
// Required methods
fn name(&self) -> &'static str;
fn kind(&self) -> CleanupProviderKind;
fn cleanup<'life0, 'life1, 'async_trait>(
&'life0 self,
text: &'life1 str,
style: CleanupStyle,
) -> Pin<Box<dyn Future<Output = Result<CleanupResult>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
// Provided method
fn cleanup_segments<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
texts: &'life1 [&'life2 str],
style: CleanupStyle,
) -> Pin<Box<dyn Future<Output = Result<Vec<String>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait { ... }
}Expand description
Pluggable cleanup backend.
Required Methods§
fn name(&self) -> &'static str
fn kind(&self) -> CleanupProviderKind
fn cleanup<'life0, 'life1, 'async_trait>(
&'life0 self,
text: &'life1 str,
style: CleanupStyle,
) -> Pin<Box<dyn Future<Output = Result<CleanupResult>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Provided Methods§
Sourcefn cleanup_segments<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
texts: &'life1 [&'life2 str],
style: CleanupStyle,
) -> Pin<Box<dyn Future<Output = Result<Vec<String>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn cleanup_segments<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
texts: &'life1 [&'life2 str],
style: CleanupStyle,
) -> Pin<Box<dyn Future<Output = Result<Vec<String>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Clean many segment texts transactionally (JOE-1832).
Default: sequential single-text calls. Remote backends may batch with stable indices and must return only after all work succeeds.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".