class GraphQL::StaticValidation::ArgumentLiteralsAreCompatible

def validate_node(parent, node, defn, context)

def validate_node(parent, node, defn, context)
  return if node.value.is_a?(GraphQL::Language::Nodes::VariableIdentifier)
  validator = GraphQL::StaticValidation::LiteralValidator.new
  arg_defn = defn.arguments[node.name]
  return unless arg_defn
  valid = validator.validate(node.value, arg_defn.type)
  if !valid
    kind_of_node = node_type(parent)
    error_arg_name = parent_name(parent, defn)
    context.errors << message("Argument '#{node.name}' on #{kind_of_node} '#{error_arg_name}' has an invalid value. Expected type '#{arg_defn.type}'.", parent, context: context)
  end
end