diff --git a/Vector.c b/Vector.c index aa316805..adc898e6 100644 --- a/Vector.c +++ b/Vector.c @@ -40,7 +40,7 @@ void Vector_delete(Vector* this) { #ifndef NDEBUG -static bool Vector_isConsistent(Vector* this) { +static bool Vector_isConsistent(const Vector* this) { assert(this->items <= this->arraySize); if (this->owner) { for (int i = 0; i < this->items; i++) @@ -52,7 +52,7 @@ static bool Vector_isConsistent(Vector* this) { } } -int Vector_count(Vector* this) { +int Vector_count(const Vector* this) { int items = 0; for (int i = 0; i < this->items; i++) { if (this->array[i]) @@ -68,7 +68,7 @@ Object* Vector_get(Vector* this, int idx) { return this->array[idx]; } -int Vector_size(Vector* this) { +int Vector_size(const Vector* this) { assert(Vector_isConsistent(this)); return this->items; } @@ -288,13 +288,13 @@ void Vector_add(Vector* this, void* data_) { assert(Vector_isConsistent(this)); } -int Vector_indexOf(Vector* this, const void* search_, Object_Compare compare) { +int Vector_indexOf(const Vector* this, const void* search_, Object_Compare compare) { const Object* search = search_; assert(Object_isA(search, this->type)); assert(compare); assert(Vector_isConsistent(this)); for (int i = 0; i < this->items; i++) { - Object* o = this->array[i]; + const Object* o = this->array[i]; assert(o); if (compare(search, o) == 0) return i; diff --git a/Vector.h b/Vector.h index 1b599d69..491779b3 100644 --- a/Vector.h +++ b/Vector.h @@ -49,8 +49,8 @@ void Vector_set(Vector* this, int idx, void* data_); #ifndef NDEBUG Object* Vector_get(Vector* this, int idx); -int Vector_size(Vector* this); -int Vector_count(Vector* this); +int Vector_size(const Vector* this); +int Vector_count(const Vector* this); #else /* NDEBUG */ @@ -61,7 +61,7 @@ int Vector_count(Vector* this); void Vector_add(Vector* this, void* data_); -int Vector_indexOf(Vector* this, const void* search_, Object_Compare compare); +int Vector_indexOf(const Vector* this, const void* search_, Object_Compare compare); void Vector_splice(Vector* this, Vector* from);