Skip to content

[meta] Cut out dispatchers #11

Description

@Hywan

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,
  • ClassMethod dispatcher,
  • ObjectMethod dispatcher,
  • Aggregate dispatcher,
  • Basic dispatcher.

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions