/** * @inheritDoc * * @throws MiddlewareException * If $classes does not conform to type expectations. */ protected function assertValid(array $classes) { parent::assertValid($classes); foreach ($classes as $middleware) { if (!(is_callable($middleware) || method_exists($middleware, '__invoke'))) { throw MiddlewareException::notInvokable($middleware); } } }