protected function createPointcutContext(TypeInfoInterface $type, MethodInfoInterface $method) { $context = new PointcutContext($type->getNamespaceContext()); foreach ($method->getParameters() as $param) { $context->addParam($param->getName(), $param->getRequiredType()); } foreach ($method->getAnnotationCandidates() as $anno) { $context->addAnnotation($anno); } return $context; }