diff --git a/src/obj_list.c b/src/obj_list.c index 48b594d..69a8739 100644 --- a/src/obj_list.c +++ b/src/obj_list.c @@ -101,7 +101,7 @@ KRK_Method(list,__eq__) { KrkList * them = AS_list(argv[1]); if (self->values.count != them->values.count) return BOOLEAN_VAL(0); for (size_t i = 0; i < self->values.count; ++i) { - if (!krk_valuesEqual(self->values.values[i], them->values.values[i])) return BOOLEAN_VAL(0); + if (!krk_valuesSameOrEqual(self->values.values[i], them->values.values[i])) return BOOLEAN_VAL(0); } return BOOLEAN_VAL(1); } @@ -222,7 +222,7 @@ KRK_Method(list,__contains__) { METHOD_TAKES_EXACTLY(1); pthread_rwlock_rdlock(&self->rwlock); for (size_t i = 0; i < self->values.count; ++i) { - if (krk_valuesEqual(argv[1], self->values.values[i])) { + if (krk_valuesSameOrEqual(argv[1], self->values.values[i])) { pthread_rwlock_unlock(&self->rwlock); return BOOLEAN_VAL(1); } @@ -333,7 +333,7 @@ KRK_Method(list,remove) { METHOD_TAKES_EXACTLY(1); pthread_rwlock_wrlock(&self->rwlock); for (size_t i = 0; i < self->values.count; ++i) { - if (krk_valuesEqual(self->values.values[i], argv[1])) { + if (krk_valuesSameOrEqual(self->values.values[i], argv[1])) { pthread_rwlock_unlock(&self->rwlock); return FUNC_NAME(list,pop)(2,(KrkValue[]){argv[0], INTEGER_VAL(i)},0); } @@ -380,7 +380,7 @@ KRK_Method(list,index) { LIST_WRAP_SOFT(max); for (krk_integer_type i = min; i < max; ++i) { - if (krk_valuesEqual(self->values.values[i], argv[1])) { + if (krk_valuesSameOrEqual(self->values.values[i], argv[1])) { pthread_rwlock_unlock(&self->rwlock); return INTEGER_VAL(i); } @@ -400,7 +400,7 @@ KRK_Method(list,count) { pthread_rwlock_rdlock(&self->rwlock); for (size_t i = 0; i < self->values.count; ++i) { - if (krk_valuesEqual(self->values.values[i], argv[1])) count++; + if (krk_valuesSameOrEqual(self->values.values[i], argv[1])) count++; if (unlikely(krk_currentThread.flags & KRK_THREAD_HAS_EXCEPTION)) break; } pthread_rwlock_unlock(&self->rwlock); diff --git a/src/obj_tuple.c b/src/obj_tuple.c index ce12280..a342460 100644 --- a/src/obj_tuple.c +++ b/src/obj_tuple.c @@ -62,7 +62,7 @@ KrkValue krk_tuple_of(int argc, const KrkValue argv[], int hasKw) { KRK_Method(tuple,__contains__) { METHOD_TAKES_EXACTLY(1); for (size_t i = 0; i < self->values.count; ++i) { - if (krk_valuesEqual(self->values.values[i], argv[1])) return BOOLEAN_VAL(1); + if (krk_valuesSameOrEqual(self->values.values[i], argv[1])) return BOOLEAN_VAL(1); } return BOOLEAN_VAL(0); } @@ -119,7 +119,7 @@ KRK_Method(tuple,__eq__) { KrkTuple * them = AS_tuple(argv[1]); if (self->values.count != them->values.count) return BOOLEAN_VAL(0); for (size_t i = 0; i < self->values.count; ++i) { - if (!krk_valuesEqual(self->values.values[i], them->values.values[i])) return BOOLEAN_VAL(0); + if (!krk_valuesSameOrEqual(self->values.values[i], them->values.values[i])) return BOOLEAN_VAL(0); } return BOOLEAN_VAL(1); }