Class: Tanuki::Argument::IntegerRange

Inherits:
Integer show all
Defined in:
lib/tanuki/argument/integer_range.rb

Overview

Tanuki::Argument::IntegerRange is a class for Integer arguments with a certain value range.

Instance Attribute Summary

Attributes inherited from Base

#default, #value

Instance Method Summary collapse

Methods inherited from Base

#to_s

Constructor Details

#initialize(range, default = nil) ⇒ IntegerRange

Initializes the argument with a default value and allowed value range.



8
9
10
11
# File 'lib/tanuki/argument/integer_range.rb', line 8

def initialize(range, default=nil)
  super(default ? default : range.first)
  @range = range
end

Instance Method Details

#to_value(obj) ⇒ Object

Returns argument value from an object obj.



14
15
16
17
# File 'lib/tanuki/argument/integer_range.rb', line 14

def to_value(obj)
  i = super(obj)
  @range.include?(i) ? i : @default
end