class Samovar::Option
def initialize(flags, description, key: nil, default: nil, value: nil)
def initialize(flags, description, key: nil, default: nil, value: nil) @flags = Flags.new(flags) @description = description if key @key = key else @key = @flags.first.key end @default = default @value = value @value ||= true if @flags.boolean? end
def parse(input)
def parse(input) if result = @flags.parse(input) @value.nil? ? result : @value else @default end end
def to_a
def to_a unless @default.nil? [@flags, @description, "Default: #{@default}"] else [@flags, @description] end end
def to_s
def to_s @flags end