diff options
Diffstat (limited to 'lib/chotto.rb')
-rw-r--r-- | lib/chotto.rb | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/lib/chotto.rb b/lib/chotto.rb new file mode 100644 index 0000000..47a94c0 --- /dev/null +++ b/lib/chotto.rb @@ -0,0 +1,40 @@ +# 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 + + |