Fixed the merge so it worked and compiled and stuff
This commit is contained in:
parent
13e64f0660
commit
189c8e1cc4
25
py/objset.c
25
py/objset.c
@ -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,
|
||||
|
Loading…
x
Reference in New Issue
Block a user