module Bootsnap::LoadPathCache::PathScanner

def walk(absolute_dir_path, relative_dir_path, &block)

def walk(absolute_dir_path, relative_dir_path, &block)
  Dir.foreach(absolute_dir_path) do |name|
    next if name.start_with?('.')
    relative_path = relative_dir_path ? "#{relative_dir_path}/#{name}" : name.freeze
    absolute_path = "#{absolute_dir_path}/#{name}"
    if File.directory?(absolute_path)
      if yield relative_path, absolute_path, true
        walk(absolute_path, relative_path, &block)
      end
    else
      yield relative_path, absolute_path, false
    end
  end
end