class ProcessExecuter::Options::RunOptions
@api public
Define options for {ProcessExecuter.run}
def define_options
- Api: - private
Returns:
-
(Array
-)
def define_options [ *super, OptionDefinition.new(:raise_errors, default: true, validator: method(:validate_raise_errors)), OptionDefinition.new(:logger, default: Logger.new(nil), validator: method(:validate_logger)) ].freeze end
def validate_logger(_key, _value)
- Api: - private
Returns:
-
(Void)
-
Parameters:
-
_value
(Object
) -- the option value (not used) -
_key
(Symbol
) -- the option key (not used)
def validate_logger(_key, _value) return if logger.respond_to?(:info) && logger.respond_to?(:debug) errors << "logger must respond to #info and #debug but was #{logger.inspect}" end
def validate_raise_errors(_key, _value)
- Api: - private
Returns:
-
(Void)
-
Parameters:
-
_value
(Object
) -- the option value (not used) -
_key
(Symbol
) -- the option key (not used)
def validate_raise_errors(_key, _value) return if [true, false].include?(raise_errors) errors << "raise_errors must be true or false but was #{raise_errors.inspect}" end