Module: Chanko::Loader

Defined in:
lib/chanko/loader.rb

Defined Under Namespace

Classes: ClassicLoader, MissingEagarLoadSettingError, ZeitwerkLoader

Class Method Summary collapse

Class Method Details

.classic?Boolean

Returns:

  • (Boolean)


18
19
20
# File 'lib/chanko/loader.rb', line 18

def self.classic?
  !zeitwerk?
end

.loaderObject



10
11
12
# File 'lib/chanko/loader.rb', line 10

def self.loader
  zeitwerk? ? ZeitwerkLoader : ClassicLoader
end

.prepare_eager_load(mode:) ⇒ Object



22
23
24
25
26
27
28
# File 'lib/chanko/loader.rb', line 22

def self.prepare_eager_load(mode: )
  if mode == :zeitwerk && zeitwerk?
    self.loader.prepare_eager_load
  elsif mode == :classic && classic?
    self.loader.prepare_eager_load
  end
end

.zeitwerk?Boolean

Returns:

  • (Boolean)


14
15
16
# File 'lib/chanko/loader.rb', line 14

def self.zeitwerk?
  Rails.respond_to?(:autoloaders) && Rails.autoloaders.zeitwerk_enabled?
end