class MCLI::Command::Option
@private
Attributes
alias[R]
boolean[R]
default[R]
name[R]
required[R]
type[R]
Public Class Methods
new(name, options={})
click to toggle source
# File lib/mcli/command/option.rb, line 5 def initialize(name, options={}) opts = default_options.merge(options) @name = name.to_sym @alias = opts[:alias].to_s if opts[:alias] @default = opts[:default] @required = opts[:required] @type = opts[:type] @boolean = opts[:boolean] end
Public Instance Methods
to_args()
click to toggle source
# File lib/mcli/command/option.rb, line 16 def to_args [].tap do |args| args << "-#{@alias}" if @alias args << "--#{@name} #{@name.upcase}" if @required && !@boolean args << "--#{@name} [#{@default || @name.upcase}]" if !@required && !@boolean args << "--[no-]#{@name}" if @boolean end end
Private Instance Methods
default_options()
click to toggle source
# File lib/mcli/command/option.rb, line 27 def default_options { required: false, boolean: false } end