summaryrefslogtreecommitdiffhomepage
path: root/include/stc/cdeq.h
diff options
context:
space:
mode:
authorTyge Løvset <[email protected]>2023-06-20 15:28:02 +0200
committerTyge Løvset <[email protected]>2023-06-20 15:28:02 +0200
commitde4f8fa86f141dfeab15f5576029910474f56fa1 (patch)
tree930f8ecb0a2765d4834aa34f6ac538096454816c /include/stc/cdeq.h
parentb617eded8cee98dd3ff9ac896328b172d37fcf91 (diff)
downloadSTC-modified-de4f8fa86f141dfeab15f5576029910474f56fa1.tar.gz
STC-modified-de4f8fa86f141dfeab15f5576029910474f56fa1.zip
Internal only:
Renamed _cx_memb() macro to _cx_MEMB() Renamed _cx_self macro to _cx_Self
Diffstat (limited to 'include/stc/cdeq.h')
-rw-r--r--include/stc/cdeq.h100
1 files changed, 50 insertions, 50 deletions
diff --git a/include/stc/cdeq.h b/include/stc/cdeq.h
index a406c2b0..0eac5a1d 100644
--- a/include/stc/cdeq.h
+++ b/include/stc/cdeq.h
@@ -32,101 +32,101 @@
#endif
#undef _pop
-STC_API _cx_value* _cx_memb(_push_front)(_cx_self* self, i_key value);
-STC_API _cx_iter _cx_memb(_insert_n)(_cx_self* self, intptr_t idx, const _cx_value* arr, intptr_t n);
-STC_API _cx_iter _cx_memb(_insert_uninit)(_cx_self* self, intptr_t idx, intptr_t n);
-STC_API void _cx_memb(_erase_n)(_cx_self* self, intptr_t idx, intptr_t n);
+STC_API _cx_value* _cx_MEMB(_push_front)(_cx_Self* self, i_key value);
+STC_API _cx_iter _cx_MEMB(_insert_n)(_cx_Self* self, intptr_t idx, const _cx_value* arr, intptr_t n);
+STC_API _cx_iter _cx_MEMB(_insert_uninit)(_cx_Self* self, intptr_t idx, intptr_t n);
+STC_API void _cx_MEMB(_erase_n)(_cx_Self* self, intptr_t idx, intptr_t n);
STC_INLINE const _cx_value*
-_cx_memb(_at)(const _cx_self* self, intptr_t idx)
+_cx_MEMB(_at)(const _cx_Self* self, intptr_t idx)
{ return self->data + _cdeq_topos(self, idx); }
STC_INLINE _cx_value*
-_cx_memb(_at_mut)(_cx_self* self, intptr_t idx)
+_cx_MEMB(_at_mut)(_cx_Self* self, intptr_t idx)
{ return self->data + _cdeq_topos(self, idx); }
STC_INLINE _cx_value*
-_cx_memb(_push_back)(_cx_self* self, _cx_value val)
- { return _cx_memb(_push)(self, val); }
+_cx_MEMB(_push_back)(_cx_Self* self, _cx_value val)
+ { return _cx_MEMB(_push)(self, val); }
STC_INLINE void
-_cx_memb(_pop_back)(_cx_self* self) {
- assert(!_cx_memb(_empty)(self));
+_cx_MEMB(_pop_back)(_cx_Self* self) {
+ assert(!_cx_MEMB(_empty)(self));
self->end = (self->end - 1) & self->capmask;
i_keydrop((self->data + self->end));
}
-STC_INLINE _cx_value _cx_memb(_pull_back)(_cx_self* self) { // move back out of deq
- assert(!_cx_memb(_empty)(self));
+STC_INLINE _cx_value _cx_MEMB(_pull_back)(_cx_Self* self) { // move back out of deq
+ assert(!_cx_MEMB(_empty)(self));
self->end = (self->end - 1) & self->capmask;
return self->data[self->end];
}
STC_INLINE _cx_iter
-_cx_memb(_insert_at)(_cx_self* self, _cx_iter it, const _cx_value val) {
+_cx_MEMB(_insert_at)(_cx_Self* self, _cx_iter it, const _cx_value val) {
intptr_t idx = _cdeq_toidx(self, it.pos);
- return _cx_memb(_insert_n)(self, idx, &val, 1);
+ return _cx_MEMB(_insert_n)(self, idx, &val, 1);
}
STC_INLINE _cx_iter
-_cx_memb(_erase_at)(_cx_self* self, _cx_iter it) {
- _cx_memb(_erase_n)(self, _cdeq_toidx(self, it.pos), 1);
+_cx_MEMB(_erase_at)(_cx_Self* self, _cx_iter it) {
+ _cx_MEMB(_erase_n)(self, _cdeq_toidx(self, it.pos), 1);
if (it.pos == self->end) it.ref = NULL;
return it;
}
STC_INLINE _cx_iter
-_cx_memb(_erase_range)(_cx_self* self, _cx_iter it1, _cx_iter it2) {
+_cx_MEMB(_erase_range)(_cx_Self* self, _cx_iter it1, _cx_iter it2) {
intptr_t idx1 = _cdeq_toidx(self, it1.pos);
intptr_t idx2 = _cdeq_toidx(self, it2.pos);
- _cx_memb(_erase_n)(self, idx1, idx2 - idx1);
+ _cx_MEMB(_erase_n)(self, idx1, idx2 - idx1);
if (it1.pos == self->end) it1.ref = NULL;
return it1;
}
#if !defined i_no_emplace
STC_API _cx_iter
-_cx_memb(_emplace_n)(_cx_self* self, intptr_t idx, const _cx_raw* raw, intptr_t n);
+_cx_MEMB(_emplace_n)(_cx_Self* self, intptr_t idx, const _cx_raw* raw, intptr_t n);
STC_INLINE _cx_value*
-_cx_memb(_emplace_front)(_cx_self* self, const _cx_raw raw)
- { return _cx_memb(_push_front)(self, i_keyfrom(raw)); }
+_cx_MEMB(_emplace_front)(_cx_Self* self, const _cx_raw raw)
+ { return _cx_MEMB(_push_front)(self, i_keyfrom(raw)); }
STC_INLINE _cx_value*
-_cx_memb(_emplace_back)(_cx_self* self, const _cx_raw raw)
- { return _cx_memb(_push)(self, i_keyfrom(raw)); }
+_cx_MEMB(_emplace_back)(_cx_Self* self, const _cx_raw raw)
+ { return _cx_MEMB(_push)(self, i_keyfrom(raw)); }
STC_INLINE _cx_iter
-_cx_memb(_emplace_at)(_cx_self* self, _cx_iter it, const _cx_raw raw)
- { return _cx_memb(_insert_at)(self, it, i_keyfrom(raw)); }
+_cx_MEMB(_emplace_at)(_cx_Self* self, _cx_iter it, const _cx_raw raw)
+ { return _cx_MEMB(_insert_at)(self, it, i_keyfrom(raw)); }
#endif
#if defined _i_has_cmp || defined _i_has_eq
-STC_API _cx_iter _cx_memb(_find_in)(_cx_iter p1, _cx_iter p2, _cx_raw raw);
+STC_API _cx_iter _cx_MEMB(_find_in)(_cx_iter p1, _cx_iter p2, _cx_raw raw);
STC_INLINE _cx_iter
-_cx_memb(_find)(const _cx_self* self, _cx_raw raw) {
- return _cx_memb(_find_in)(_cx_memb(_begin)(self), _cx_memb(_end)(self), raw);
+_cx_MEMB(_find)(const _cx_Self* self, _cx_raw raw) {
+ return _cx_MEMB(_find_in)(_cx_MEMB(_begin)(self), _cx_MEMB(_end)(self), raw);
}
STC_INLINE const _cx_value*
-_cx_memb(_get)(const _cx_self* self, _cx_raw raw) {
- return _cx_memb(_find_in)(_cx_memb(_begin)(self), _cx_memb(_end)(self), raw).ref;
+_cx_MEMB(_get)(const _cx_Self* self, _cx_raw raw) {
+ return _cx_MEMB(_find_in)(_cx_MEMB(_begin)(self), _cx_MEMB(_end)(self), raw).ref;
}
STC_INLINE _cx_value*
-_cx_memb(_get_mut)(_cx_self* self, _cx_raw raw)
- { return (_cx_value *) _cx_memb(_get)(self, raw); }
+_cx_MEMB(_get_mut)(_cx_Self* self, _cx_raw raw)
+ { return (_cx_value *) _cx_MEMB(_get)(self, raw); }
#endif
/* -------------------------- IMPLEMENTATION ------------------------- */
#if defined(i_implement) || defined(i_static)
STC_DEF _cx_value*
-_cx_memb(_push_front)(_cx_self* self, i_key value) {
+_cx_MEMB(_push_front)(_cx_Self* self, i_key value) {
intptr_t start = (self->start - 1) & self->capmask;
if (start == self->end) { // full
- _cx_memb(_reserve)(self, self->capmask + 3); // => 2x expand
+ _cx_MEMB(_reserve)(self, self->capmask + 3); // => 2x expand
start = (self->start - 1) & self->capmask;
}
_cx_value *v = self->data + start;
@@ -136,24 +136,24 @@ _cx_memb(_push_front)(_cx_self* self, i_key value) {
}
STC_DEF void
-_cx_memb(_erase_n)(_cx_self* self, const intptr_t idx, const intptr_t n) {
- const intptr_t len = _cx_memb(_size)(self);
+_cx_MEMB(_erase_n)(_cx_Self* self, const intptr_t idx, const intptr_t n) {
+ const intptr_t len = _cx_MEMB(_size)(self);
for (intptr_t i = idx + n - 1; i >= idx; --i)
- i_keydrop(_cx_memb(_at_mut)(self, i));
+ i_keydrop(_cx_MEMB(_at_mut)(self, i));
for (intptr_t i = idx, j = i + n; j < len; ++i, ++j)
- *_cx_memb(_at_mut)(self, i) = *_cx_memb(_at)(self, j);
+ *_cx_MEMB(_at_mut)(self, i) = *_cx_MEMB(_at)(self, j);
self->end = (self->end - n) & self->capmask;
}
STC_DEF _cx_iter
-_cx_memb(_insert_uninit)(_cx_self* self, const intptr_t idx, const intptr_t n) {
- const intptr_t len = _cx_memb(_size)(self);
+_cx_MEMB(_insert_uninit)(_cx_Self* self, const intptr_t idx, const intptr_t n) {
+ const intptr_t len = _cx_MEMB(_size)(self);
_cx_iter it = {._s=self};
if (len + n > self->capmask)
- if (!_cx_memb(_reserve)(self, len + n))
+ if (!_cx_MEMB(_reserve)(self, len + n))
return it;
for (intptr_t i = len - 1, j = i + n; i >= idx; --i, --j)
- *_cx_memb(_at_mut)(self, j) = *_cx_memb(_at)(self, i);
+ *_cx_MEMB(_at_mut)(self, j) = *_cx_MEMB(_at)(self, i);
self->end = (self->end + n) & self->capmask;
it.pos = _cdeq_topos(self, idx);
@@ -162,27 +162,27 @@ _cx_memb(_insert_uninit)(_cx_self* self, const intptr_t idx, const intptr_t n) {
}
STC_DEF _cx_iter
-_cx_memb(_insert_n)(_cx_self* self, const intptr_t idx, const _cx_value* arr, const intptr_t n) {
- _cx_iter it = _cx_memb(_insert_uninit)(self, idx, n);
+_cx_MEMB(_insert_n)(_cx_Self* self, const intptr_t idx, const _cx_value* arr, const intptr_t n) {
+ _cx_iter it = _cx_MEMB(_insert_uninit)(self, idx, n);
for (intptr_t i = idx, j = 0; j < n; ++i, ++j)
- *_cx_memb(_at_mut)(self, i) = arr[j];
+ *_cx_MEMB(_at_mut)(self, i) = arr[j];
return it;
}
#if !defined i_no_emplace
STC_DEF _cx_iter
-_cx_memb(_emplace_n)(_cx_self* self, const intptr_t idx, const _cx_raw* raw, const intptr_t n) {
- _cx_iter it = _cx_memb(_insert_uninit)(self, idx, n);
+_cx_MEMB(_emplace_n)(_cx_Self* self, const intptr_t idx, const _cx_raw* raw, const intptr_t n) {
+ _cx_iter it = _cx_MEMB(_insert_uninit)(self, idx, n);
for (intptr_t i = idx, j = 0; j < n; ++i, ++j)
- *_cx_memb(_at_mut)(self, i) = i_keyfrom(raw[j]);
+ *_cx_MEMB(_at_mut)(self, i) = i_keyfrom(raw[j]);
return it;
}
#endif
#if defined _i_has_cmp || defined _i_has_eq
STC_DEF _cx_iter
-_cx_memb(_find_in)(_cx_iter i1, _cx_iter i2, _cx_raw raw) {
- for (; i1.pos != i2.pos; _cx_memb(_next)(&i1)) {
+_cx_MEMB(_find_in)(_cx_iter i1, _cx_iter i2, _cx_raw raw) {
+ for (; i1.pos != i2.pos; _cx_MEMB(_next)(&i1)) {
const _cx_raw r = i_keyto(i1.ref);
if (i_eq((&raw), (&r)))
break;