class EverydayCliUtils::OptionType

Public Class Methods

new(default_value_block, value_determine_block, name_mod_block = nil, value_transform_block = nil) click to toggle source
# File lib/everyday-cli-utils/option.rb, line 29
def initialize(default_value_block, value_determine_block, name_mod_block = nil, value_transform_block = nil)
  @default_value_block   = default_value_block
  @value_determine_block = value_determine_block
  @name_mod_block        = name_mod_block
  @value_transform_block = value_transform_block
end

Public Instance Methods

default_value(settings = {}) click to toggle source
# File lib/everyday-cli-utils/option.rb, line 36
def default_value(settings = {})
  @default_value_block.call(settings)
end
mod_names(names, settings = {}) click to toggle source
# File lib/everyday-cli-utils/option.rb, line 45
def mod_names(names, settings = {})
  @name_mod_block.call(names, settings)
end
updated_value(current_value, new_value, settings = {}) click to toggle source
# File lib/everyday-cli-utils/option.rb, line 40
def updated_value(current_value, new_value, settings = {})
  new_value = @value_transform_block.call(new_value, settings) unless @value_transform_block.nil?
  @value_determine_block.call(current_value, new_value, settings)
end