aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/vec.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/vec.h b/src/vec.h
index faa314a..7ce52ea 100644
--- a/src/vec.h
+++ b/src/vec.h
@@ -18,9 +18,11 @@
void T##Vector_push_back(T##Vector *self, T elem); \
void T##Vector_insert_before(T##Vector *self, int n, T elem); \
void T##Vector_pop(T##Vector *self); \
+ bool T##Vector_empty(T##Vector *self); \
void T##Vector_remove(T##Vector *self, size_t n); \
size_t T##Vector_len(T##Vector *self); \
T* T##Vector_begin(T##Vector *self); \
+ T* T##Vector_last(T##Vector *self); \
T* T##Vector_end(T##Vector *self); \
T* T##Vector_ref(T##Vector *self, size_t n); \
void T##Vector_swap(T##Vector *self, int i, int j); \
@@ -69,7 +71,9 @@
self->size -= 1; \
} \
T* T##Vector_begin(T##Vector *self) { return self->buffer; } \
+ bool T##Vector_empty(T##Vector *self) { return self->size == 0; } \
T* T##Vector_end(T##Vector *self) { return self->buffer + self->size; } \
+ T* T##Vector_last(T##Vector *self) { return self->buffer + self->size - 1; } \
T* T##Vector_ref(T##Vector *self, size_t n) { return self->buffer + n; } \
void T##Vector_swap(T##Vector *self, int i, int j) { \
T buf; \