An extensible protocol for processing commands.
Pro Tip
When defining implementations, use Keyword.fetch!/2 or a custom opts struct to standardize option handling. This way, the Elixir 1.20+ compiler can perform compile-time checks on the options and raise errors during development.
Summary
Types
@type t() :: term()
All the types that implement this protocol.