I noticed that the class PackedVector doesn't work like what it's name says. e.g.
PackedVector<signed, 4> vec(2);
will use 16 bits.
PackedVector<signed, 8> vec(2);
will use 256 bits.
Event when I created a longer bits vector, e.g.
PackedVector<signed, 30> Vec2(8);
There would be a out of index error. Beacause the size which is an unsigned type calculated with 8<<(30-1) is 0.
clang-tidy: warning: invalid case style for parameter 'size' [readability-identifier-naming]
not useful