Class: EacCli::Definition::OptionOrPositional Abstract
- Defined in:
- lib/eac_cli/definition/option_or_positional.rb
Overview
This class is abstract.
Direct Known Subclasses
Constant Summary collapse
- OPTION_LIST =
%i[optional repeat required].freeze
Instance Method Summary collapse
Instance Method Details
#optional? ⇒ Boolean
15 16 17 |
# File 'lib/eac_cli/definition/option_or_positional.rb', line 15 def optional? !required? end |
#raise(*args) ⇒ Object
20 21 22 |
# File 'lib/eac_cli/definition/option_or_positional.rb', line 20 def raise(*args) ::Kernel.raise ::EacCli::Definition::Error, *args end |
#repeat? ⇒ Boolean
25 26 27 |
# File 'lib/eac_cli/definition/option_or_positional.rb', line 25 def repeat? [:repeat] ? true : false end |
#required? ⇒ Boolean
30 31 32 33 34 35 |
# File 'lib/eac_cli/definition/option_or_positional.rb', line 30 def required? return true if .key?(:required) && .fetch(:required) return false if .key?(:optional) && .fetch(:optional) self.class.const_get('DEFAULT_REQUIRED') end |
#to_s ⇒ String
38 39 40 |
# File 'lib/eac_cli/definition/option_or_positional.rb', line 38 def to_s "#{self.class.name.demodulize}[#{identifier}]" end |