Conversões Ruby to_bool (monkeypatching)

class Object
def to_bool
self ? true : false
end
end

class String
def to_bool
return true if self == true || self =~ (/(true|t|yes|y|1)$/i)
return false if self == false || self.empty? || self =~ (/(false|f|no|n|0)$/i)
raise ArgumentError.new("invalid value for Boolean: "#{self}"""")
end
end