Class: GraphQL::Modernize::Rules::TypeIndexKeys

Inherits:
Base
  • Object
show all
Defined in:
lib/graphql/modernize/rules/deprecation.rb

Instance Attribute Summary

Attributes inherited from Base

#offenses

Instance Method Summary collapse

Methods inherited from Base

#initialize, node_pattern, node_types, rule, #visit

Constructor Details

This class inherits a constructor from GraphQL::Modernize::Rules::Base

Instance Method Details

#on_match(node, _captures) ⇒ Object



175
176
177
178
179
180
181
# File 'lib/graphql/modernize/rules/deprecation.rb', line 175

def on_match(node, _captures)
  receiver = node.receiver&.location&.slice
  return unless %i[possible_types references_to].include?(node.name)
  return unless (receiver == "self" && inside?(node, :schema)) || hierarchy.resolve_kind(receiver) == :schema

  add_offense(node.location, message: "Return keys changed from type-name strings to type classes")
end