Class: TypedParams::Transforms::KeyCasing

Inherits:
Transform
  • Object
show all
Defined in:
lib/typed_params/transforms/key_casing.rb

Instance Method Summary collapse

Methods inherited from Transform

wrap

Constructor Details

#initialize(casing) ⇒ KeyCasing

Returns a new instance of KeyCasing.



8
# File 'lib/typed_params/transforms/key_casing.rb', line 8

def initialize(casing) = @casing = casing

Instance Method Details

#call(param) ⇒ Object



10
11
12
13
14
15
16
17
18
19
# File 'lib/typed_params/transforms/key_casing.rb', line 10

def call(param)
  return if
    casing.nil?

  key   = transform_key(param.key)
  value = transform_value(param.value)

  param.key   = key unless key == param.key
  param.value = value
end