Module: Interactor::Initializer::ClassMethods

Defined in:
lib/interactor/initializer.rb

Class Method Summary collapse

Class Method Details

.initialize_with(*attributes) ⇒ Object



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

def initialize_with(*attributes)
  signature = attributes.join(', ')
  class_methods = Interactor::Initializer::Helper.methods_with_params

  Interactor::Initializer::Helper.modify_class(self, signature, attributes, class_methods)
end

.initialize_with_keyword_params(*attributes) ⇒ Object



22
23
24
25
26
27
# File 'lib/interactor/initializer.rb', line 22

def initialize_with_keyword_params(*attributes)
  signature = attributes.map { |attr| "#{attr}:" }.join(', ')
  class_methods = Interactor::Initializer::Helper.methods_with_keywords

  Interactor::Initializer::Helper.modify_class(self, signature, attributes, class_methods)
end