summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authortylov <[email protected]>2023-07-27 12:50:11 +0200
committertylov <[email protected]>2023-07-27 12:50:11 +0200
commitc5e7742523c09520f1186458a574ef816f089821 (patch)
treeb7213977b586b2ae41eb592cd5d9863b7e58705a
parentd7fba27af452de2d709767e615fa2e90d6b3a391 (diff)
downloadSTC-modified-c5e7742523c09520f1186458a574ef816f089821.tar.gz
STC-modified-c5e7742523c09520f1186458a574ef816f089821.zip
Added docs for "pull" functions.
-rw-r--r--docs/cdeq_api.md2
-rw-r--r--docs/cqueue_api.md1
-rw-r--r--docs/cstack_api.md3
-rw-r--r--docs/cvec_api.md3
-rw-r--r--include/stc/cdeq.h1
5 files changed, 8 insertions, 2 deletions
diff --git a/docs/cdeq_api.md b/docs/cdeq_api.md
index 38de7f66..c544f213 100644
--- a/docs/cdeq_api.md
+++ b/docs/cdeq_api.md
@@ -56,12 +56,14 @@ cdeq_X_value* cdeq_X_back(const cdeq_X* self);
cdeq_X_value* cdeq_X_push_front(cdeq_X* self, i_key value);
cdeq_X_value* cdeq_X_emplace_front(cdeq_X* self, i_keyraw raw);
void cdeq_X_pop_front(cdeq_X* self);
+cdeq_X_value cdeq_X_pull_front(cdeq_X* self); // move out front element
cdeq_X_value* cdeq_X_push_back(cdeq_X* self, i_key value);
cdeq_X_value* cdeq_X_push(cdeq_X* self, i_key value); // alias for push_back()
cdeq_X_value* cdeq_X_emplace_back(cdeq_X* self, i_keyraw raw);
cdeq_X_value* cdeq_X_emplace(cdeq_X* self, i_keyraw raw); // alias for emplace_back()
void cdeq_X_pop_back(cdeq_X* self);
+cdeq_X_value cdeq_X_pull_back(cdeq_X* self); // move out last element
cdeq_X_iter cdeq_X_insert_n(cdeq_X* self, intptr_t idx, const i_key[] arr, intptr_t n); // move values
cdeq_X_iter cdeq_X_insert_at(cdeq_X* self, cdeq_X_iter it, i_key value); // move value
diff --git a/docs/cqueue_api.md b/docs/cqueue_api.md
index 1834baf9..ba4411b7 100644
--- a/docs/cqueue_api.md
+++ b/docs/cqueue_api.md
@@ -45,6 +45,7 @@ cqueue_X_value* cqueue_X_back(const cqueue_X* self);
cqueue_X_value* cqueue_X_push(cqueue_X* self, i_key value);
cqueue_X_value* cqueue_X_emplace(cqueue_X* self, i_keyraw raw);
void cqueue_X_pop(cqueue_X* self);
+cqueue_X_value cqueue_X_pull(cqueue_X* self); // move out last element
cqueue_X_iter cqueue_X_begin(const cqueue_X* self);
cqueue_X_iter cqueue_X_end(const cqueue_X* self);
diff --git a/docs/cstack_api.md b/docs/cstack_api.md
index fb629392..da0bc954 100644
--- a/docs/cstack_api.md
+++ b/docs/cstack_api.md
@@ -48,7 +48,8 @@ i_key* cstack_X_at_mut(cstack_X* self, intptr_t idx);
i_key* cstack_X_push(cstack_X* self, i_key value);
i_key* cstack_X_emplace(cstack_X* self, i_keyraw raw);
-void cstack_X_pop(cstack_X* self);
+void cstack_X_pop(cstack_X* self); // destroy last element
+cstack_X_value cstack_X_pull(cstack_X* self); // move out last element
cstack_X_iter cstack_X_begin(const cstack_X* self);
cstack_X_iter cstack_X_end(const cstack_X* self);
diff --git a/docs/cvec_api.md b/docs/cvec_api.md
index 9cba74b5..3f827df6 100644
--- a/docs/cvec_api.md
+++ b/docs/cvec_api.md
@@ -68,8 +68,9 @@ cvec_X_value* cvec_X_emplace(cvec_X* self, i_keyraw raw);
cvec_X_value* cvec_X_push_back(cvec_X* self, i_key value); // alias for push
cvec_X_value* cvec_X_emplace_back(cvec_X* self, i_keyraw raw); // alias for emplace
-void cvec_X_pop(cvec_X* self);
+void cvec_X_pop(cvec_X* self); // destroy last element
void cvec_X_pop_back(cvec_X* self); // alias for pop
+cvec_X_value cvec_X_pull(cvec_X* self); // move out last element
cvec_X_iter cvec_X_insert_n(cvec_X* self, intptr_t idx, const i_key arr[], intptr_t n); // move values
cvec_X_iter cvec_X_insert_at(cvec_X* self, cvec_X_iter it, i_key value); // move value
diff --git a/include/stc/cdeq.h b/include/stc/cdeq.h
index 9892f6f1..cde2928c 100644
--- a/include/stc/cdeq.h
+++ b/include/stc/cdeq.h
@@ -34,6 +34,7 @@
#define _pull _pull_front
#include "priv/cqueue_hdr.h"
#undef _pop
+#undef _pull
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);