The service container resolves callables too

The container is usually described in terms of constructor injection, so a method needing one dependency for one call ends up either taking it in the constructor or reaching for a facade.

// resolves the method's type-hinted parameters from the container
app()->call([$report, 'generate']);

app()->call([$report, 'generate'], ['from' => $start]);

// which is how controller methods get their dependencies
public function show(Order $order, Catalogue $catalogue) { /* ... */ }

That last line is the mechanism behind method injection in controllers, and it works anywhere — a console command, a job, a listener. The trade is that the dependency is now invisible to anything constructing the object directly, including a test, so it suits a genuinely per-call dependency and not one the class always needs.