Automattic\WooCommerce\Vendor\GraphQL\Validator\Rules

UniqueArgumentDefinitionNames::checkArgUniquenessprivate staticWC 1.0

Method of the class: UniqueArgumentDefinitionNames{}

No Hooks.

Returns

null. Nothing (null).

Usage

$result = UniqueArgumentDefinitionNames::checkArgUniqueness( $parentName, $arguments, $context ): VisitorOperation;
$parentName(string) (required)
.
$arguments(NodeList) (required)
.
$context(SDLValidationContext) (required)
.

UniqueArgumentDefinitionNames::checkArgUniqueness() code WC 10.9.4

private static function checkArgUniqueness(string $parentName, NodeList $arguments, SDLValidationContext $context): VisitorOperation
{
    $seenArgs = [];
    foreach ($arguments as $argument) {
        $seenArgs[$argument->name->value][] = $argument;
    }

    foreach ($seenArgs as $argName => $argNodes) {
        if (count($argNodes) > 1) {
            $context->reportError(
                new Error(
                    "Argument \"{$parentName}({$argName}:)\" can only be defined once.",
                    $argNodes,
                ),
            );
        }
    }

    return Visitor::skipNode();
}