1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00
rails--rails/railties/lib/rails/autoloaders.rb
Xavier Noria b7fe3bddef simplifies Rails.autoloaders.logger=
Possible thanks to Zeitwerk 1.3.0.
2019-02-21 14:51:28 -08:00

36 lines
724 B
Ruby

# frozen_string_literal: true
module Rails
module Autoloaders # :nodoc:
class << self
include Enumerable
def main
if zeitwerk_enabled?
@main ||= Zeitwerk::Loader.new.tap { |loader| loader.tag = "rails.main" }
end
end
def once
if zeitwerk_enabled?
@once ||= Zeitwerk::Loader.new.tap { |loader| loader.tag = "rails.once" }
end
end
def each
if zeitwerk_enabled?
yield main
yield once
end
end
def logger=(logger)
each { |loader| loader.logger = logger }
end
def zeitwerk_enabled?
Rails.configuration.autoloader == :zeitwerk
end
end
end
end