Make stack popping more robust

This commit is contained in:
Max Brunsfeld 2015-11-20 00:01:53 -08:00
parent 64874449e4
commit c88e9044d5
6 changed files with 328 additions and 151 deletions

View file

@ -25,11 +25,20 @@ static inline Vector vector_new(size_t element_size, size_t capacity) {
};
}
static inline void vector_delete(Vector *self) {
free(self->contents);
}
static inline void *vector_get(Vector *self, size_t index) {
assert(index < self->size);
return (void *)((char *)self->contents + index * self->element_size);
}
static inline void *vector_back(Vector *self) {
assert(self->size > 0);
return vector_get(self, self->size - 1);
}
static inline void vector_clear(Vector *self) {
self->size = 0;
}