Method: JsonDataExtractor::Extractor#add_modifier

Defined in:
lib/json_data_extractor/extractor.rb

#add_modifier(modifier_name, callable = nil, &block) ⇒ Object

Parameters:

  • modifier_name (String, Symbol)
  • callable (#call, nil) (defaults to: nil)

    Optional callable object

Raises:

  • (ArgumentError)


18
19
20
21
22
23
24
25
# File 'lib/json_data_extractor/extractor.rb', line 18

def add_modifier(modifier_name, callable = nil, &block)
  modifier_name = modifier_name.to_sym unless modifier_name.is_a?(Symbol)
  modifiers[modifier_name] = callable || block

  return if modifiers[modifier_name].respond_to?(:call)

  raise ArgumentError, 'Modifier must be a callable object or a block'
end