The Basic dispatcher is able to dispatch a request/task on several callables: function, closure, class+method, object+method…
The idea is to extract each one of these forms as a standalone dispatcher. Then, when they will be tested, we could introduce an Aggregate dispatcher. Finally, the Basic dispatcher would be a special usage of the Aggregate dispatcher that aggregates all the existing dispatchers.
The roadmap is:
ensuring better performances for all dispatchers,
ensuring better testability for all dispatchers,
do not introduce BC break (not a lot at least, one is necessary, see incoming issues or PR),
ensuring a better modularity by choosing/aggregating dispatchers.
Progress:
[ ] Function (incl. Closure) dispatcher,
[x] ClassMethod dispatcher,
[ ] ObjectMethod dispatcher,
[ ] Aggregate dispatcher,
[ ] Basic dispatcher.
---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/7616920-meta-cut-out-dispatchers?utm_campaign=plugin&utm_content=tracker%2F2101836&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F2101836&utm_medium=issues&utm_source=github).
The Basic dispatcher is able to dispatch a request/task on several callables: function, closure, class+method, object+method…
The idea is to extract each one of these forms as a standalone dispatcher. Then, when they will be tested, we could introduce an Aggregate dispatcher. Finally, the Basic dispatcher would be a special usage of the Aggregate dispatcher that aggregates all the existing dispatchers.
The roadmap is:
Progress: