Fixed the merge so it worked and compiled and stuff

This commit is contained in:
John R. Lenton 2014-01-13 00:52:06 +00:00
parent 13e64f0660
commit 189c8e1cc4

View File

@ -46,23 +46,6 @@ void set_print(void (*print)(void *env, const char *fmt, ...), void *env, mp_obj
}
static mp_obj_t set_binary_op(int op, mp_obj_t lhs_in, mp_obj_t rhs_in) {
mp_obj_set_t *o = lhs_in;
switch (op) {
case RT_COMPARE_OP_IN:
case RT_COMPARE_OP_NOT_IN:
{
mp_obj_t elem = mp_set_lookup(&o->set, rhs_in, false);
return ((op == RT_COMPARE_OP_IN) ^ (elem == NULL))
? mp_const_true : mp_const_false;
}
default:
// op not supported
return NULL;
}
}
static mp_obj_t set_make_new(mp_obj_t type_in, int n_args, const mp_obj_t *args) {
switch (n_args) {
case 0:
@ -423,6 +406,13 @@ static mp_obj_t set_binary_op(int op, mp_obj_t lhs, mp_obj_t rhs) {
return set_issuperset(lhs, rhs);
case RT_COMPARE_OP_NOT_EQUAL:
return MP_BOOL(set_equal(lhs, rhs) == mp_const_false);
case RT_COMPARE_OP_IN:
case RT_COMPARE_OP_NOT_IN:
{
mp_obj_set_t *o = lhs;
mp_obj_t elem = mp_set_lookup(&o->set, rhs, MP_MAP_LOOKUP);
return MP_BOOL((op == RT_COMPARE_OP_IN) ^ (elem == NULL));
}
default:
// op not supported
return NULL;
@ -458,7 +448,6 @@ const mp_obj_type_t set_type = {
{ &mp_const_type },
"set",
.print = set_print,
.binary_op = set_binary_op,
.make_new = set_make_new,
.binary_op = set_binary_op,
.getiter = set_getiter,