From ee4aaf7cddd044afb3e6f2d4ead0635ee6607630 Mon Sep 17 00:00:00 2001 From: Paul Sokolovsky Date: Sat, 8 Feb 2014 23:17:51 +0200 Subject: Implement tuple addition. --- py/objtuple.c | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'py/objtuple.c') diff --git a/py/objtuple.c b/py/objtuple.c index 8c1320a5f..b7710e1d5 100644 --- a/py/objtuple.c +++ b/py/objtuple.c @@ -114,6 +114,16 @@ static mp_obj_t tuple_binary_op(int op, mp_obj_t lhs, mp_obj_t rhs) { uint index = mp_get_index(o->base.type, o->len, rhs); return o->items[index]; } + case RT_BINARY_OP_ADD: + { + if (!MP_OBJ_IS_TYPE(rhs, &tuple_type)) { + return NULL; + } + mp_obj_tuple_t *p = rhs; + mp_obj_tuple_t *s = mp_obj_new_tuple(o->len + p->len, NULL); + m_seq_cat(s->items, o->items, o->len, p->items, p->len, mp_obj_t); + return s; + } case RT_BINARY_OP_EQUAL: case RT_BINARY_OP_LESS: case RT_BINARY_OP_LESS_EQUAL: -- cgit v1.2.3