INNER CODE UNIT · Rust

iter_unique

kaist-ina/BWA-MEME · RMI/rmi_lib/src/models/mod.rs:399

    pub fn iter_unique(&self) -> impl Iterator<Item = (T, usize)> + '_ {
        map_scale!(self, DedupIter::new(self.iterable.cdf_iter()))
    }


    // Code adapted from superslice,
    // https://docs.rs/superslice/1.0.0/src/superslice/lib.rs.html
    // which was copyright 2017 Alkis Evlogimenos under the Apache License.
    pub fn lower_bound_by<F>(&self, f: F) -> usize
    where F: Fn((T, usize)) -> Ordering {
        let mut size = self.len();
        if size == 0 { return 0; }
        
        let mut base = 0usize;
        while size > 1 {
            let half = size / 2;
            let mid = base + half;
            let cmp = f(self.get(mid));

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…