Module: Riffer::Helpers::Boolean
Overview
Coercion for boolean-ish configuration values.
Instance Method Summary collapse
-
#coerce(value, attribute:) ⇒ Object
Coerces
valueto a boolean so an env-var “false” (truthy in Ruby) doesn’t silently read astrue.
Instance Method Details
#coerce(value, attribute:) ⇒ Object
Coerces value to a boolean so an env-var “false” (truthy in Ruby) doesn’t silently read as true. Raises Riffer::ArgumentError on an unrecognized value, naming attribute in the message. – : (untyped, attribute: String) -> bool
13 14 15 16 17 18 19 20 21 |
# File 'lib/riffer/helpers/boolean.rb', line 13 def coerce(value, attribute:) case value when true, "true", 1, "1" then true when false, "false", 0, "0", nil then false else raise Riffer::ArgumentError, "#{attribute} must be a boolean (or 'true'/'false'/'1'/'0'/1/0), got #{value.inspect}" end end |