pub trait SimNodeErased<const N: usize, const Q: usize> {
// Required methods
fn address(&self) -> &NodeAddress;
fn handle(&mut self, src: &NodeAddress, data: &[u8], now: Instant);
fn tick(&mut self, now: Instant);
fn drain_outbox(
&mut self,
out: &mut Vec<(NodeAddress, Vec<u8, N>), Q>,
) -> usize;
}