Sha256: 67656d09a0fc0a67b663896da115a389af38b91c1b31b2be5a389fcf24dbe850

Contents?: true

Size: 765 Bytes

Versions: 21

Compression:

Stored size: 765 Bytes

Contents

# frozen_string_literal: true

require 'eac_ruby_utils/core_ext'
require 'find'
require 'delegate'

module EacRailsBase0
  # A extended version of [Rails::Engine].
  class XEngine < SimpleDelegator
    class << self
      enable_simple_cache

      def local_root
        ::Rails.root.join('engines')
      end

      private

      def all_uncached
        ::Rails::Engine.subclasses.map { |engine_class| new(engine_class.instance) }
      end

      def local_uncached
        all.select(&:local?)
      end
    end

    def initialize(engine_instance)
      super(engine_instance)
    end

    def local?
      return false unless self.class.local_root.directory?

      ::Find.find(self.class.local_root.to_path).include?(config.root.to_path)
    end
  end
end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
eac_rails_base0-0.45.0 lib/eac_rails_base0/x_engine.rb
eac_rails_base0-0.44.0 lib/eac_rails_base0/x_engine.rb
eac_rails_base0-0.43.0 lib/eac_rails_base0/x_engine.rb
eac_rails_base0-0.42.0 lib/eac_rails_base0/x_engine.rb
eac_rails_base0-0.41.0 lib/eac_rails_base0/x_engine.rb
eac_rails_base0-0.40.1 lib/eac_rails_base0/x_engine.rb
eac_rails_base0-0.40.0 lib/eac_rails_base0/x_engine.rb
eac_rails_base0-0.39.1 lib/eac_rails_base0/x_engine.rb
eac_rails_base0-0.39.0 lib/eac_rails_base0/x_engine.rb
eac_rails_base0-0.38.1 lib/eac_rails_base0/x_engine.rb
eac_rails_base0-0.38.0 lib/eac_rails_base0/x_engine.rb
eac_rails_base0-0.37.1 lib/eac_rails_base0/x_engine.rb
eac_rails_base0-0.37.0 lib/eac_rails_base0/x_engine.rb
eac_rails_base0-0.36.1 lib/eac_rails_base0/x_engine.rb
eac_rails_base0-0.36.0 lib/eac_rails_base0/x_engine.rb
eac_rails_base0-0.35.0 lib/eac_rails_base0/x_engine.rb
eac_rails_base0-0.34.1 lib/eac_rails_base0/x_engine.rb
eac_rails_base0-0.34.0 lib/eac_rails_base0/x_engine.rb
eac_rails_base0-0.33.0 lib/eac_rails_base0/x_engine.rb
eac_rails_base0-0.32.0 lib/eac_rails_base0/x_engine.rb