class TTY::Option::Pipeline
Constants
- PROCESSORS
Public Class Methods
new(error_aggregator)
click to toggle source
Create a param processing pipeline
@api private
# File lib/tty/option/pipeline.rb, line 19 def initialize(error_aggregator) @error_aggregator = error_aggregator end
Public Instance Methods
call(param, value)
click to toggle source
Process param value through conditions
@api public
# File lib/tty/option/pipeline.rb, line 26 def call(param, value) result = Result.success(value) PROCESSORS.each do |processor| result = processor[param, result.value] if result.failure? Array(result.error).each { |err| @error_aggregator.(err) } end end result.value end