summaryrefslogtreecommitdiffstatshomepage
path: root/py/objtuple.c
diff options
context:
space:
mode:
Diffstat (limited to 'py/objtuple.c')
-rw-r--r--py/objtuple.c19
1 files changed, 14 insertions, 5 deletions
diff --git a/py/objtuple.c b/py/objtuple.c
index 6abe7d2c64..2793e4838d 100644
--- a/py/objtuple.c
+++ b/py/objtuple.c
@@ -43,17 +43,26 @@ STATIC mp_obj_t mp_obj_new_tuple_iterator(mp_obj_tuple_t *tuple, mp_uint_t cur);
void mp_obj_tuple_print(void (*print)(void *env, const char *fmt, ...), void *env, mp_obj_t o_in, mp_print_kind_t kind) {
mp_obj_tuple_t *o = o_in;
- print(env, "(");
+ if (MICROPY_PY_UJSON && kind == PRINT_JSON) {
+ print(env, "[");
+ } else {
+ print(env, "(");
+ kind = PRINT_REPR;
+ }
for (mp_uint_t i = 0; i < o->len; i++) {
if (i > 0) {
print(env, ", ");
}
- mp_obj_print_helper(print, env, o->items[i], PRINT_REPR);
+ mp_obj_print_helper(print, env, o->items[i], kind);
}
- if (o->len == 1) {
- print(env, ",");
+ if (MICROPY_PY_UJSON && kind == PRINT_JSON) {
+ print(env, "]");
+ } else {
+ if (o->len == 1) {
+ print(env, ",");
+ }
+ print(env, ")");
}
- print(env, ")");
}
STATIC mp_obj_t mp_obj_tuple_make_new(mp_obj_t type_in, mp_uint_t n_args, mp_uint_t n_kw, const mp_obj_t *args) {