Class: EverydayCliUtils::OptionType
- Defined in:
- lib/everyday-cli-utils/option.rb
Instance Method Summary collapse
- #default_value(settings = {}) ⇒ Object
-
#initialize(default_value_block, value_determine_block, name_mod_block = nil, value_transform_block = nil) ⇒ OptionType
constructor
A new instance of OptionType.
- #mod_names(names, settings = {}) ⇒ Object
- #updated_value(current_value, new_value, settings = {}) ⇒ Object
Constructor Details
#initialize(default_value_block, value_determine_block, name_mod_block = nil, value_transform_block = nil) ⇒ OptionType
Returns a new instance of OptionType.
29 30 31 32 33 34 |
# 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 |
Instance Method Details
#default_value(settings = {}) ⇒ Object
36 37 38 |
# File 'lib/everyday-cli-utils/option.rb', line 36 def default_value(settings = {}) @default_value_block.call(settings) end |
#mod_names(names, settings = {}) ⇒ Object
45 46 47 |
# 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 = {}) ⇒ Object
40 41 42 43 |
# 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 |