use namada_core::borsh::{BorshDeserialize, BorshSerialize};
pub use namada_core::ethereum_events::EthereumEvent;
use namada_macros::BorshDeserializer;
#[cfg(feature = "migrations")]
use namada_migrations::*;
#[derive(Clone, Debug, BorshSerialize, BorshDeserialize, BorshDeserializer)]
pub enum ExpiredTx {
EthereumEvent(EthereumEvent),
}
#[derive(
Default, Clone, Debug, BorshSerialize, BorshDeserialize, BorshDeserializer,
)]
pub struct ExpiredTxsQueue {
inner: Vec<ExpiredTx>,
}
impl ExpiredTxsQueue {
#[inline]
pub fn push(&mut self, tx: ExpiredTx) {
self.inner.push(tx);
}
#[inline]
pub fn drain(&mut self) -> impl Iterator<Item = ExpiredTx> + '_ {
self.inner.drain(..)
}
}