use failure::Fail;
use std::fmt::Debug;
#[derive(Debug, Fail)]
pub enum Error<E>
where
E: Debug + Fail,
{
#[fail(display = "Function application failure: {}", _0)]
Apply(E),
#[fail(display = "DynamicHoneyBadger was not removed before restarting")]
DynamicHoneyBadgerNotRemoved,
#[fail(display = "Failed to start a new joining DynamicHoneyBadger: {}", _0)]
DynamicHoneyBadgerNewJoining(E),
}