blog.antonr.netTemplate Alchemy: Mastering Variadic Packs with TypePackIn the previous chapters, we treated our TypePack primarily as a linear sequence—a list that can be sliced, grown, and flattened. However, in many metaprogramming scenarios, a parameter pack acts more like a Set. You might need to know if a specific ...Jan 29·4 min read
blog.antonr.netTemplate Alchemy: Mastering Variadic Packs with TypePack (Part 7 of 8)As we build more complex template systems, we often find ourselves with "packs within packs." This usually happens when merging multiple results from different metafunctions or dealing with recursive type generators. While a nested structure has its ...Jan 25·3 min read
blog.antonr.netTemplate Alchemy: Mastering Variadic Packs with TypePack (Part 6 of 8)In the previous chapters, we focused on "positional" operations: doing things based on indices and ranges. However, in real-world metaprogramming, we often care about what a type is, not just where it is. For example, you might want to strip all void...Jan 21·3 min read
blog.antonr.netTemplate Alchemy: Mastering Variadic Packs with TypePack (Part 5 of 8)Part 5: Refining the Pack — Deletion and Range Removal In the previous chapters, we focused on building and expanding our TypePack. However, effective type manipulation often requires surgical precision in removing unwanted elements. Whether you're s...Jan 19·3 min read
blog.antonr.netTemplate Alchemy: Mastering Variadic Packs with TypePack (Part 4 of 8)In the previous parts, we learned how to encapsulate a variadic pack and how to slice it into smaller pieces. However, a truly flexible meta-container must also be able to grow. In this article, we will implement the ability to merge multiple TypePac...Jan 15·3 min read