From 8122a101797da42cba437faec40f193088ef76cf Mon Sep 17 00:00:00 2001 From: Andreas Fackler Date: Tue, 23 Jul 2019 10:48:00 +0200 Subject: [PATCH] Add HoneyBadger::skip_to_epoch. --- src/honey_badger/honey_badger.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/honey_badger/honey_badger.rs b/src/honey_badger/honey_badger.rs index b9d1ed3..ac785d7 100644 --- a/src/honey_badger/honey_badger.rs +++ b/src/honey_badger/honey_badger.rs @@ -131,6 +131,16 @@ where self.epoch } + /// Skips all epochs before the specified one. + /// + /// This must only be called if it is guaranteed to be called in all instances that have not + /// progressed to that epoch yet. Otherwise an instance can be left behind in a skipped epoch. + pub fn skip_to_epoch(&mut self, epoch: u64) { + while self.epoch < epoch { + self.update_epoch(); + } + } + /// Returns the number of validators from which we have already received a proposal for the /// current epoch. ///