py/objtuple: Allow to use inplace-multiplication operator on tuples.
This commit is contained in:
parent
cb7ecda9f0
commit
eb2784e8a2
|
@ -148,7 +148,8 @@ mp_obj_t mp_obj_tuple_binary_op(mp_uint_t op, mp_obj_t lhs, mp_obj_t rhs) {
|
||||||
mp_seq_cat(s->items, o->items, o->len, p->items, p->len, mp_obj_t);
|
mp_seq_cat(s->items, o->items, o->len, p->items, p->len, mp_obj_t);
|
||||||
return MP_OBJ_FROM_PTR(s);
|
return MP_OBJ_FROM_PTR(s);
|
||||||
}
|
}
|
||||||
case MP_BINARY_OP_MULTIPLY: {
|
case MP_BINARY_OP_MULTIPLY:
|
||||||
|
case MP_BINARY_OP_INPLACE_MULTIPLY: {
|
||||||
mp_int_t n;
|
mp_int_t n;
|
||||||
if (!mp_obj_get_int_maybe(rhs, &n)) {
|
if (!mp_obj_get_int_maybe(rhs, &n)) {
|
||||||
return MP_OBJ_NULL; // op not supported
|
return MP_OBJ_NULL; // op not supported
|
||||||
|
|
|
@ -11,6 +11,11 @@ a = (1, 2, 3)
|
||||||
c = a * 3
|
c = a * 3
|
||||||
print(a, c)
|
print(a, c)
|
||||||
|
|
||||||
|
# inplace multiplication
|
||||||
|
a = (1, 2)
|
||||||
|
a *= 2
|
||||||
|
print(a)
|
||||||
|
|
||||||
# unsupported type on RHS
|
# unsupported type on RHS
|
||||||
try:
|
try:
|
||||||
() * None
|
() * None
|
||||||
|
|
Loading…
Reference in New Issue