lib/nanoc/base/services/outdatedness_checker.rb in nanoc-4.7.2 vs lib/nanoc/base/services/outdatedness_checker.rb in nanoc-4.7.3

- old
+ new

@@ -56,13 +56,16 @@ contract C::ArrayOf[Class], C::Or[Nanoc::Int::Item, Nanoc::Int::ItemRep, Nanoc::Int::Layout], OutdatednessStatus => C::Maybe[OutdatednessStatus] def apply_rules(rules, obj, status = OutdatednessStatus.new) rules.inject(status) do |acc, rule| if !acc.useful_to_apply?(rule) acc - elsif rule.instance.call(obj, @outdatedness_checker) - acc.update(rule.instance.reason) else - acc + reason = rule.instance.call(obj, @outdatedness_checker) + if reason + acc.update(reason) + else + acc + end end end end contract C::ArrayOf[Class], C::ArrayOf[C::Or[Nanoc::Int::Item, Nanoc::Int::ItemRep, Nanoc::Int::Layout]] => C::Maybe[OutdatednessStatus]