GraphQL\Validator\Rules\UniqueArgumentNames::__invoke PHP Метод

__invoke() публичный Метод

public __invoke ( ValidationContext $context )
$context GraphQL\Validator\ValidationContext
    public function __invoke(ValidationContext $context)
    {
        $this->knownArgNames = [];
        return [NodeKind::FIELD => function () {
            $this->knownArgNames = [];
        }, NodeKind::DIRECTIVE => function () {
            $this->knownArgNames = [];
        }, NodeKind::ARGUMENT => function (ArgumentNode $node) use($context) {
            $argName = $node->name->value;
            if (!empty($this->knownArgNames[$argName])) {
                $context->reportError(new Error(self::duplicateArgMessage($argName), [$this->knownArgNames[$argName], $node->name]));
            } else {
                $this->knownArgNames[$argName] = $node->name;
            }
            return Visitor::skipNode();
        }];
    }