summaryrefslogtreecommitdiff
path: root/src/runtime/c/gu
diff options
context:
space:
mode:
authorkr.angelov <kr.angelov@gmail.com>2013-02-26 09:48:09 +0000
committerkr.angelov <kr.angelov@gmail.com>2013-02-26 09:48:09 +0000
commit026c1989748aa9e1ea4c05659c9921471ab65ecb (patch)
treeae0969f5cba52d2a9f506dfb62fde35bb1940ae7 /src/runtime/c/gu
parent30db41107560bfbf34b932007759143db9cc1f52 (diff)
added gu_buf_flush in seq.c which removes all elements from a buffer
Diffstat (limited to 'src/runtime/c/gu')
-rw-r--r--src/runtime/c/gu/seq.c6
-rw-r--r--src/runtime/c/gu/seq.h3
2 files changed, 9 insertions, 0 deletions
diff --git a/src/runtime/c/gu/seq.c b/src/runtime/c/gu/seq.c
index d994d5990..321d70c5e 100644
--- a/src/runtime/c/gu/seq.c
+++ b/src/runtime/c/gu/seq.c
@@ -151,6 +151,12 @@ gu_buf_trim(GuBuf* buf)
}
void
+gu_buf_flush(GuBuf* buf)
+{
+ gu_buf_set_length(buf, 0);
+}
+
+void
gu_buf_pop_n(GuBuf* buf, size_t n_elems, void* data_out)
{
const void* p = gu_buf_trim_n(buf, n_elems);
diff --git a/src/runtime/c/gu/seq.h b/src/runtime/c/gu/seq.h
index 52b2bfc7e..b79f6e8bf 100644
--- a/src/runtime/c/gu/seq.h
+++ b/src/runtime/c/gu/seq.h
@@ -121,6 +121,9 @@ gu_buf_trim_n(GuBuf* buf, size_t n_elems);
const void*
gu_buf_trim(GuBuf* buf);
+void
+gu_buf_flush(GuBuf* buf);
+
#define gu_buf_pop(BUF, T) \
(*(T*)gu_buf_trim(BUF))