aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEvan Balster <evan@interactopia.com>2021-07-06 15:39:34 -0700
committerGitHub <noreply@github.com>2021-07-06 15:39:34 -0700
commit39e61682e71872530afde44e4e304a0f49ab932a (patch)
tree53f7c71369a0d7655446bafb04936cec3ecf83e8 /src
parentf37a72f3697125092baa510f26d2e2f9f0b854e0 (diff)
downloadnng-39e61682e71872530afde44e4e304a0f49ab932a.tar.gz
nng-39e61682e71872530afde44e4e304a0f49ab932a.tar.bz2
nng-39e61682e71872530afde44e4e304a0f49ab932a.zip
Add & document msg_capacity, msg_reserve (#1458)
* Add & document msg_capacity, msg_reserve * reserve/capacity code style * Documentation references to reserve/capacity
Diffstat (limited to 'src')
-rw-r--r--src/core/message.c12
-rw-r--r--src/core/message.h2
-rw-r--r--src/nng.c12
3 files changed, 26 insertions, 0 deletions
diff --git a/src/core/message.c b/src/core/message.c
index 824fc079..52065bdd 100644
--- a/src/core/message.c
+++ b/src/core/message.c
@@ -456,6 +456,18 @@ nni_msg_realloc(nni_msg *m, size_t sz)
return (0);
}
+int
+nni_msg_reserve(nni_msg *m, size_t capacity)
+{
+ return (nni_chunk_grow(&m->m_body, capacity, 0));
+}
+
+size_t
+nni_msg_capacity(nni_msg *m)
+{
+ return ((size_t) ((m->m_body.ch_buf + m->m_body.ch_cap) - m->m_body.ch_ptr));
+}
+
void *
nni_msg_header(nni_msg *m)
{
diff --git a/src/core/message.h b/src/core/message.h
index 6400fd55..7e35ba75 100644
--- a/src/core/message.h
+++ b/src/core/message.h
@@ -17,6 +17,8 @@
extern int nni_msg_alloc(nni_msg **, size_t);
extern void nni_msg_free(nni_msg *);
extern int nni_msg_realloc(nni_msg *, size_t);
+extern int nni_msg_reserve(nni_msg *, size_t);
+extern size_t nni_msg_capacity(nni_msg *);
extern int nni_msg_dup(nni_msg **, const nni_msg *);
extern void * nni_msg_header(nni_msg *);
extern size_t nni_msg_header_len(const nni_msg *);
diff --git a/src/nng.c b/src/nng.c
index 3a3c3c5c..1ccc1386 100644
--- a/src/nng.c
+++ b/src/nng.c
@@ -1325,6 +1325,18 @@ nng_msg_free(nng_msg *msg)
nni_msg_free(msg);
}
+int
+nng_msg_reserve(nng_msg *msg, size_t capacity)
+{
+ return (nni_msg_reserve(msg, capacity));
+}
+
+size_t
+nng_msg_capacity(nng_msg *msg)
+{
+ return (nni_msg_capacity(msg));
+}
+
void *
nng_msg_body(nng_msg *msg)
{