Integer#anybits?
とInteger#nobits?
のドキュメントが間違っていたので直した。
そしてこのメソッドの存在をはじめて知った。
Integer#allbits?
の説明が間違っている気がする。
self & mask の全てのビットが 1 なら true を返します。 self & mask == mask と等価です。
https://docs.ruby-lang.org/ja/latest/method/Integer/i/allbits=3f.html
と言っているけど、「self & mask の全てのビットが 1 なら true」はおかしいよね。
それだと0b10.allbits?(0b10)
はfalseを返さなきゃいけないことになる。
RDocも同じことが書かれているので、両方直したほうが良さそう。 ただこれを自然言語でなんと説明するのが分かりやすいのだろうな、という気持ちになっている。
Returns true if all bits of int & mask are 1.
https://docs.ruby-lang.org/en/2.7.0/Integer.html#method-i-allbits-3F
ナンバープレイスソルバの高速化をしていた。
candidatesをArray[Integer]
ではなくInteger
の各bitで持つようにしたらまだ速くなるような気がするけど、実装してて面倒になったのでやめた。
お気に入りブランチ名