Module: Coactive::Loader

Defined in:
lib/coactive/loader.rb

Class Method Summary collapse

Class Method Details

.call(paths) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
# File 'lib/coactive/loader.rb', line 6

def call(paths)
  return unless defined?(Rails)
  return if Rails.application.config.eager_load
  return if paths.blank?

  engines = [Rails] + Rails::Engine.subclasses.map(&:instance)
  engines.each do |engine|
    Dir["#{engine.root}/{#{Array(paths).join(',')}}/**/*.rb"].each do |file|
      require_dependency file
    end
  end
end