fn insert_blob_is_dup(
            id: &Pubkey,
            blob: SharedBlob,
            pix: u64,
            window_slot: &mut Option<SharedBlob>,
            c_or_d: &str,
        ) -> bool {
            if let Some(old) = mem::replace(window_slot, Some(blob)) {
                let is_dup = old.read().unwrap().index().unwrap() == pix;
                trace!(
                    "{}: occupied {} window slot {:}, is_dup: {}",
                    id,
                    c_or_d,
                    pix,
                    is_dup
                );
                is_dup
            } else {
                trace!("{}: empty {} window slot {:}", id, c_or_d, pix);
                false
            }
        }
// insert a newly received blob into a window slot, clearing out and recycling any previous
//  blob unless the incoming blob is a duplicate (based on idx)
// returns whether the incoming is a duplicate blob
insert a newly received blob into a window slot, clearing out and recycling any previous
blob unless the incoming blob is a duplicate (based on idx)
returns whether the incoming is a duplicate blob
insert a newly received blob into a window slot clearing out and recycling any previous blob unless the incoming blob is a duplicate ( based on idx ) returns whether the incoming is a duplicate blob
fn insert_blob_is_dup(
            id: &Pubkey,
            blob: SharedBlob,
            pix: u64,
            window_slot: &mut Option<SharedBlob>,
            c_or_d: &str,
        ) -> bool {
            if let Some(old) = mem::replace(window_slot, Some(blob)) {
                let is_dup = old.read().unwrap().index().unwrap() == pix;
                trace!(
                    "{}: occupied {} window slot {:}, is_dup: {}",
                    id,
                    c_or_d,
                    pix,
                    is_dup
                );
                is_dup
            } else {
                trace!("{}: empty {} window slot {:}", id, c_or_d, pix);
                false
            }
        }
fn insert_blob_is_dup ( id : & Pubkey , blob : SharedBlob , pix : u64 , window_slot : & mut Option < SharedBlob > , c_or_d : & str , ) -> bool { if let Some ( old ) = mem :: replace ( window_slot , Some ( blob ) ) { let is_dup = old . read ( ) . unwrap ( ) . index ( ) . unwrap ( ) == pix ; trace ! ( " " id c_or_d pix is_dup ) ; is_dup } else { trace ! ( " " id c_or_d pix ) ; false } }
insert a newly received blob into a window slot, clearing out and recycling any previous
blob unless the incoming blob is a duplicate (based on idx)
returns whether the incoming is a duplicate blob
insert a newly received blob into a window slot clearing out and recycling any previous blob unless the incoming blob is a duplicate ( based on idx ) returns whether the incoming is a duplicate blob
id
&Pubkey
blob
SharedBlob
pix
u64
window_slot
&mut Option<SharedBlob>
c_or_d
&str
id
&Pubkey
blob
SharedBlob
pix
u64
window_slot
&mut Option<SharedBlob>
c_or_d
&str