mirror of
https://github.com/msgpack/msgpack-c.git
synced 2025-03-22 16:33:49 +01:00
Reduce memory footprint.
This commit is contained in:
parent
3fd28d0792
commit
f61b282886
@ -23,9 +23,7 @@
|
||||
#define MSGPACK_MAX_STACK_SIZE (1024)
|
||||
#include "unpack_define.h"
|
||||
|
||||
using namespace std;
|
||||
|
||||
typedef map<string, PyObject*> str_cach_t;
|
||||
typedef std::map<std::string, PyObject*> str_cach_t;
|
||||
struct unpack_user {
|
||||
str_cach_t strcache;
|
||||
|
||||
@ -127,7 +125,7 @@ static inline int template_callback_map_item(unpack_user* u, msgpack_unpack_obje
|
||||
static inline int template_callback_raw(unpack_user* u, const char* b, const char* p, unsigned int l, msgpack_unpack_object* o)
|
||||
{
|
||||
if (l < 16) {
|
||||
string s(p, l);
|
||||
std::string s(p, l);
|
||||
str_cach_t ::iterator it = u->strcache.find(s);
|
||||
if (it != u->strcache.end()) {
|
||||
*o = it->second;
|
||||
|
@ -43,10 +43,13 @@
|
||||
|
||||
msgpack_unpack_struct_decl(_stack) {
|
||||
msgpack_unpack_object obj;
|
||||
size_t curr;
|
||||
size_t count;
|
||||
unsigned int ct;
|
||||
msgpack_unpack_object map_key;
|
||||
|
||||
union {
|
||||
size_t curr;
|
||||
msgpack_unpack_object map_key;
|
||||
};
|
||||
};
|
||||
|
||||
msgpack_unpack_struct_decl(_context) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user