Module: Lite::Validation::Validator::Ruling

Extended by:
Constructors
Defined in:
lib/lite/validation/validator/ruling.rb,
lib/lite/validation/validator/ruling/pass.rb,
lib/lite/validation/validator/ruling/commit.rb,
lib/lite/validation/validator/ruling/refute.rb,
lib/lite/validation/validator/ruling/dispute.rb,
lib/lite/validation/validator/ruling/abstract.rb,
lib/lite/validation/validator/ruling/invalidate.rb,
lib/lite/validation/validator/ruling/abstract/valid.rb,
lib/lite/validation/validator/ruling/abstract/invalid.rb

Defined Under Namespace

Modules: Abstract, Constructors Classes: Commit, Dispute, Invalidate, Pass, Refute

Class Method Summary collapse

Methods included from Constructors

Commit, Dispute, Invalidate, Pass, Refute

Class Method Details

.apply(ruling, result, coordinator) ⇒ Object



15
16
17
18
19
20
21
22
23
# File 'lib/lite/validation/validator/ruling.rb', line 15

def self.apply(ruling, result, coordinator)
  case ruling
  when Commit then result.commit(ruling.value)
  when Dispute::Abstract then result.dispute(ruling.structured_error(coordinator))
  when Refute::Abstract then result.refute(ruling.structured_error(coordinator))
  when Pass then result
  else raise Error::Fatal, "Ruling expected, got: #{ruling.inspect}"
  end
end