diff options
author | frsyuki <frsyuki@users.sourceforge.jp> | 2009-08-10 22:16:44 +0900 |
---|---|---|
committer | frsyuki <frsyuki@users.sourceforge.jp> | 2009-08-10 22:16:44 +0900 |
commit | 92952f656691f5907e00c0a5ab45e3423d5429cb (patch) | |
tree | 8899eeb45be46c706623fdf5c52f504022313b74 /cpp | |
parent | a62a5d6c69837e474f9cc7260017de3fe61a92eb (diff) | |
download | msgpack-python-92952f656691f5907e00c0a5ab45e3423d5429cb.tar.gz |
c++: fix object >> std::string
Diffstat (limited to 'cpp')
-rw-r--r-- | cpp/type/bool.hpp | 1 | ||||
-rw-r--r-- | cpp/type/set.hpp | 1 | ||||
-rw-r--r-- | cpp/type/string.hpp | 5 |
3 files changed, 2 insertions, 5 deletions
diff --git a/cpp/type/bool.hpp b/cpp/type/bool.hpp index f3ac6fa..b945d85 100644 --- a/cpp/type/bool.hpp +++ b/cpp/type/bool.hpp @@ -31,7 +31,6 @@ inline bool& operator>> (object o, bool& v) return v; } - template <typename Stream> inline packer<Stream>& operator<< (packer<Stream>& o, const bool& v) { diff --git a/cpp/type/set.hpp b/cpp/type/set.hpp index 3f1920a..11db2b3 100644 --- a/cpp/type/set.hpp +++ b/cpp/type/set.hpp @@ -37,7 +37,6 @@ inline std::set<T>& operator>> (object o, std::set<T>& v) return v; } - template <typename Stream, typename T> inline packer<Stream>& operator<< (packer<Stream>& o, const std::set<T>& v) { diff --git a/cpp/type/string.hpp b/cpp/type/string.hpp index 2a23058..a085d53 100644 --- a/cpp/type/string.hpp +++ b/cpp/type/string.hpp @@ -26,9 +26,8 @@ namespace msgpack { inline std::string& operator>> (object o, std::string& v) { - type::raw_ref r; - o >> r; - v.assign(r.ptr, r.size); + if(o.type != type::RAW) { throw type_error(); } + v.assign(o.via.raw.ptr, o.via.raw.size); return v; } |