fn refill_value_pair_buffer(
    blocks: &mut BTreeMap<String, BlockData>,
    dst: &mut Vec<Option<ValuePair>>,
) {
    for (block, dst) in blocks.values_mut().zip(dst) {
        if dst.is_none() {
            // (ts, value) pair has been used - fetch next pair (if any).
            *dst = block.next_pair();
        }
    }
}
// Fills any empty (consumed) values from the destination vector with the next
// value from the input set of blocks.
Fills any empty (consumed) values from the destination vector with the next
value from the input set of blocks.
Fills any empty ( consumed ) values from the destination vector with the next value from the input set of blocks .
fn refill_value_pair_buffer(
    blocks: &mut BTreeMap<String, BlockData>,
    dst: &mut Vec<Option<ValuePair>>,
) {
    for (block, dst) in blocks.values_mut().zip(dst) {
        if dst.is_none() {
            // (ts, value) pair has been used - fetch next pair (if any).
            *dst = block.next_pair();
        }
    }
}
fn refill_value_pair_buffer ( blocks : & mut BTreeMap < String , BlockData > , dst : & mut Vec < Option < ValuePair > > , ) { for ( block , dst ) in blocks . values_mut ( ) . zip ( dst ) { if dst . is_none ( ) { // (ts, value) pair has been used - fetch next pair (if any). * dst = block . next_pair ( ) ; } } }
Fills any empty (consumed) values from the destination vector with the next
value from the input set of blocks.
Fills any empty ( consumed ) values from the destination vector with the next value from the input set of blocks .
blocks
&mut BTreeMap<String, BlockData>
dst
&mut Vec<Option<ValuePair>>
blocks
&mut BTreeMap<String, BlockData>
dst
&mut Vec<Option<ValuePair>>