| 2322 | }; |
| 2323 | |
| 2324 | static void UnpackBitVectorToFlatIndexList(const ImBitVector* in, ImVector<int>* out) |
| 2325 | { |
| 2326 | IM_ASSERT(sizeof(in->Storage.Data[0]) == sizeof(int)); |
| 2327 | const ImU32* it_begin = in->Storage.begin(); |
| 2328 | const ImU32* it_end = in->Storage.end(); |
| 2329 | for (const ImU32* it = it_begin; it < it_end; it++) |
| 2330 | if (ImU32 entries_32 = *it) |
| 2331 | for (ImU32 bit_n = 0; bit_n < 32; bit_n++) |
| 2332 | if (entries_32 & ((ImU32)1 << bit_n)) |
| 2333 | out->push_back((int)(((it - it_begin) << 5) + bit_n)); |
| 2334 | } |
| 2335 | |
| 2336 | static bool ImFontAtlasBuildWithStbTruetype(ImFontAtlas* atlas) |
| 2337 | { |
no test coverage detected