Sha256: 724357e73ef5db2e7ae99316340b3658cb6a7903894aa6de1b3550f78610ac32
Contents?: true
Size: 655 Bytes
Versions: 4
Compression:
Stored size: 655 Bytes
Contents
# typed: strict module DataModel class Builtin::Boolean < Type include Errors class Arguments < T::Struct prop :optional, T::Boolean, default: false end sig { override.params(val: Object, coerce: T::Boolean).returns(TTypeResult) } def read(val, coerce: false) err = Error.new if val.nil? err.add(missing_error(DataModel::Boolean)) return [val, err] end if coerce case val when "true" val = true when "false" val = false end end if !val.is_a?(TrueClass) && !val.is_a?(FalseClass) err.add(type_error(Boolean, val)) return [val, err] end return [val, err] end end end
Version data entries
4 entries across 4 versions & 1 rubygems