TooManyCooks
TooManyCooks copied to clipboard
Improve compile times
Possible optimizations:
Template hoisting:
- move common functionality of templates (that doesn't depend on any template parameters) into base class
- move nested template types out
- replace template parameter types in the above with void*, and static_cast<T*> in the derived template class
- base classes are declared in .hpp and defined in .ipp (#ifdef TMC_IMPL)
Replace std::move / std::forward with static_cast -> remove
Diagnose other issues with clang -ftime-trace