| 694 | */ |
| 695 | template<int argNum = 0, unsigned long N, int M, typename T1, typename... Ts> |
| 696 | inline size_t |
| 697 | getArgSizes(const std::array<ParamType, N>& argFmtTypes, |
| 698 | uint64_t &previousPrecision, |
| 699 | size_t (&stringSizes)[M], |
| 700 | T1 head, Ts... rest) |
| 701 | { |
| 702 | return getArgSize(argFmtTypes[argNum], previousPrecision, |
| 703 | stringSizes[argNum], head) |
| 704 | + getArgSizes<argNum + 1>(argFmtTypes, previousPrecision, |
| 705 | stringSizes, rest...); |
| 706 | } |
| 707 | |
| 708 | /** |
| 709 | * Specialization for getArgSizes when there are no arguments, i.e. it is |