diff options
| author | Evan Balster <evan@interactopia.com> | 2021-07-06 15:39:34 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-07-06 15:39:34 -0700 |
| commit | 39e61682e71872530afde44e4e304a0f49ab932a (patch) | |
| tree | 53f7c71369a0d7655446bafb04936cec3ecf83e8 /src | |
| parent | f37a72f3697125092baa510f26d2e2f9f0b854e0 (diff) | |
| download | nng-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.c | 12 | ||||
| -rw-r--r-- | src/core/message.h | 2 | ||||
| -rw-r--r-- | src/nng.c | 12 |
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 *); @@ -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) { |
