Module: LunaPark::Extensions::Callable

Included in:
Callable, Http::Send, UseCases::Scenario, UseCases::Service
Defined in:
lib/luna_park/extensions/callable.rb

Overview

class-level mixin

The Callable interface is a generic interface containing a single ‘call()` method - which returns a generic value

Examples:

class MyCallableObject < LunaPark::Extensions::Callable
  def initialize(params)
    @params = params
  end

  def call
    # do some stuff with @params
    'call used'
  end

  def call!
    # do some stuff with @params
    'call! used'
  end
end

MyCallableObject.call(params)  # => 'call used'
MyCallableObject.call!(params) # => 'call! used'

Instance Method Summary collapse

Instance Method Details

#call(*args) ⇒ Object

Preferred class method to run instance ‘call` method



33
34
35
# File 'lib/luna_park/extensions/callable.rb', line 33

def call(*args)
  new(*args).call
end

#call!(*args) ⇒ Object

Preferred class method to run instance ‘call`! method



39
40
41
# File 'lib/luna_park/extensions/callable.rb', line 39

def call!(*args)
  new(*args).call!
end