Module: Tzispa::Helpers::Requirer::ClassMethods
- Defined in:
- lib/tzispa/helpers/requirer.rb
Instance Method Summary collapse
- #required(target, value, &block) ⇒ Object
- #required?(target, value) ⇒ Boolean
- #required_valid?(target, value, obj) ⇒ Boolean
Instance Method Details
#required(target, value, &block) ⇒ Object
21 22 23 24 25 26 |
# File 'lib/tzispa/helpers/requirer.rb', line 21 def required(target, value, &block) @required ||= {} (@required[target] ||= {}).tap do |reqt| reqt[value] = block || true end end |
#required?(target, value) ⇒ Boolean
28 29 30 |
# File 'lib/tzispa/helpers/requirer.rb', line 28 def required?(target, value) @required&.fetch(target, nil)&.fetch(value, nil) end |
#required_valid?(target, value, obj) ⇒ Boolean
32 33 34 35 36 37 38 |
# File 'lib/tzispa/helpers/requirer.rb', line 32 def required_valid?(target, value, obj) if (rq = required?(target, value)) && rq.respond_to?(:call) obj.instance_eval(&rq) else rq end end |