Class: WaveInt
- Inherits:
-
Object
- Object
- WaveInt
- Defined in:
- lib/wave_int.rb,
lib/wave_int/version.rb
Constant Summary collapse
- VERSION =
"1.0.0"
Instance Method Summary collapse
-
#add(number) ⇒ Object
Get WaveInt next value.
-
#initialize(limit1, limit2 = 0) ⇒ WaveInt
constructor
Set WaveInt Range.
-
#set_value(number) ⇒ Object
Set WaveInt Value, and return WaveInt value.
-
#value(number = @value) ⇒ Object
Get WaveInt Value.(default: return now value).
Constructor Details
#initialize(limit1, limit2 = 0) ⇒ WaveInt
Set WaveInt Range.
5 6 7 8 |
# File 'lib/wave_int.rb', line 5 def initialize(limit1, limit2=0) @min, @max = [limit1.to_i, limit2.to_i].sort @value = @min end |
Instance Method Details
#add(number) ⇒ Object
Get WaveInt next value.
23 24 25 |
# File 'lib/wave_int.rb', line 23 def add(number) set_value(@value + number.to_i) end |
#set_value(number) ⇒ Object
Set WaveInt Value, and return WaveInt value.
17 18 19 20 |
# File 'lib/wave_int.rb', line 17 def set_value(number) @value = offset + (number.to_i - offset) % cycle value end |
#value(number = @value) ⇒ Object
Get WaveInt Value.(default: return now value)
11 12 13 14 |
# File 'lib/wave_int.rb', line 11 def value(number = @value) n = (number.to_i - offset) % cycle offset + (n < wave_max ? n : cycle - n) end |