Sha256: 1c094c4bdcb0374d5a72e11635ec126b0d18b2104b053dd6a7017c068b334773

Contents?: true

Size: 742 Bytes

Versions: 4

Compression:

Stored size: 742 Bytes

Contents

# frozen_string_literal: true

module Nanoc
  module Int
    module OutdatednessRules
      class UsesAlwaysOutdatedFilter < Nanoc::Core::OutdatednessRule
        affects_props :raw_content, :attributes, :path

        def apply(obj, outdatedness_checker)
          seq = outdatedness_checker.action_sequence_for(obj)
          if any_always_outdated?(seq)
            Nanoc::Core::OutdatednessReasons::UsesAlwaysOutdatedFilter
          end
        end

        def any_always_outdated?(seq)
          seq
            .select { |a| a.is_a?(Nanoc::Core::ProcessingActions::Filter) }
            .map { |a| Nanoc::Filter.named(a.filter_name) }
            .compact
            .any?(&:always_outdated?)
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
nanoc-4.11.12 lib/nanoc/base/services/outdatedness_rules/uses_always_outdated_filter.rb
nanoc-4.11.11 lib/nanoc/base/services/outdatedness_rules/uses_always_outdated_filter.rb
nanoc-4.11.10 lib/nanoc/base/services/outdatedness_rules/uses_always_outdated_filter.rb
nanoc-4.11.9 lib/nanoc/base/services/outdatedness_rules/uses_always_outdated_filter.rb