lib/arstotzka/key_reader.rb in arstotzka-1.4.0 vs lib/arstotzka/key_reader.rb in arstotzka-1.4.1

- old
+ new

@@ -46,10 +46,11 @@ end private attr_reader :hash, :base_key, :options + delegate :key, to: :key_changer # @private # # Checks if hash contains or not the key # @@ -64,25 +65,13 @@ hash.key?(key) || hash.key?(key.to_sym) end # @private # - # Transforms the key to have the correct case + # Returns key changer for getting the correct key # - # the possible cases (instance attribute) are - # - lower_camel: for cammel case with first letter lowercase - # - upper_camel: for cammel case with first letter uppercase - # - snake: for snake case - # - # @return [String] the string transformed - def key - @key ||= case options.case - when :lower_camel - base_key.camelize(:lower) - when :upper_camel - base_key.camelize(:upper) - when :snake - base_key.underscore - end + # @return [KeyChanger] + def key_changer + @key_changer ||= KeyChanger.new(base_key, options) end end end