にらめっこしてても無駄だと思ったので、
元ページのサンプルコード*1をクラスに起こしながら丸々コピー。
手書きってのはやっぱり頭に入るよね。動作追うのも楽チンだし。あとCがやっぱり一番読みやすいです。
でもって、最後まで書いて動作確認までして、
よくわからんil||liorzil||li
だって解説に書いてない処理入ってたりするし、ビットシフト演算されたらコードからは内容把握できないし、
そもそも解説と1:1で対応してないんじゃ関数分けてる意味ねーだろとか逆切れ始めちゃったり。
まぁこれでデバッガで追えるようになるのでそっちから動作確認します。。。
*1:今日やっとあるのに気が付いた