Sha256: 66ce6fc5dc134ec5896ed210fee14e45e1e07b679624e712a57362d1839abd5b
Contents?: true
Size: 826 Bytes
Versions: 1
Compression:
Stored size: 826 Bytes
Contents
module Reqless module JobReservers module Strategies end end end module Reqless::JobReservers::Strategies::Ordering # Shuffles the underlying enumerable # for each iteration. # @param [Enumerable] enumerable - underlying enumerator to iterate over def self.shuffled(enumerable) Enumerator.new do |yielder| enumerable.to_a.shuffle.each do |e| yielder << e end end end # Samples a subset of the underlying enumerable # for each iteration. # @param [Enumerable] enumerable - underlying enumerator to iterate over # @param [Integer] sample_size - number of items to take per iteration def self.sampled(enumerable, sample_size = 5) Enumerator.new do |yielder| enumerable.to_a.sample(sample_size).each do |e| yielder << e end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
reqless-0.0.5 | lib/reqless/job_reservers/strategies/ordering.rb |