impl#impl_generics #actionable::#dispatcher_trait<#enum_type> for #type_name#type_generics #where_clause {
type Result = Result<<Self as #generated_dispatcher_name>::Output,<Self as #generated_dispatcher_name>::Error>;
#async_keyword fn dispatch(&self, permissions: &#actionable::Permissions, request: #enum_type) -> Self::Result {
pub(crate) fn derive(input: &syn::DeriveInput, asynchronous: bool) -> Result<TokenStream, Error> {