module RuleBox::Mapper::ClassMethods

Public Instance Methods

rules_of(method, *rules) click to toggle source
# File lib/rule_box/mapper.rb, line 30
def rules_of(method, *rules)
  add_rules method.to_sym, rules
end
rules_of_delete(*rules) click to toggle source
# File lib/rule_box/mapper.rb, line 22
def rules_of_delete(*rules)
  add_rules :delete, rules
end
rules_of_insert(*rules) click to toggle source
# File lib/rule_box/mapper.rb, line 14
def rules_of_insert(*rules)
  add_rules :insert, rules
end
rules_of_select(*rules) click to toggle source
# File lib/rule_box/mapper.rb, line 26
def rules_of_select(*rules)
  add_rules :select, rules
end
rules_of_update(*rules) click to toggle source
# File lib/rule_box/mapper.rb, line 18
def rules_of_update(*rules)
  add_rules :update, rules
end
show_strategies() click to toggle source
# File lib/rule_box/mapper.rb, line 38
def show_strategies
  current_rules.map do |method, strategies|
    {
      method: method,
      strategies: strategies.map do |strategy|
        {
          name: strategy.name,
          description: strategy.description
        }
      end
    }
  end
end
strategies(method) click to toggle source
# File lib/rule_box/mapper.rb, line 34
def strategies(method)
  current_rules[method]
end

Private Instance Methods

add_rules(method, rules) click to toggle source
# File lib/rule_box/mapper.rb, line 54
def add_rules(method, rules)
  current_rules[method] = rules
end
current_rules() click to toggle source
# File lib/rule_box/mapper.rb, line 58
def current_rules
  @current_rules ||= {}
end