class Pyer::Option

Option class

Attributes

callback[R]
description[R]
expects_argument[R]
name[R]
short[R]
value[RW]

Public Class Methods

new(name, description, &block) click to toggle source

Incapsulate internal option information, mainly used to store option specific configuration data.

name - The String or Symbol option name. description - The String description text. block - An optional block.

# File lib/pyer/options.rb, line 289
def initialize(name, description, &block)
  # Remove leading '-' from name if any
  @name = name.to_s.gsub(/^--?/, '')
  fail InvalidOptionError, "Option #{@name} is invalid" if @name.size < 2
  @expects_argument = false
  @value = nil
  @short = @name[0]
  @description = description
  @callback = (block_given? ? block : nil)
end