module RDoc::RI::Paths

def self.each system = true, site = true, home = true, gems = :latest, *extra_dirs # :yields: directory, type

:yields: directory, type
def self.each system = true, site = true, home = true, gems = :latest, *extra_dirs # :yields: directory, type
  return enum_for __method__, system, site, home, gems, *extra_dirs unless
    block_given?
  extra_dirs.each do |dir|
    yield dir, :extra
  end
  yield system_dir,  :system if system
  yield site_dir,    :site   if site
  yield home_dir,    :home   if home and HOMEDIR
  gemdirs(gems).each do |dir|
    yield dir, :gem
  end if gems
  nil
end