module Virtus::Attribute::Strict

Attribute extension which raises CoercionError when coercion failed

Public Instance Methods

coerce(*) click to toggle source

@see [Attribute#coerce]

@raises [CoercionError] when coercer failed

@api public

Calls superclass method
# File lib/virtus/attribute/strict.rb, line 13
def coerce(*)
  output = super

  if value_coerced?(output) || !required? && output.nil?
    output
  else
    raise CoercionError.new(output, self)
  end
end