diff options
| author | Tyge Løvset <[email protected]> | 2020-08-28 16:08:08 +0200 |
|---|---|---|
| committer | Tyge Løvset <[email protected]> | 2020-08-28 16:08:08 +0200 |
| commit | 47de9987a623e8374915af40d67d72dcb56e4283 (patch) | |
| tree | 44ad1af184a3121d87a3281ff04546452b927819 /stc/cpqueue.h | |
| parent | b29771837b5e37fc9175dc43ab7108d01aaaeba1 (diff) | |
| download | STC-modified-47de9987a623e8374915af40d67d72dcb56e4283.tar.gz STC-modified-47de9987a623e8374915af40d67d72dcb56e4283.zip | |
Some smaller fixes and cleanup.
Diffstat (limited to 'stc/cpqueue.h')
| -rw-r--r-- | stc/cpqueue.h | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/stc/cpqueue.h b/stc/cpqueue.h index b0dab7ed..ed66f3cb 100644 --- a/stc/cpqueue.h +++ b/stc/cpqueue.h @@ -61,9 +61,13 @@ cvec_##tag##_pqueue_top(cvec_##tag* self) {return self->data[0];} \ STC_INLINE void \
cvec_##tag##_pqueue_pop(cvec_##tag* self) {cvec_##tag##_pqueue_erase(self, 0);} \
STC_API void \
-cvec_##tag##_pqueue_push(cvec_##tag* self, cvec_##tag##_value_t value); \
+cvec_##tag##_pqueue_push_v(cvec_##tag* self, cvec_##tag##_value_t value); \
+STC_INLINE void \
+cvec_##tag##_pqueue_push(cvec_##tag* self, cvec_##tag##_rawvalue_t rawValue) { \
+ cvec_##tag##_pqueue_push_v(self, cvec_##tag##_value_from_raw(rawValue)); \
+} \
STC_API void \
-cvec_##tag##_pqueue_push_n(cvec_##tag *self, const cvec_##tag##_value_t in[], size_t size); \
+cvec_##tag##_pqueue_push_n(cvec_##tag *self, const cvec_##tag##_input_t in[], size_t size); \
\
implement_cvec_pqueue(tag, cmpOpr) \
typedef cvec_##tag##_value_t cvec_##tag##_pqueue_input_t
@@ -104,7 +108,7 @@ cvec_##tag##_pqueue_erase(cvec_##tag* self, size_t i) { \ } \
\
STC_API void \
-cvec_##tag##_pqueue_push(cvec_##tag* self, cvec_##tag##_value_t value) { \
+cvec_##tag##_pqueue_push_v(cvec_##tag* self, cvec_##tag##_value_t value) { \
cvec_##tag##_push_back(self, value); /* sift-up the value */ \
size_t n = cvec_size(*self), c = n; \
cvec_##tag##_value_t *arr = self->data - 1; \
@@ -113,7 +117,7 @@ cvec_##tag##_pqueue_push(cvec_##tag* self, cvec_##tag##_value_t value) { \ if (c != n) arr[c] = value; \
} \
STC_API void \
-cvec_##tag##_pqueue_push_n(cvec_##tag *self, const cvec_##tag##_value_t in[], size_t size) { \
+cvec_##tag##_pqueue_push_n(cvec_##tag *self, const cvec_##tag##_input_t in[], size_t size) { \
cvec_##tag##_reserve(self, cvec_size(*self) + size); \
for (size_t i=0; i<size; ++i) cvec_##tag##_pqueue_push(self, in[i]); \
}
|
