diff options
author | Damien George <damien.p.george@gmail.com> | 2020-02-11 11:48:28 +1100 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2020-02-13 11:52:40 +1100 |
commit | ad7213d3c31bccb26a3f54f7492ccf4b0cc920f3 (patch) | |
tree | 2ab64a805c05d790579052f557a8168061afcebe /py/objstr.c | |
parent | 97eca38c4f03e76bd464fb25974544a043af2a9e (diff) |
py: Add mp_raise_msg_varg helper and use it where appropriate.
This commit adds mp_raise_msg_varg(type, fmt, ...) as a helper for
nlr_raise(mp_obj_new_exception_msg_varg(type, fmt, ...)). It makes the
C-level API for raising exceptions more consistent, and reduces code size
on most ports:
bare-arm: +28 +0.042%
minimal x86: +100 +0.067%
unix x64: -56 -0.011%
unix nanbox: -300 -0.068%
stm32: -204 -0.054% PYBV10
cc3200: +0 +0.000%
esp8266: -64 -0.010% GENERIC
esp32: -104 -0.007% GENERIC
nrf: -136 -0.094% pca10040
samd: +0 +0.000% ADAFRUIT_ITSYBITSY_M4_EXPRESS
Diffstat (limited to 'py/objstr.c')
-rw-r--r-- | py/objstr.c | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/py/objstr.c b/py/objstr.c index 7e7e86ddd..7919a4d44 100644 --- a/py/objstr.c +++ b/py/objstr.c @@ -1001,8 +1001,8 @@ STATIC vstr_t mp_obj_str_format_helper(const char *str, const char *top, int *ar mp_raise_ValueError( "end of format while looking for conversion specifier"); } else { - nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_ValueError, - "unknown conversion specifier %c", *str)); + mp_raise_msg_varg(&mp_type_ValueError, + "unknown conversion specifier %c", *str); } } } @@ -1262,9 +1262,9 @@ STATIC vstr_t mp_obj_str_format_helper(const char *str, const char *top, int *ar if (MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE) { terse_str_format_value_error(); } else { - nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_ValueError, + mp_raise_msg_varg(&mp_type_ValueError, "unknown format code '%c' for object of type '%s'", - type, mp_obj_get_type_str(arg))); + type, mp_obj_get_type_str(arg)); } } } @@ -1334,9 +1334,9 @@ STATIC vstr_t mp_obj_str_format_helper(const char *str, const char *top, int *ar if (MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE) { terse_str_format_value_error(); } else { - nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_ValueError, + mp_raise_msg_varg(&mp_type_ValueError, "unknown format code '%c' for object of type '%s'", - type, mp_obj_get_type_str(arg))); + type, mp_obj_get_type_str(arg)); } } } else { @@ -1370,9 +1370,9 @@ STATIC vstr_t mp_obj_str_format_helper(const char *str, const char *top, int *ar if (MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE) { terse_str_format_value_error(); } else { - nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_ValueError, + mp_raise_msg_varg(&mp_type_ValueError, "unknown format code '%c' for object of type '%s'", - type, mp_obj_get_type_str(arg))); + type, mp_obj_get_type_str(arg)); } } } @@ -1574,9 +1574,9 @@ not_enough_args: if (MICROPY_ERROR_REPORTING == MICROPY_ERROR_REPORTING_TERSE) { terse_str_format_value_error(); } else { - nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_ValueError, + mp_raise_msg_varg(&mp_type_ValueError, "unsupported format character '%c' (0x%x) at index %d", - *str, *str, str - start_str)); + *str, *str, str - start_str); } } } @@ -2112,9 +2112,9 @@ STATIC NORETURN void bad_implicit_conversion(mp_obj_t self_in) { mp_raise_TypeError("can't convert to str implicitly"); } else { const qstr src_name = mp_obj_get_type(self_in)->name; - nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_TypeError, + mp_raise_msg_varg(&mp_type_TypeError, "can't convert '%q' object to %q implicitly", - src_name, src_name == MP_QSTR_str ? MP_QSTR_bytes : MP_QSTR_str)); + src_name, src_name == MP_QSTR_str ? MP_QSTR_bytes : MP_QSTR_str); } } |