pub trait Handler: Send + Sync {
type A;
type B;
type C;
type D;
type E;
type F;
type G;
type H;
type HandleResult;
// Required method
fn handle(
&self,
env: Arc<dyn GrayVersion>,
func: Atom,
args: Args<Self::A, Self::B, Self::C, Self::D, Self::E, Self::F, Self::G, Self::H>,
) -> LocalBoxFuture<'static, Self::HandleResult>;
}