Class: Textus::Action::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/textus/action/base.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.inherited(subclass) ⇒ Object



23
24
25
26
# File 'lib/textus/action/base.rb', line 23

def self.inherited(subclass)
  super
  Textus::Action.register(subclass) if subclass.name
end

Instance Method Details

#argsObject



32
33
34
35
36
37
38
39
# File 'lib/textus/action/base.rb', line 32

def args
  params = self.class.instance_method(:initialize).parameters
  names = params.select { |t,| %i[key keyreq].include?(t) }.map(&:last)
  names.each_with_object({}) do |name, h|
    val = instance_variable_get(:"@#{name}")
    h[name] = val unless val.nil?
  end
end

#callObject

Raises:

  • (NotImplementedError)


28
29
30
# File 'lib/textus/action/base.rb', line 28

def call(**)
  raise NotImplementedError.new("#{self.class}#call")
end