module Commande::ClassMethods
@api private
Public Class Methods
extended(interactor)
click to toggle source
@api private
# File lib/commande.rb, line 408 def self.extended(interactor) interactor.class_eval do singleton_class.class_eval do attr_accessor(:outputs) end self.outputs = {} end end
Public Instance Methods
call(*args, &block)
click to toggle source
# File lib/commande.rb, line 403 def call(*args, &block) new.call(*args, &block) end
method_added(method_name)
click to toggle source
Calls superclass method
# File lib/commande.rb, line 418 def method_added(method_name) super return unless method_name == :call prepend Commande::Interface end
output(*instance_variable_names)
click to toggle source
Expose local instance variables into the returning value of #call
@param instance_variable_names [Symbol,Array<Symbol>] one or more instance
variable names
@see Commande::Result
# File lib/commande.rb, line 432 def output(*instance_variable_names) instance_variable_names.each do |name| outputs[name.to_sym] = "@#{name}" end end
Also aliased as: outputs