summaryrefslogtreecommitdiff
path: root/cpp/src/msgpack/unpack.hpp
diff options
context:
space:
mode:
authorUENISHI Kota <kuenishi+github@gmail.com>2010-06-03 00:14:19 +0900
committerUENISHI Kota <kuenishi+github@gmail.com>2010-06-03 00:14:19 +0900
commit8ecaf7ad4ce4185e81fae775332282ed551fa886 (patch)
tree68b7fb5c875f5620033ac8fa4e046bfdd51f78d0 /cpp/src/msgpack/unpack.hpp
parent49f3872d047624b1995b8c60edec8bad35429fd3 (diff)
parentd4049fe593ae4465e7a258d138c2166571a0f1a7 (diff)
downloadmsgpack-python-8ecaf7ad4ce4185e81fae775332282ed551fa886.tar.gz
Merge branch 'master' of ssh://github.com/msgpack/msgpack
Diffstat (limited to 'cpp/src/msgpack/unpack.hpp')
-rw-r--r--cpp/src/msgpack/unpack.hpp15
1 files changed, 8 insertions, 7 deletions
diff --git a/cpp/src/msgpack/unpack.hpp b/cpp/src/msgpack/unpack.hpp
index 56ce0f6..7b45017 100644
--- a/cpp/src/msgpack/unpack.hpp
+++ b/cpp/src/msgpack/unpack.hpp
@@ -24,8 +24,9 @@
#include <memory>
#include <stdexcept>
+// backward compatibility
#ifndef MSGPACK_UNPACKER_DEFAULT_INITIAL_BUFFER_SIZE
-#define MSGPACK_UNPACKER_DEFAULT_INITIAL_BUFFER_SIZE (32*1024)
+#define MSGPACK_UNPACKER_DEFAULT_INITIAL_BUFFER_SIZE MSGPACK_UNPACKER_INIT_BUFFER_SIZE
#endif
namespace msgpack {
@@ -64,12 +65,12 @@ private:
class unpacker : public msgpack_unpacker {
public:
- unpacker(size_t init_buffer_size = MSGPACK_UNPACKER_DEFAULT_INITIAL_BUFFER_SIZE);
+ unpacker(size_t init_buffer_size = MSGPACK_UNPACKER_INIT_BUFFER_SIZE);
~unpacker();
public:
/*! 1. reserve buffer. at least `size' bytes of capacity will be ready */
- void reserve_buffer(size_t size);
+ void reserve_buffer(size_t size = MSGPACK_UNPACKER_RESERVE_SIZE);
/*! 2. read data to the buffer() up to buffer_capacity() bytes */
char* buffer();
@@ -160,7 +161,7 @@ private:
};
-static bool unpack(unpacked* result,
+static void unpack(unpacked* result,
const char* data, size_t len, size_t* offset = NULL);
@@ -312,7 +313,7 @@ inline void unpacker::remove_nonparsed_buffer()
}
-inline bool unpack(unpacked* result,
+inline void unpack(unpacked* result,
const char* data, size_t len, size_t* offset)
{
msgpack::object obj;
@@ -326,12 +327,12 @@ inline bool unpack(unpacked* result,
case UNPACK_SUCCESS:
result->get() = obj;
result->zone() = z;
- return false;
+ return;
case UNPACK_EXTRA_BYTES:
result->get() = obj;
result->zone() = z;
- return true;
+ return;
case UNPACK_CONTINUE:
throw unpack_error("insufficient bytes");