Method: Rails::Engine.inherited

Defined in:
railties/lib/rails/engine.rb

.inherited(base) ⇒ Object



361
362
363
364
365
366
367
368
369
370
371
372
373
# File 'railties/lib/rails/engine.rb', line 361

def inherited(base)
  unless base.abstract_railtie?
    Rails::Railtie::Configuration.eager_load_namespaces << base

    base.called_from = begin
      call_stack = caller_locations.map { |l| l.absolute_path || l.path }

      File.dirname(call_stack.detect { |p| !p.match?(%r[railties[\w.-]*/lib/rails|rack[\w.-]*/lib/rack]) })
    end
  end

  super
end