private void VisitArguments( IEnumerable <ArgumentNode> arguments, IFieldCollection <IInputField> argumentFields) { foreach (ArgumentNode argument in arguments) { if (argument.Value is ObjectValueNode ov && argumentFields.TryGetField(argument.Name.Value, out IInputField argumentField) && argumentField.Type.NamedType() is InputObjectType io) { VisitObjectValue(io, ov); } } }
private void ValidateArguments( IFieldCollection <IInputField> arguments, IEnumerable <ArgumentNode> argumentNodes) { foreach (ArgumentNode argument in argumentNodes) { if (argument.Value is VariableNode vn && arguments.TryGetField(argument.Name.Value, out IInputField f)) { _variablesUsages.Add( new VariableUsage(f, argument, vn)); } } }