mirror of
https://github.com/msgpack/msgpack-c.git
synced 2025-03-19 13:02:13 +01:00
c: msgpack_unpacker_buffered_size; c++: unpacker::buffered_size
This commit is contained in:
parent
a89dfc70b9
commit
8893523776
@ -46,6 +46,7 @@ void msgpack_unpacker_destroy(msgpack_unpacker* mpac);
|
||||
msgpack_unpacker* msgpack_unpacker_new(size_t initial_buffer_size);
|
||||
void msgpack_unpacker_free(msgpack_unpacker* mpac);
|
||||
|
||||
static inline size_t msgpack_unpacker_buffered_size(const msgpack_unpacker* mpac);
|
||||
static inline bool msgpack_unpacker_reserve_buffer(msgpack_unpacker* mpac, size_t size);
|
||||
static inline char* msgpack_unpacker_buffer(msgpack_unpacker* mpac);
|
||||
static inline size_t msgpack_unpacker_buffer_capacity(const msgpack_unpacker* mpac);
|
||||
@ -77,6 +78,11 @@ bool msgpack_unpacker_flush_zone(msgpack_unpacker* mpac);
|
||||
|
||||
bool msgpack_unpacker_expand_buffer(msgpack_unpacker* mpac, size_t size);
|
||||
|
||||
size_t msgpack_unpacker_buffered_size(const msgpack_unpacker* mpac)
|
||||
{
|
||||
return mpac->used;
|
||||
}
|
||||
|
||||
bool msgpack_unpacker_reserve_buffer(msgpack_unpacker* mpac, size_t size)
|
||||
{
|
||||
if(mpac->free >= size) { return true; }
|
||||
|
@ -43,6 +43,9 @@ public:
|
||||
~unpacker();
|
||||
|
||||
public:
|
||||
/*! 0. check if the buffered size is not exceed the assumption. */
|
||||
size_t buffered_size() const;
|
||||
|
||||
/*! 1. reserve buffer. at least `size' bytes of capacity will be ready */
|
||||
void reserve_buffer(size_t size);
|
||||
|
||||
@ -154,6 +157,12 @@ inline unpacker::~unpacker()
|
||||
msgpack_unpacker_destroy(this);
|
||||
}
|
||||
|
||||
|
||||
inline size_t unpacker::buffered_size() const
|
||||
{
|
||||
return msgpack_unpacker_buffered_size(this);
|
||||
}
|
||||
|
||||
inline void unpacker::reserve_buffer(size_t size)
|
||||
{
|
||||
if(!msgpack_unpacker_reserve_buffer(this, size)) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user