fn clear_packets(&mut self, height: Height) -> bool {
        if self.first_run {
            self.first_run = false;
            self.packets_cfg.clear_on_start
        } else {
            self.packets_cfg.clear_interval != 0
                && height.revision_height % self.packets_cfg.clear_interval == 0
        }
    }
/// Whether or not to clear pending packets at this `step` for the given height.
/// Packets are cleared on the first iteration if `clear_on_start` is true.
/// Subsequently, packets are cleared only if `clear_interval` is not `0` and
/// if we have reached the interval.
Whether or not to clear pending packets at this `step` for the given height.
Packets are cleared on the first iteration if `clear_on_start` is true.
Subsequently, packets are cleared only if `clear_interval` is not `0` and
if we have reached the interval.
Whether or not to clear pending packets at this ` step ` for the given height . Packets are cleared on the first iteration if ` clear_on_start ` is true . Subsequently packets are cleared only if ` clear_interval ` is not ` 0 ` and if we have reached the interval .
fn clear_packets(&mut self, height: Height) -> bool {
        if self.first_run {
            self.first_run = false;
            self.packets_cfg.clear_on_start
        } else {
            self.packets_cfg.clear_interval != 0
                && height.revision_height % self.packets_cfg.clear_interval == 0
        }
    }
fn clear_packets ( & mut self , height : Height ) -> bool { if self . first_run { self . first_run = false ; self . packets_cfg . clear_on_start } else { self . packets_cfg . clear_interval != 0 && height . revision_height % self . packets_cfg . clear_interval == 0 } }
Whether or not to clear pending packets at this `step` for the given height.
Whether or not to clear pending packets at this ` step ` for the given height .
&mut self
height
Height
&mut self
height
Height