Module: Logicum::Interactor::ClassMethods

Defined in:
lib/logicum/interactor.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.extended(base) ⇒ Object



15
16
17
18
19
20
21
# File 'lib/logicum/interactor.rb', line 15

def self.extended(base)
  base.class_eval do
    include ClassAttribute
    class_attribute :provisions
    self.provisions = []
  end
end

Instance Method Details

#call(*args, **kwargs, &block) ⇒ Object

Shortcut for caller if nothing needed in initializer. For example:

AddUser.call foo: 'bar'

is equivalent to:

AddUser.new.call foo: 'bar'


35
36
37
# File 'lib/logicum/interactor.rb', line 35

def call(*args, **kwargs, &block)
  new.call *args, **kwargs, &block
end

#provides(*instance_variable_names) ⇒ Object



23
24
25
# File 'lib/logicum/interactor.rb', line 23

def provides(*instance_variable_names)
  provisions.concat instance_variable_names
end