| 3298 | #if ELPP_VARIADIC_TEMPLATES_SUPPORTED |
| 3299 | template <typename T, typename... Args> |
| 3300 | void Logger::log_(Level level, int vlevel, const char* s, const T& value, const Args&... args) { |
| 3301 | base::MessageBuilder b; |
| 3302 | b.initialize(this); |
| 3303 | while (*s) { |
| 3304 | if (*s == base::consts::kFormatSpecifierChar) { |
| 3305 | if (*(s + 1) == base::consts::kFormatSpecifierChar) { |
| 3306 | ++s; |
| 3307 | } else { |
| 3308 | if (*(s + 1) == base::consts::kFormatSpecifierCharValue) { |
| 3309 | ++s; |
| 3310 | b << value; |
| 3311 | log_(level, vlevel, ++s, args...); |
| 3312 | return; |
| 3313 | } |
| 3314 | } |
| 3315 | } |
| 3316 | b << *s++; |
| 3317 | } |
| 3318 | ELPP_INTERNAL_ERROR("Too many arguments provided. Unable to handle. Please provide more format specifiers", false); |
| 3319 | } |
| 3320 | template <typename T> |
| 3321 | void Logger::log_(Level level, int vlevel, const T& log) { |
| 3322 | if (level == Level::Verbose) { |
nothing calls this directly
no test coverage detected