| 47 | |
| 48 | template<typename Fn> |
| 49 | static std::string format_function_args(const FunctionParams& params, Fn&& format_arg) { |
| 50 | std::string ret; |
| 51 | for (std::size_t idx = 0; idx < params.param_types.size(); ++idx) { |
| 52 | ret += std::forward<Fn>(format_arg)(idx) + ", "; |
| 53 | } |
| 54 | // drop trailing ", " |
| 55 | ret.resize(ret.size() > 2 ? ret.size() - 2 : 0); |
| 56 | return ret; |
| 57 | }; |
| 58 | |
| 59 | // Custom sort algorithm that works with partial orders. |
| 60 | // |
no test coverage detected