pub struct CompositeBlocker { /* private fields */ }Expand description
Composite blocker that applies multiple blocking keys.
For cross-schema linkage, source_remaps stores per-source field-name
translations (b_field to a_field). Before key extraction, any record
whose source label has an entry in source_remaps gets its fields
renamed to the canonical (A-side) names so the existing BlockingKey
implementations can extract values without knowing about schema differences.
Implementations§
Source§impl CompositeBlocker
impl CompositeBlocker
pub fn new() -> Self
pub fn add(self, key: impl BlockingKey + 'static) -> Self
pub fn add_boxed(self, key: Box<dyn BlockingKey>) -> Self
Trait Implementations§
Source§impl Blocker for CompositeBlocker
impl Blocker for CompositeBlocker
fn blocking_keys(&self, record: &Record, schema: &Schema) -> Vec<String>
fn index_record( &self, record: &Record, schema: &Schema, index: &mut dyn BlockIndex, )
fn candidates( &self, record: &Record, schema: &Schema, index: &dyn BlockIndex, ) -> Vec<RecordId> ⓘ
Auto Trait Implementations§
impl Freeze for CompositeBlocker
impl !RefUnwindSafe for CompositeBlocker
impl Send for CompositeBlocker
impl Sync for CompositeBlocker
impl Unpin for CompositeBlocker
impl UnsafeUnpin for CompositeBlocker
impl !UnwindSafe for CompositeBlocker
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more