| 2377 | }; |
| 2378 | |
| 2379 | static void UnpackBitVectorToFlatIndexList(const ImBitVector* in, ImVector<int>* out) |
| 2380 | { |
| 2381 | IM_ASSERT(sizeof(in->Storage.Data[0]) == sizeof(int)); |
| 2382 | const ImU32* it_begin = in->Storage.begin(); |
| 2383 | const ImU32* it_end = in->Storage.end(); |
| 2384 | for (const ImU32* it = it_begin; it < it_end; it++) |
| 2385 | if (ImU32 entries_32 = *it) |
| 2386 | for (ImU32 bit_n = 0; bit_n < 32; bit_n++) |
| 2387 | if (entries_32 & ((ImU32)1 << bit_n)) |
| 2388 | out->push_back((int)(((it - it_begin) << 5) + bit_n)); |
| 2389 | } |
| 2390 | |
| 2391 | static bool ImFontAtlasBuildWithStbTruetype(ImFontAtlas* atlas) |
| 2392 | { |
no test coverage detected