From 86cfb2375bbbb03fb1ecfbdee47ea6918a368646 Mon Sep 17 00:00:00 2001 From: Sadie Powell Date: Tue, 27 Apr 2021 02:40:57 +0100 Subject: Use parameter pack expansion instead of recursive calls. --- include/numeric.h | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) (limited to 'include/numeric.h') diff --git a/include/numeric.h b/include/numeric.h index 79a569c22..9ce34b12b 100644 --- a/include/numeric.h +++ b/include/numeric.h @@ -50,23 +50,13 @@ class Numeric::Numeric { } - /** Add a parameter pack to the numeric. - * @param x1 The first element of the parameter pack. - * @param x2 The rest of the parameter pack. + /** Converts the given arguments to a string and adds them to the numeric. + * @param args One or more arguments to the numeric. */ - template - Numeric& push(const T1& x1, T2... x2) + template + Numeric& push(const Args&... args) { - return push(x1).push(std::forward(x2)...); - } - - /** Add a parameter to the numeric. The parameter will be converted to a string first with ConvToStr(). - * @param x The parameter to add to the numeric. - */ - template - Numeric& push(const T& x) - { - params.push_back(ConvToStr(x)); + (params.push_back(ConvToStr(args)), ...); return *this; } -- cgit v1.3.1-10-gc9f91