# frozen_string_literal: true require 'notmuch' require 'pry' require_relative 'chotto/config' require_relative 'chotto/database' require_relative 'chotto/helpers' require_relative 'chotto/message' require_relative 'chotto/messages' require_relative 'chotto/ruleset' require_relative 'chotto/tags' module Chotto class << self attr_accessor :config attr_reader :db, :rule_sets def configure(&block) @config ||= Config.new @rule_sets = [] instance_eval(&block) @db = Database.new(path: config.database_path) end def rule_set(name, &block) @rule_sets << RuleSet.new(name, block) end end end def eval_rules Chotto.rule_sets.each do |rule_set| rule_set.run end end