Class: OptionParser

Inherits:
Object
  • Object
show all
Defined in:
lib/optparse/range.rb

Defined Under Namespace

Classes: DateRange, DateTimeRange, StringRange, TimeRange

Constant Summary collapse

DecimalIntegerRange =
/#{decimal}(?:\-#{decimal})/io
FloatRange =
/#{float}-#{float}/io

Class Method Summary collapse

Class Method Details

.accept_range(accepter, converter = nil, &block) ⇒ Object



5
6
7
8
9
10
11
12
13
14
# File 'lib/optparse/range.rb', line 5

def accept_range(accepter, converter=nil, &block)
  accept accepter do |range,|
    return range unless range
    points = range.split('-')
    raise AmbiguousArgument if points.length > 2
    points << points.first if points.length == 1
    converter = block if block
    Range.new *points.map(&converter)
  end
end