in include/spotify/json/codec/number.hpp [226:244]
json_never_inline T decode_with_positive_exponent(
decode_context &context,
const unsigned exponent,
const char *int_beg,
const char *int_end,
const char *dec_beg,
const char *dec_end) {
T value;
const auto num_dec_digits = static_cast<unsigned>(dec_end - dec_beg);
if (num_dec_digits >= exponent) {
value = decode_integer_range<T, is_positive>(context, int_beg, int_end);
value = decode_integer_range<T, is_positive>(context, dec_beg, dec_beg + exponent, value);
} else {
value = decode_integer_range<T, is_positive>(context, int_beg, int_end);
value = decode_integer_range<T, is_positive>(context, dec_beg, dec_end, value);
value = exp_10<T, is_positive>(context, exponent - num_dec_digits, value);
}
return value;
}