Class: Sequel::Privacy::ActionsClass
- Inherits:
-
Object
- Object
- Sequel::Privacy::ActionsClass
- Extended by:
- T::Sig
- Defined in:
- lib/sequel/privacy/actions.rb
Overview
Actions provides the DSL methods available inside policy lambdas. When policies are evaluated, they execute in the context of this object, giving them access to allow, deny, pass, and all methods.
Example:
policy :AllowAdmins, ->(actor) {
allow if actor.is_role?(:admin)
}
Instance Method Summary collapse
- #all(*policies) ⇒ Object
- #allow ⇒ Object
- #deny ⇒ Object
- #evaluate(*args, &blk) ⇒ Object
- #pass ⇒ Object
Instance Method Details
#all(*policies) ⇒ Object
35 36 37 |
# File 'lib/sequel/privacy/actions.rb', line 35 def all(*policies) policies end |
#allow ⇒ Object
18 19 20 |
# File 'lib/sequel/privacy/actions.rb', line 18 def allow :allow end |
#deny ⇒ Object
23 24 25 |
# File 'lib/sequel/privacy/actions.rb', line 23 def deny :deny end |
#evaluate(*args, &blk) ⇒ Object
43 44 45 |
# File 'lib/sequel/privacy/actions.rb', line 43 def evaluate(*args, &blk) T.unsafe(self).instance_exec(*args, &blk) end |
#pass ⇒ Object
28 29 30 |
# File 'lib/sequel/privacy/actions.rb', line 28 def pass :pass end |