STATIC mp_obj_t set_pop(mp_obj_t self_in) { assert(MP_OBJ_IS_TYPE(self_in, &mp_type_set)); mp_obj_set_t *self = self_in; mp_obj_t obj = mp_set_remove_first(&self->set); if (obj == MP_OBJ_NULL) { nlr_raise(mp_obj_new_exception_msg(&mp_type_KeyError, "pop from an empty set")); } return obj; }
STATIC mp_obj_t set_pop(mp_obj_t self_in) { check_set(self_in); mp_obj_set_t *self = MP_OBJ_TO_PTR(self_in); mp_obj_t obj = mp_set_remove_first(&self->set); if (obj == MP_OBJ_NULL) { mp_raise_msg(&mp_type_KeyError, "pop from an empty set"); } return obj; }