Sha256: 96292e96bfc937bd27ad84ce4acc0eecac3aa2cf11656fe4b4231ac7000e6ceb

Contents?: true

Size: 787 Bytes

Versions: 6

Compression:

Stored size: 787 Bytes

Contents

# frozen_string_literal: true

require "zeitwerk"

module Rails
  module Autoloaders # :nodoc:
    require_relative "autoloaders/inflector"

    class << self
      include Enumerable

      def main
        @main ||= Zeitwerk::Loader.new.tap do |loader|
          loader.tag = "rails.main"
          loader.inflector = Inflector
        end
      end

      def once
        @once ||= Zeitwerk::Loader.new.tap do |loader|
          loader.tag = "rails.once"
          loader.inflector = Inflector
        end
      end

      def each
        yield main
        yield once
      end

      def logger=(logger)
        each { |loader| loader.logger = logger }
      end

      def log!
        each(&:log!)
      end

      def zeitwerk_enabled?
        true
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
railties-7.0.0 lib/rails/autoloaders.rb
railties-7.0.0.rc3 lib/rails/autoloaders.rb
railties-7.0.0.rc2 lib/rails/autoloaders.rb
railties-7.0.0.rc1 lib/rails/autoloaders.rb
railties-7.0.0.alpha2 lib/rails/autoloaders.rb
railties-7.0.0.alpha1 lib/rails/autoloaders.rb