Module: ActiveLogic::ActsAsLogic::LocalInstanceMethods
- Defined in:
- lib/active_logic/acts_as_logic.rb
Instance Method Summary collapse
- #ask(verb, *arguments) ⇒ Object
- #declare(verb, *arguments) ⇒ Object
- #undeclare(verb, *arguments) ⇒ Object
Instance Method Details
#ask(verb, *arguments) ⇒ Object
32 33 34 |
# File 'lib/active_logic/acts_as_logic.rb', line 32 def ask(verb, *arguments) query(verb, *arguments).count > 0 end |
#declare(verb, *arguments) ⇒ Object
18 19 20 21 22 23 24 |
# File 'lib/active_logic/acts_as_logic.rb', line 18 def declare(verb, *arguments) if not items_are_records?(arguments) throw 'Arguments should be all records.' end ActiveLogic.model.find_or_create_by subject: record_to_json(self), verb: verb, arguments: records_to_json(arguments) end |
#undeclare(verb, *arguments) ⇒ Object
26 27 28 29 30 |
# File 'lib/active_logic/acts_as_logic.rb', line 26 def undeclare(verb, *arguments) query(verb, *arguments).each do |declaration| declaration.destroy end end |