Class: SetPartition::Array
- Inherits:
-
Object
- Object
- SetPartition::Array
- Defined in:
- lib/set_partition/array.rb
Instance Method Summary collapse
- #current ⇒ Object
- #end ⇒ Object
-
#initialize(array, partition_size = nil) ⇒ Array
constructor
A new instance of Array.
- #next ⇒ Object
- #partition_size ⇒ Object
- #prev ⇒ Object
- #start ⇒ Object
- #to_a ⇒ Object
Constructor Details
#initialize(array, partition_size = nil) ⇒ Array
Returns a new instance of Array.
3 4 5 6 7 8 9 10 |
# File 'lib/set_partition/array.rb', line 3 def initialize array, partition_size=nil @array = array @generator = if partition_size FixedGenerator.new array.size, partition_size else Generator.new array.size end end |
Instance Method Details
#current ⇒ Object
40 41 42 |
# File 'lib/set_partition/array.rb', line 40 def current reify @generator.current end |
#end ⇒ Object
16 17 18 |
# File 'lib/set_partition/array.rb', line 16 def end reify @generator.end end |
#next ⇒ Object
20 21 22 |
# File 'lib/set_partition/array.rb', line 20 def next reify @generator.next end |
#partition_size ⇒ Object
28 29 30 |
# File 'lib/set_partition/array.rb', line 28 def partition_size @generator.size end |
#prev ⇒ Object
24 25 26 |
# File 'lib/set_partition/array.rb', line 24 def prev reify @generator.prev end |
#start ⇒ Object
12 13 14 |
# File 'lib/set_partition/array.rb', line 12 def start reify @generator.start end |
#to_a ⇒ Object
32 33 34 35 36 37 38 |
# File 'lib/set_partition/array.rb', line 32 def to_a [reify(@generator.start)].tap do |array| while @generator.next array.push reify @generator.current end end end |