class GraphQL::StaticValidation::FieldsWillMergeError

def add_conflict(node, conflict_str)

def add_conflict(node, conflict_str)
  return if nodes.include?(node)
  @nodes << node
  @conflicts << conflict_str
end

def code

def code
  "fieldConflict"
end

def conflicts

def conflicts
  @conflicts.join(' or ')
end

def initialize(kind:, field_name:)

def initialize(kind:, field_name:)
  super(nil)
  @field_name = field_name
  @kind = kind
  @conflicts = []
end

def message

def message
  "Field '#{field_name}' has #{kind == :argument ? 'an' : 'a'} #{kind} conflict: #{conflicts}?"
end

def path

def path
  []
end

def to_h

A hash representation of this Message
def to_h
  extensions = {
    "code" => code,
    "fieldName" => field_name,
    "conflicts" => conflicts
  }
  super.merge({
    "extensions" => extensions
  })
end