class RBS::EnvironmentLoader

def each_signature

def each_signature
  files = Set[]
  each_dir do |source, dir|
    skip_hidden = !source.is_a?(Pathname)
    FileFinder.each_file(dir, skip_hidden: skip_hidden) do |path|
      next if files.include?(path)
      files << path
      buffer = Buffer.new(name: path.to_s, content: path.read(encoding: "UTF-8"))
      _, dirs, decls = Parser.parse_signature(buffer)
      yield source, path, buffer, decls, dirs
    end
  end
end