class Strategize::PolicyEvaluator
Public Class Methods
new(rule_evaluator)
click to toggle source
# File lib/strategize/evaluators/policy_evaluator.rb, line 3 def initialize(rule_evaluator) @rule_evaluator = rule_evaluator end
Public Instance Methods
evaluate(*policies, subject)
click to toggle source
# File lib/strategize/evaluators/policy_evaluator.rb, line 7 def evaluate(*policies, subject) policies.flatten! results = policies.map do |policy| rules = policy.rule_group.rules rule_digest = @rule_evaluator.evaluate(subject, rules) PolicyEvaluation.new(policy, rule_digest) end PolicyEvaluationDigest.new(results, subject) end