bit操作 - MASK_DECLARE_X()
概要
indexからbitマスクを取得可能な二次元配列を定義する
詳細
MASK_DECLARE_8、MASK_DECLARE_4、MASK_DECLARE_2、MASK_DECLARE_1のいずれかに該当し以下の処理を行う
引数の値をx、マクロ名のprefixをX、マクロをf()で表すとすると以下の再帰関数として定義される
X = 1 : [x + 1][0] = [1 << x] f(X, x) = { X > 1 : f(X / 2, x), f(X / 2, x + X / 2)
従って、x + 1からX要素分の配列の先頭の配列に配列のインデックスの値のbitが立った数値で初期化する