Sha256: dfc4b00af414166b2397b5d72463ad61bdce8fea8025c2eb2b5d993ea4e51cc5
Contents?: true
Size: 751 Bytes
Versions: 72
Compression:
Stored size: 751 Bytes
Contents
class Chef module ChefFS class Parallelizer class FlattenEnumerable include Enumerable def initialize(enum, levels = nil) @enum = enum @levels = levels end attr_reader :enum attr_reader :levels def each(&block) enum.each do |value| flatten(value, levels, &block) end end private def flatten(value, levels, &block) if levels != 0 && value.respond_to?(:each) && !value.is_a?(String) value.each do |child| flatten(child, levels.nil? ? levels : levels-1, &block) end else block.call(value) end end end end end end
Version data entries
72 entries across 72 versions & 1 rubygems