Skip to main content

VisitColumnsOps

Trait VisitColumnsOps 

Source
pub trait VisitColumnsOps {
    // Required methods
    fn visit_columns_by_block<Visitor, SharedIn, SharedOut>(
        &self,
        visitor: &Visitor,
        shared_in: &SharedIn,
        shared_out: &mut SharedOut,
        block_size: Option<usize>,
    ) -> Result<()>
       where Visitor: Fn((usize, usize), &Self, &SharedIn, Arc<Mutex<&mut SharedOut>>) -> Result<()> + Sync + Send,
             SharedIn: Sync + Send + ?Sized,
             SharedOut: Sync + Send;
    fn visit_columns_by_group<Visitor, SharedIn, SharedOut>(
        &self,
        visitor: &Visitor,
        shared_in: &SharedIn,
        shared_out: &mut SharedOut,
    ) -> Result<()>
       where Visitor: Fn(usize, &[usize], &Self, &SharedIn, Arc<Mutex<&mut SharedOut>>) -> Result<()> + Sync + Send,
             SharedIn: Sync + Send + ?Sized,
             SharedOut: Sync + Send;
}

Required Methods§

Source

fn visit_columns_by_block<Visitor, SharedIn, SharedOut>( &self, visitor: &Visitor, shared_in: &SharedIn, shared_out: &mut SharedOut, block_size: Option<usize>, ) -> Result<()>
where Visitor: Fn((usize, usize), &Self, &SharedIn, Arc<Mutex<&mut SharedOut>>) -> Result<()> + Sync + Send, SharedIn: Sync + Send + ?Sized, SharedOut: Sync + Send,

visit all the columns by sequential blocks. The visitor function should take (a) (lb, ub) (b) &Self (c) &SharedIn (d) Arc::new(Mutex::new(&mut SharedOut)

Source

fn visit_columns_by_group<Visitor, SharedIn, SharedOut>( &self, visitor: &Visitor, shared_in: &SharedIn, shared_out: &mut SharedOut, ) -> Result<()>
where Visitor: Fn(usize, &[usize], &Self, &SharedIn, Arc<Mutex<&mut SharedOut>>) -> Result<()> + Sync + Send, SharedIn: Sync + Send + ?Sized, SharedOut: Sync + Send,

visit all the columns by predefined groups assigned by self.assign_groups. The visitor function should take (a) group_index (b) &[columns_in_the_group] (c) &Self (d) &SharedIn (e) Arc::new(Mutex::new(&mut SharedOut)

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§