Module: Pathway::Plugins::Base::ClassMethods

Defined in:
lib/pathway.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#result_keyObject

Returns the value of attribute result_key.



100
101
102
# File 'lib/pathway.rb', line 100

def result_key
  @result_key
end

Instance Method Details

#call(ctx) ⇒ Object



113
# File 'lib/pathway.rb', line 113

def call(ctx,...) = new(ctx).call(...)

#inherited(subclass) ⇒ Object



115
116
117
118
# File 'lib/pathway.rb', line 115

def inherited(subclass)
  super
  subclass.result_key = result_key
end

#process(&bl) ⇒ Object



104
105
106
107
108
109
110
111
# File 'lib/pathway.rb', line 104

def process(&bl)
  dsl = self::DSL
  define_method(:call) do |input|
    dsl.new(State.new(self, input:), self)
       .run(&bl)
       .then(&:result)
  end
end