Preview Ruby 4.1 is a preview. It can change before the final release. Switch to Ruby 4.0 →
instance method
Integer#~
() -> ::Integer
~int → integer
numeric.rb
View on GitHub ↗
# File tmp/rubies/ruby-4.1.0-preview1/numeric.rb, line 123
def ~
Primitive.attr! :leaf
Primitive.cexpr! 'rb_int_comp(self)'
end
One’s complement: returns the value of self with each bit inverted.
Because an integer value is 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"