module Rasti::Types::Castable

Public Instance Methods

cast(value) click to toggle source
# File lib/rasti/types/castable.rb, line 5
def cast(value)
  return nil if value.nil?

  if valid? value
    transform! value
  else
    raise CastError.new self, value
  end
end

Private Instance Methods

transform!(value) click to toggle source
# File lib/rasti/types/castable.rb, line 17
def transform!(value)
  transform value
rescue CompoundError => ex
  raise ex
rescue
  raise CastError.new self, value
end