Sha256: 19d9fa44502d2d8cb9d3deb2a545f9f04660ddfa115667348272aed99d88d429

Contents?: true

Size: 301 Bytes

Versions: 38

Compression:

Stored size: 301 Bytes

Contents

unless Integer.method_defined?(:bit_length) || Fixnum.method_defined?(:bit_length)
  require 'backports/2.0.0/range/bsearch'
  class Fixnum
    def bit_length
      n = if self >= 0
        self + 1
      else
        -self
      end
      (0...8 * size).bsearch{|i| n <= (1 << i) }
    end
  end
end

Version data entries

38 entries across 38 versions & 3 rubygems

Version Path
backports-3.25.0 lib/backports/2.1.0/fixnum/bit_length.rb
backports-3.24.1 lib/backports/2.1.0/fixnum/bit_length.rb
backports-3.24.0 lib/backports/2.1.0/fixnum/bit_length.rb
backports-3.23.0 lib/backports/2.1.0/fixnum/bit_length.rb
backports-3.22.1 lib/backports/2.1.0/fixnum/bit_length.rb
backports-3.22.0 lib/backports/2.1.0/fixnum/bit_length.rb
backports-3.21.0 lib/backports/2.1.0/fixnum/bit_length.rb
backports-3.20.2 lib/backports/2.1.0/fixnum/bit_length.rb
backports-3.20.1 lib/backports/2.1.0/fixnum/bit_length.rb
backports-3.20.0 lib/backports/2.1.0/fixnum/bit_length.rb
backports-3.19.0 lib/backports/2.1.0/fixnum/bit_length.rb
backports-3.18.2 lib/backports/2.1.0/fixnum/bit_length.rb
backports-3.18.1 lib/backports/2.1.0/fixnum/bit_length.rb
backports-3.18.0 lib/backports/2.1.0/fixnum/bit_length.rb
files.com-1.0.55 docs/vendor/bundle/ruby/2.5.0/gems/backports-3.12.0/lib/backports/2.1.0/fixnum/bit_length.rb
backports-3.17.2 lib/backports/2.1.0/fixnum/bit_length.rb
backports-3.17.1 lib/backports/2.1.0/fixnum/bit_length.rb
backports-3.17.0 lib/backports/2.1.0/fixnum/bit_length.rb
backports-3.16.1 lib/backports/2.1.0/fixnum/bit_length.rb
backports-3.16.0 lib/backports/2.1.0/fixnum/bit_length.rb