class Puppet::Pops::Types::StepIterator
@api private
Public Class Methods
new(element_type, enumeration, step_size)
click to toggle source
Calls superclass method
Puppet::Pops::Types::Iterator::new
# File lib/puppet/pops/types/iterable.rb 282 def initialize(element_type, enumeration, step_size) 283 super(element_type, enumeration) 284 raise ArgumentError if step_size <= 0 285 @step_size = step_size 286 end
Public Instance Methods
next()
click to toggle source
# File lib/puppet/pops/types/iterable.rb 288 def next 289 result = @enumeration.next 290 skip = @step_size - 1 291 if skip > 0 292 begin 293 skip.times { @enumeration.next } 294 rescue StopIteration 295 end 296 end 297 result 298 end
reverse_each(&block)
click to toggle source
# File lib/puppet/pops/types/iterable.rb 300 def reverse_each(&block) 301 r = Iterator.new(@element_type, to_a.reverse_each) 302 block_given? ? r.each(&block) : r 303 end
size()
click to toggle source
Calls superclass method
Puppet::Pops::Types::Iterator#size
# File lib/puppet/pops/types/iterable.rb 305 def size 306 super / @step_size 307 end