class RuboCop::Cop::Lint::DuplicateHashKey
Checks for duplicated keys in hash literals. This cop considers both primitive types and constants for the hash keys.
This cop mirrors a warning in Ruby 2.2.
@example
# bad hash = { food: 'apple', food: 'orange' } # good hash = { food: 'apple', other_food: 'orange' }
Constants
- MSG
Public Instance Methods
Source
# File lib/rubocop/cop/lint/duplicate_hash_key.rb, line 23 def on_hash(node) keys = node.keys.select { |key| key.recursive_basic_literal? || key.const_type? } return unless duplicates?(keys) consecutive_duplicates(keys).each { |key| add_offense(key) } end