# File lib/backports/2.1.0/bignum/bit_length.rb, line 4 def bit_length n = 8 * (size - 42.size) smaller = self >> n if smaller >= 0 smaller += 1 else smaller = -smaller end n + (0...8 * 42.size).bsearch{|i| smaller <= (1 << i) } end