Sha256: ee91d9934577bd933a739216edfae4051f5fe267110f04f2a2fa50b6b464c9f4

Contents?: true

Size: 651 Bytes

Versions: 2

Compression:

Stored size: 651 Bytes

Contents

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

  class Fixnum
    def to_bool
      return true if self == 1
      return false if self == 0
      fail ArgumentError.new("invalid value for Boolean: \"#{self}\"")
    end
  end

  class TrueClass
    def to_bool
      self
    end
  end

  class FalseClass
    def to_bool
      self
    end
  end

  class NilClass
    def to_bool
      false
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
ryakuzu-0.3.0 lib/ryakuzu/tools/boolean_patch.rb
ryakuzu-0.2.6 lib/ryakuzu/boolean_patch.rb