Trait datafusion_physical_plan::joins::utils::JoinHashMapType
source · pub trait JoinHashMapType {
type NextType: IndexMut<usize, Output = u64>;
// Required methods
fn extend_zero(&mut self, len: usize);
fn get_mut(&mut self) -> (&mut RawTable<(u64, u64)>, &mut Self::NextType);
fn get_map(&self) -> &RawTable<(u64, u64)>;
fn get_list(&self) -> &Self::NextType;
// Provided methods
fn update_from_iter<'a>(
&mut self,
iter: impl Iterator<Item = (usize, &'a u64)>,
deleted_offset: usize,
) { ... }
fn get_matched_indices<'a>(
&self,
iter: impl Iterator<Item = (usize, &'a u64)>,
deleted_offset: Option<usize>,
) -> (UInt32BufferBuilder, UInt64BufferBuilder) { ... }
fn get_matched_indices_with_limit_offset(
&self,
hash_values: &[u64],
deleted_offset: Option<usize>,
limit: usize,
offset: (usize, Option<u64>),
) -> (UInt32BufferBuilder, UInt64BufferBuilder, Option<(usize, Option<u64>)>) { ... }
}
Required Associated Types§
Required Methods§
sourcefn extend_zero(&mut self, len: usize)
fn extend_zero(&mut self, len: usize)
Extend with zero
Provided Methods§
sourcefn update_from_iter<'a>(
&mut self,
iter: impl Iterator<Item = (usize, &'a u64)>,
deleted_offset: usize,
)
fn update_from_iter<'a>( &mut self, iter: impl Iterator<Item = (usize, &'a u64)>, deleted_offset: usize, )
Updates hashmap from iterator of row indices & row hashes pairs.
sourcefn get_matched_indices<'a>(
&self,
iter: impl Iterator<Item = (usize, &'a u64)>,
deleted_offset: Option<usize>,
) -> (UInt32BufferBuilder, UInt64BufferBuilder)
fn get_matched_indices<'a>( &self, iter: impl Iterator<Item = (usize, &'a u64)>, deleted_offset: Option<usize>, ) -> (UInt32BufferBuilder, UInt64BufferBuilder)
Returns all pairs of row indices matched by hash.
This method only compares hashes, so additional further check for actual values equality may be required.
sourcefn get_matched_indices_with_limit_offset(
&self,
hash_values: &[u64],
deleted_offset: Option<usize>,
limit: usize,
offset: (usize, Option<u64>),
) -> (UInt32BufferBuilder, UInt64BufferBuilder, Option<(usize, Option<u64>)>)
fn get_matched_indices_with_limit_offset( &self, hash_values: &[u64], deleted_offset: Option<usize>, limit: usize, offset: (usize, Option<u64>), ) -> (UInt32BufferBuilder, UInt64BufferBuilder, Option<(usize, Option<u64>)>)
Matches hashes with taking limit and offset into account.
Returns pairs of matched indices along with the starting point for next
matching iteration (None
if limit has not been reached).
This method only compares hashes, so additional further check for actual values equality may be required.
Object Safety§
This trait is not object safe.
Implementors§
source§impl JoinHashMapType for JoinHashMap
impl JoinHashMapType for JoinHashMap
Implementation of JoinHashMapType
for JoinHashMap
.