Sha256: ee6f8372c13082ef42d6be463a1a5aaba8e63f1858cbb65f1ee8b76da4be9f86

Contents?: true

Size: 660 Bytes

Versions: 5

Compression:

Stored size: 660 Bytes

Contents

module WarningSigns
  class MessageFormatterList
    include Enumerable

    attr_reader :message_formatters

    def initialize(message_formatters: [], message_formatter: nil)
      @message_formatters = message_formatters.map do
        MessageFormatter::Base.for(**_1)
      end
      @message_formatters << MessageFormatter::Base.for(**message_formatter) if message_formatter
    end

    def each(&block)
      message_formatters.each(&block)
    end

    def behavior_match(behavior)
      message_formatters.find do
        _1.behaviors.only_except_match?(behavior) &&
          _1.environments.only_except_match?(Rails.env)
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
warning_signs-0.7.2 lib/warning_signs/message_formatter_list.rb
warning_signs-0.7.1 lib/warning_signs/message_formatter_list.rb
warning_signs-0.7.0 lib/warning_signs/message_formatter_list.rb
warning_signs-0.6.1 lib/warning_signs/message_formatter_list.rb
warning_signs-0.6.0 lib/warning_signs/message_formatter_list.rb