End of Life Ruby 3.1 has reached end of life and gets no more fixes. Switch to Ruby 4.0 →
instance method
Integer#~
~int → integer
numeric.rb
View on GitHub ↗
# File tmp/rubies/ruby-3.1.3/numeric.rb, line 68
def ~
Primitive.attr! 'inline'
Primitive.cexpr! 'rb_int_comp(self)'
end
One’s complement: returns a number where each bit is flipped.
Inverts the bits in an Integer. As integers are conceptually of infinite length, the result acts as if it had an infinite number of one bits to the left. In hex representations, this is displayed as two periods to the left of the digits.
Example
sprintf("%X", ~0x1122334455) #=> "..FEEDDCCBBAA"