Sha256: 6904a58cd5a3ca525f43006b61753d60d189403202c29c60e81686d1371dacb3

Contents?: true

Size: 805 Bytes

Versions: 32

Compression:

Stored size: 805 Bytes

Contents

# frozen_string_literal: true

require 'eac_templates/sources/set'

module EacTemplates
  module Sources
    class FromGem
      class << self
        def include_all(searcher = nil)
          ::Gem::Specification.each { |gemspec| new(gemspec, searcher).include }
        end
      end

      TEMPLATES_DIR_SUBPATH = 'template'

      common_constructor :gemspec, :searcher, default: [nil] do
        self.searcher ||= ::EacTemplates::Sources::Set.default
      end

      # @return [Boolean]
      delegate :exist?, to: :path

      # @return [Pathname]
      def include
        return nil unless exist?

        searcher.included_paths << path
        path
      end

      # @return [Pathname]
      def path
        gemspec.gem_dir.to_pathname.join(TEMPLATES_DIR_SUBPATH)
      end
    end
  end
end

Version data entries

32 entries across 32 versions & 2 rubygems

Version Path
eac_templates-0.7.1 lib/eac_templates/sources/from_gem.rb
eac_tools-0.93.0 sub/eac_templates/lib/eac_templates/sources/from_gem.rb
eac_templates-0.7.0 lib/eac_templates/sources/from_gem.rb
eac_tools-0.91.0 sub/eac_templates/lib/eac_templates/sources/from_gem.rb
eac_templates-0.5.1 lib/eac_templates/sources/from_gem.rb
eac_tools-0.76.0 sub/eac_templates/lib/eac_templates/sources/from_gem.rb
eac_tools-0.75.2 sub/eac_templates/lib/eac_templates/sources/from_gem.rb
eac_tools-0.75.1 sub/eac_templates/lib/eac_templates/sources/from_gem.rb
eac_tools-0.75.0 sub/eac_templates/lib/eac_templates/sources/from_gem.rb
eac_tools-0.74.1 sub/eac_templates/lib/eac_templates/sources/from_gem.rb
eac_tools-0.74.0 sub/eac_templates/lib/eac_templates/sources/from_gem.rb
eac_tools-0.73.0 sub/eac_templates/lib/eac_templates/sources/from_gem.rb
eac_tools-0.72.0 sub/eac_templates/lib/eac_templates/sources/from_gem.rb
eac_tools-0.70.1 sub/eac_templates/lib/eac_templates/sources/from_gem.rb
eac_tools-0.70.0 sub/eac_templates/lib/eac_templates/sources/from_gem.rb
eac_tools-0.69.1 sub/eac_templates/lib/eac_templates/sources/from_gem.rb
eac_tools-0.69.0 sub/eac_templates/lib/eac_templates/sources/from_gem.rb
eac_tools-0.68.0 sub/eac_templates/lib/eac_templates/sources/from_gem.rb
eac_tools-0.67.1 sub/eac_templates/lib/eac_templates/sources/from_gem.rb
eac_tools-0.67.0 sub/eac_templates/lib/eac_templates/sources/from_gem.rb