Alices adventures in Template Land
summary
Code implements an index type that deduces key and model types from a pointer-to-member so callers write a single template argument and get maps and extractors generated automatically. It handles data members, member functions and free functions by combining partial specializations, decltype/decay, and std::invoke, and keeps the implementation compact (example under 100 lines). Development uses Godbolt and cppinsights to iterate and inspect generated code, and slides plus example code are linked in the uploader's materials.
AI-written summary · about
chapters (15)
- 0:00Introduction and context
- 2:34The problem with boilerplate
- 6:28Exploring boost solutions
- 8:27Pointers to data members
- 13:05Template basics
- 15:40Alias and variable templates
- 18:24Template parameters
- 21:24Template specialization
- 24:36Implementing the index class
- 30:22Handling member functions
- 34:43Solving type deduction issues
- 39:00The type extractor pattern
- 44:25Final implementation results
- 47:42Tooling and final thoughts
- 55:34Q&A and alternative methods
related talks
01h 07mBack to Basics: Templates (part 2 of 2)
54mModern Template Techniques
41mTemplate meta-programming: Why you must get it
59mTemplate Metaprogramming: Type Traits (part 2 of 2)
59mModern Template Metaprogramming: A Compendium, Part II
01h 39mKeynote - C++ Metaprogramming: evolution and future direction
01h 02mBack to Basics: Templates in C++
46mEmbracing CTAD
