mirror of
https://github.com/msgpack/msgpack-c.git
synced 2025-10-17 03:03:24 +02:00
Merge pull request #676 from redboltz/remove_object_pack_recursion
Removed recursion from msgpack::object packing and stringize.
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -83,6 +83,13 @@ bool operator!=(const T& y, const msgpack::object& x);
|
||||
|
||||
void operator<< (msgpack::object& o, const msgpack_object& v);
|
||||
|
||||
class object_parser;
|
||||
|
||||
template <typename Stream>
|
||||
struct object_pack_visitor;
|
||||
|
||||
struct object_stringize_visitor;
|
||||
|
||||
// obsolete
|
||||
template <typename T>
|
||||
MSGPACK_DEPRECATED("please use member function version of object::convert(T&)")
|
||||
@@ -104,7 +111,7 @@ msgpack::packer<Stream>& operator<< (msgpack::packer<Stream>& o, const msgpack::
|
||||
template <typename Stream>
|
||||
msgpack::packer<Stream>& operator<< (msgpack::packer<Stream>& o, const msgpack::object::with_zone& v);
|
||||
|
||||
std::ostream& operator<< (std::ostream& s, const msgpack::object& o);
|
||||
std::ostream& operator<< (std::ostream& s, const msgpack::object& v);
|
||||
|
||||
/// @cond
|
||||
} // MSGPACK_API_VERSION_NAMESPACE(v1)
|
||||
|
@@ -37,6 +37,10 @@ using v1::detail::packer_serializer;
|
||||
|
||||
} // namespace detail
|
||||
|
||||
using v1::object_parser;
|
||||
using v1::object_pack_visitor;
|
||||
using v1::object_stringize_visitor;
|
||||
|
||||
using v1::operator==;
|
||||
using v1::operator!=;
|
||||
|
||||
|
@@ -37,6 +37,10 @@ using v2::detail::packer_serializer;
|
||||
|
||||
} // namespace detail
|
||||
|
||||
using v2::object_parser;
|
||||
using v2::object_pack_visitor;
|
||||
using v2::object_stringize_visitor;
|
||||
|
||||
using v2::operator==;
|
||||
using v2::operator!=;
|
||||
|
||||
|
@@ -17,7 +17,7 @@ TEST(json, basic_elements)
|
||||
msgpack::object o(t1, z);
|
||||
std::stringstream ss;
|
||||
ss << o;
|
||||
EXPECT_EQ(ss.str(), "[12, -34, 1.23, -4.56, true, false, \"ABC\", {\"Hello\":789, \"World\":-789}]");
|
||||
EXPECT_EQ(ss.str(), "[12,-34,1.23,-4.56,true,false,\"ABC\",{\"Hello\":789,\"World\":-789}]");
|
||||
}
|
||||
|
||||
TEST(json, escape)
|
||||
|
Reference in New Issue
Block a user