fn update_commit_3chain_round()

in librabft-v2/src/record_store.rs [221:235]


    fn update_commit_3chain_round(&mut self, qc_hash: QuorumCertificateHash<Context::HashValue>) {
        let rounds = {
            let mut iter = self.ancestor_rounds(qc_hash);
            let r3 = iter.next();
            let r2 = iter.next();
            let r1 = iter.next();
            (r1, r2, r3)
        };
        if let (Some(r1), Some(r2), Some(r3)) = rounds {
            if r3 == r2 + 1 && r2 == r1 + 1 && r1 > self.highest_committed_round {
                self.highest_committed_round = r1;
                self.highest_commit_certificate_hash = Some(qc_hash);
            }
        }
    }