Class: Formulario::Validator
- Inherits:
-
Object
- Object
- Formulario::Validator
- Defined in:
- lib/formulario/validator.rb
Instance Method Summary collapse
- #call(value:, field_name: nil, object: nil) ⇒ Object
-
#initialize(&validation_block) ⇒ Validator
constructor
A new instance of Validator.
- #message ⇒ Object
- #on_invalid ⇒ Object
- #on_valid ⇒ Object
- #to_proc ⇒ Object
- #valid? ⇒ Boolean
Constructor Details
#initialize(&validation_block) ⇒ Validator
Returns a new instance of Validator.
4 5 6 |
# File 'lib/formulario/validator.rb', line 4 def initialize(&validation_block) @validation_block = validation_block if block_given? end |
Instance Method Details
#call(value:, field_name: nil, object: nil) ⇒ Object
8 9 10 11 12 13 14 15 16 |
# File 'lib/formulario/validator.rb', line 8 def call(value:, field_name: nil, object: nil) @value = value @field_name = field_name @object = object @valid = object.instance_exec(value, &validation_block) @validated = true self end |
#message ⇒ Object
28 29 30 |
# File 'lib/formulario/validator.rb', line 28 def valid? ? '' : failure_text.to_s end |
#on_invalid ⇒ Object
38 39 40 41 42 |
# File 'lib/formulario/validator.rb', line 38 def on_invalid yield unless valid? self end |
#on_valid ⇒ Object
32 33 34 35 36 |
# File 'lib/formulario/validator.rb', line 32 def on_valid yield if valid? self end |
#to_proc ⇒ Object
18 19 20 |
# File 'lib/formulario/validator.rb', line 18 def to_proc method(:call) end |
#valid? ⇒ Boolean
22 23 24 25 26 |
# File 'lib/formulario/validator.rb', line 22 def valid? raise ValidationNotPerformed unless validated? valid end |