Method: Loadable#traverse

Defined in:
lib/loadable/mixin.rb

#traverse(dir, base = dir, &block) ⇒ Object (private)

This helper method provides a fast way to traverse a directory recursively iteratating over each file.



73
74
75
76
77
78
79
80
81
82
83
84
# File 'lib/loadable/mixin.rb', line 73

def traverse(dir, base=dir, &block)
  return unless File.directory?(dir)
  Dir.new(dir).each do |file|
    next if file == '.' or file == '..'
    path = File.join(dir, file)
    if File.directory?(path)
      traverse(path, base, &block)
    else
      block.call(path.sub(base+'/',''))
    end
  end
end