Sha256: e1c845bcaa13c9feb18c5e17c649ce92eedb98b86f8b55741b078f9eb6b389fe

Contents?: true

Size: 566 Bytes

Versions: 3

Compression:

Stored size: 566 Bytes

Contents

module Maid::RuleContainer
  include ::Maid::Tools
  attr_reader :rules

  # initialize_rules
  def initialize_rules(&block)
    @rules ||= []
    instance_exec(&block)
  end

  # Register a rule with a description and instructions (lambda function).
  def rule(description, &instructions)
    @rules << ::Maid::Rule.new(description, instructions, @maid || self)
  end

  # Follow all registered rules.
  def follow_rules(*args)
    @rules.each do |rule|
      @logger.info("Rule: #{rule.description}") unless @logger.nil?
      rule.follow(*args)
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
maid-0.10.0 lib/maid/rule_container.rb
maid-0.10.0.pre.alpha.3 lib/maid/rule_container.rb
maid-0.10.0.pre.alpha.2 lib/maid/rule_container.rb