Sha256: 83de6adbb3cafad2643d5786bec3fcb8a33afddb469977a1c98eb25fb1a38df9

Contents?: true

Size: 596 Bytes

Versions: 4

Compression:

Stored size: 596 Bytes

Contents

module SlimGruntHelpers

  module Models

    class Usemin

      BASE_OPTIONS = {}.freeze

      def initialize
        @links = []
      end

      def <<(path, options={})
        @links << { path: path, options: base_options.merge(options) }
      end
      alias_method :add, :<<

      def each
        @links.each { |link| yield(transform_link(link)) }
      end

      def base_options
        BASE_OPTIONS
      end

      protected

        def transform_link(link)
          raise NotImplementedError, 'This method must be implemented in child classes'
        end

    end

  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
slim-grunt-helpers-0.0.5 lib/slim-grunt-helpers/models/usemin.rb
slim-grunt-helpers-0.0.4 lib/slim-grunt-helpers/models/usemin.rb
slim-grunt-helpers-0.0.3 lib/slim-grunt-helpers/models/usemin.rb
slim-grunt-helpers-0.0.2 lib/slim-grunt-helpers/models/usemin.rb