Method: Dry::Transformer::Conditional.is

Defined in:
lib/dry/transformer/conditional.rb

.is(value, type, fn) ⇒ Object

Calls a function when type-check passes

Examples:

fn = Dry::Transformer(:is, Array, -> arr { arr.map(&:upcase) })
fn.call(['a', 'b', 'c']) # => ['A', 'B', 'C']

fn = Dry::Transformer(:is, Array, -> arr { arr.map(&:upcase) })
fn.call('foo') # => "foo"

Parameters:

  • (Object)
  • (Class)
  • (Proc)

Returns:

  • (Object)


72
73
74
# File 'lib/dry/transformer/conditional.rb', line 72

def self.is(value, type, fn)
  guard(value, -> v { v.is_a?(type) }, fn)
end