Mapped std::stirng to STR instead of BIN for benchmark.

This commit is contained in:
Takatoshi Kondo
2014-03-26 16:40:32 +09:00
parent 1320863cb3
commit 378f6afccd

View File

@@ -43,25 +43,25 @@ inline std::string& operator>> (object const& o, std::string& v)
template <typename Stream> template <typename Stream>
inline packer<Stream>& operator<< (packer<Stream>& o, const std::string& v) inline packer<Stream>& operator<< (packer<Stream>& o, const std::string& v)
{ {
o.pack_bin(v.size()); o.pack_str(v.size());
o.pack_bin_body(v.data(), v.size()); o.pack_str_body(v.data(), v.size());
return o; return o;
} }
inline void operator<< (object::with_zone& o, const std::string& v) inline void operator<< (object::with_zone& o, const std::string& v)
{ {
o.type = type::BIN; o.type = type::STR;
char* ptr = (char*)o.zone->allocate_align(v.size()); char* ptr = (char*)o.zone->allocate_align(v.size());
o.via.bin.ptr = ptr; o.via.str.ptr = ptr;
o.via.bin.size = (uint32_t)v.size(); o.via.str.size = (uint32_t)v.size();
memcpy(ptr, v.data(), v.size()); memcpy(ptr, v.data(), v.size());
} }
inline void operator<< (object& o, const std::string& v) inline void operator<< (object& o, const std::string& v)
{ {
o.type = type::BIN; o.type = type::STR;
o.via.bin.ptr = v.data(); o.via.str.ptr = v.data();
o.via.bin.size = (uint32_t)v.size(); o.via.str.size = (uint32_t)v.size();
} }