Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
PR Type
Refactor
PR Checklist
Overview
This PR renames the
Factory
trait toHandler
, and theHandler
struct toHandlerService
. This change better reflects the purpose of these types.The trait Factory is not satisfied
is a common error that has caused a lot of confusion as it is pretty cryptic.The trait Handler is not satisfied
makes more sense. I also added documentation listing the requirements of a valid handler.This is a breaking change (even users aren't really meant to implement
Factory
manually), but is important for ergonomics.I also removed the third type parameter (
O
) fromHandler
which simplifies the type definition overall.