class Bodyguards::Base
Public Class Methods
any_permission?(*args)
click to toggle source
# File lib/bodyguards/base.rb, line 36 def any_permission?(*args) rule_set.evaluate_all(permission_evaluation_context(*args)) end
permission_evaluation_context(*args)
click to toggle source
# File lib/bodyguards/base.rb, line 16 def permission_evaluation_context(*args) permission_evaluation_context_class_name.constantize.new(*args) end
permission_to?(feature_name, *args)
click to toggle source
# File lib/bodyguards/base.rb, line 28 def permission_to?(feature_name, *args) rule_set.evaluate(feature_name, permission_evaluation_context(*args)) end
permit_all(&block)
click to toggle source
# File lib/bodyguards/base.rb, line 24 def permit_all(&block) rule_set.add_global_rule(Rule.new(evaluator: block)) end
permit_to(feature_name, &block)
click to toggle source
# File lib/bodyguards/base.rb, line 20 def permit_to(feature_name, &block) rule_set.add_rule_for(feature_name, Rule.new(evaluator: block)) end
rejection_to?(feature_name, *args)
click to toggle source
# File lib/bodyguards/base.rb, line 32 def rejection_to?(feature_name, *args) !permission_to?(feature_name, *args) end
rule_set()
click to toggle source
# File lib/bodyguards/base.rb, line 12 def rule_set @rule_set ||= RuleSet.new end