summaryrefslogtreecommitdiff
path: root/py/objtuple.c
diff options
context:
space:
mode:
authorPeter Züger <zueger.peter@icloud.com>2021-02-03 09:24:25 +0100
committerDamien George <damien@micropython.org>2021-08-07 13:52:16 +1000
commitffc854f17f1c4a3a9904fa8909f0b6ab5385206f (patch)
tree889276a0ee111c6f771248e32ab1a6b07b3f2890 /py/objtuple.c
parent8616129f2e382310802950db066178648a9429a3 (diff)
extmod/modujson: Add support for dump/dumps separators keyword-argument.
Optionally enabled via MICROPY_PY_UJSON_SEPARATORS. Enabled by default. For dump, make sure mp_get_stream_raise is called after mod_ujson_separators since CPython does it in this order (if both separators and stream are invalid, separators will raise an exception first). Add separators argument in the docs as well. Signed-off-by: Peter Züger <zueger.peter@icloud.com> Signed-off-by: Damien George <damien@micropython.org>
Diffstat (limited to 'py/objtuple.c')
-rw-r--r--py/objtuple.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/py/objtuple.c b/py/objtuple.c
index 07a560ac0..67d7bc356 100644
--- a/py/objtuple.c
+++ b/py/objtuple.c
@@ -39,15 +39,19 @@
void mp_obj_tuple_print(const mp_print_t *print, mp_obj_t o_in, mp_print_kind_t kind) {
mp_obj_tuple_t *o = MP_OBJ_TO_PTR(o_in);
+ const char *item_separator = ", ";
if (MICROPY_PY_UJSON && kind == PRINT_JSON) {
mp_print_str(print, "[");
+ #if MICROPY_PY_UJSON_SEPARATORS
+ item_separator = MP_PRINT_GET_EXT(print)->item_separator;
+ #endif
} else {
mp_print_str(print, "(");
kind = PRINT_REPR;
}
for (size_t i = 0; i < o->len; i++) {
if (i > 0) {
- mp_print_str(print, ", ");
+ mp_print_str(print, item_separator);
}
mp_obj_print_helper(print, o->items[i], kind);
}