class RuboCop::Cop::PostgresMigrationCops::UseAddIndex

end

end

Constants

MSG

Public Instance Methods

on_class(class_node) click to toggle source
# File lib/cops/use_add_index.rb, line 37
def on_class(class_node)
  @is_migration = class_node.children.any? { |n| is_migration?(n) }
end
on_send(send_node) click to toggle source
# File lib/cops/use_add_index.rb, line 41
def on_send(send_node)
  return unless @is_migration

  add_offense(send_node) if contains_index?(send_node)
end

Private Instance Methods

contains_hash_index?(node) click to toggle source
# File lib/cops/use_add_index.rb, line 59
def contains_hash_index?(node)
  opts_node = node.children.last
  return unless opts_node.class == RuboCop::AST::HashNode

  opts_node.children.any? { |n| is_index_pair? n }
end
contains_index?(node) click to toggle source
# File lib/cops/use_add_index.rb, line 53
def contains_index?(node)
  return true if node.children.any? { |n| is_index_symbol?(n) }

  contains_hash_index?(node)
end