use Result;
use ;
use async_trait;
/// Trait every protocol implementation provides. `async fn` is wrapped
/// by `async-trait` so the trait stays object-safe — knockknock
/// dispatches via `Box<dyn Pinger>` and that requires dyn-safety.
/// Time a single ping. Generic over `?Sized` so it accepts both
/// concrete pinger types and `&dyn Pinger`.
pub async Sized>