deflateによって圧縮されたファイルには3種類のブロックがあって、無圧縮ブロック、固定ハフマンブロック、動的ハフマンブロックとあるのだけど、「無圧縮」があることでデーコーダーの設計に迷いが生じる。
デコーダーはヘッダの読み込み後に、3bit読むことでブロックの種類がわかるわけだけど、3種のブロックのうち無圧縮ブロックだけはビット単位ではなくバイト単位でデータをあつかったほうが効率がいい。
でも、はじめの3bitの読み込みの部分と他の2種のブロックではビット単位での読み込みのほうがいい。
無圧縮ブロックであっても別に問題になるほどの速度差は出なそうなので、ビット単位に分割してから、またバイトにまとめるというやりかたをしても、まあいいのかもしれない。けど、なんか美しくないんだよな。