Sha256: e940fe063aaf963766930bf57311c0b127edca0983796db96b8ece637fa14b02

Contents?: true

Size: 1.08 KB

Versions: 16

Compression:

Stored size: 1.08 KB

Contents

require "zeitwerk"

loader = Zeitwerk::Loader.for_gem(warn_on_extra_files: false)
loader.ignore("#{__dir__}/generators")
loader.ignore("#{__dir__}/plutonium/railtie.rb")
loader.enable_reloading if defined?(Rails.env) && Rails.env.development?
loader.setup

require_relative "plutonium/railtie" if defined?(Rails::Railtie)

module Plutonium
  class Error < StandardError; end

  def self.root
    Pathname.new File.expand_path("../", __dir__)
  end

  def self.lib_root
    root.join("lib", "plutonium")
  end

  def self.logger
    Rails.logger
  end

  def self.application_name
    @application_name || Rails.application.class.module_parent.name
  end

  def self.application_name=(application_name)
    @application_name = application_name
  end

  def self.development?
    ActiveModel::Type::Boolean.new.cast(ENV["PLUTONIUM_DEV"]).present?
  end

  def self.eager_load_rails!
    return if Rails.env.production? && defined?(@rails_eager_loaded)

    Rails.application.eager_load! unless Rails.application.config.eager_load
    @rails_eager_loaded = true
  end
end

Plutonium::ZEITWERK_LOADER = loader

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
plutonium-0.12.13 lib/plutonium.rb
plutonium-0.12.12 lib/plutonium.rb
plutonium-0.12.11 lib/plutonium.rb
plutonium-0.12.10 lib/plutonium.rb
plutonium-0.12.9 lib/plutonium.rb
plutonium-0.12.8 lib/plutonium.rb
plutonium-0.12.7 lib/plutonium.rb
plutonium-0.12.5 lib/plutonium.rb
plutonium-0.12.4 lib/plutonium.rb
plutonium-0.12.3 lib/plutonium.rb
plutonium-0.12.2 lib/plutonium.rb
plutonium-0.12.1 lib/plutonium.rb
plutonium-0.12.0 lib/plutonium.rb
plutonium-0.11.2 lib/plutonium.rb
plutonium-0.11.1 lib/plutonium.rb
plutonium-0.11.0 lib/plutonium.rb