diff --git a/example/cpp03/reuse_zone.cpp b/example/cpp03/reuse_zone.cpp index 57eaed96..127d8ccc 100644 --- a/example/cpp03/reuse_zone.cpp +++ b/example/cpp03/reuse_zone.cpp @@ -40,8 +40,11 @@ int main() { // msgpack array is constructed on z. msgpack::object obj = msgpack::unpack(z, ss.str().data(), ss.str().size(), offset); + std::cout << obj << std::endl; assert(obj.as >() == v); // msgpack str is constructed on z. - assert(msgpack::unpack(z, ss.str().data(), ss.str().size(), offset).as() == s); + std::string const& str = msgpack::unpack(z, ss.str().data(), ss.str().size(), offset).as(); + std::cout << str << std::endl; + assert(str == s); } diff --git a/example/cpp11/container.cpp b/example/cpp11/container.cpp index 770b9996..4a4ea69b 100644 --- a/example/cpp11/container.cpp +++ b/example/cpp11/container.cpp @@ -35,9 +35,9 @@ void array() { msgpack::unpacked und = msgpack::unpack(ss.str().data(), ss.str().size()); msgpack::object obj = und.get(); - std::array const& new_a = obj.as>(); - assert(new_a == a); + std::cout << obj << std::endl; + assert((obj.as>()) == a); } void tuple() { @@ -47,6 +47,8 @@ void tuple() { auto und = msgpack::unpack(ss.str().data(), ss.str().size()); auto obj = und.get(); + + std::cout << obj << std::endl; assert(obj.as() == t); } @@ -56,7 +58,10 @@ void unordered_map() { msgpack::pack(ss, m); auto und = msgpack::unpack(ss.str().data(), ss.str().size()); - assert(und.get().as() == m); + msgpack::object obj = und.get(); + + std::cout << obj << std::endl; + assert(obj.as() == m); } void unordered_set() { @@ -64,7 +69,11 @@ void unordered_set() { std::stringstream ss; msgpack::pack(ss, s); - assert(msgpack::unpack(ss.str().data(), ss.str().size()).get().as() == s); + auto und = msgpack::unpack(ss.str().data(), ss.str().size()); + auto obj = und.get(); + + std::cout << obj << std::endl; + assert(obj.as() == s); } void forward_list() { @@ -73,7 +82,11 @@ void forward_list() { std::stringstream ss; msgpack::pack(ss, f); - assert(msgpack::unpack(ss.str().data(), ss.str().size()).get().as() == f); + auto und = msgpack::unpack(ss.str().data(), ss.str().size()); + auto obj = und.get(); + + std::cout << obj << std::endl; + assert(obj.as() == f); } void combi() { @@ -91,11 +104,47 @@ void combi() { msgpack::pack(ss, f); std::size_t offset = 0; - assert(msgpack::unpack(ss.str().data(), ss.str().size(), offset).get().as() == a); - assert(msgpack::unpack(ss.str().data(), ss.str().size(), offset).get().as() == t); - assert(msgpack::unpack(ss.str().data(), ss.str().size(), offset).get().as() == m); - assert(msgpack::unpack(ss.str().data(), ss.str().size(), offset).get().as() == s); - assert(msgpack::unpack(ss.str().data(), ss.str().size(), offset).get().as() == f); + std::cout << "offset: " << offset << std::endl; + { + auto und = msgpack::unpack(ss.str().data(), ss.str().size(), offset); + auto obj = und.get(); + + std::cout << obj << std::endl; + assert(obj.as() == a); + } + std::cout << "offset: " << offset << std::endl; + { + auto und = msgpack::unpack(ss.str().data(), ss.str().size(), offset); + auto obj = und.get(); + + std::cout << obj << std::endl; + assert(obj.as() == t); + } + std::cout << "offset: " << offset << std::endl; + { + auto und = msgpack::unpack(ss.str().data(), ss.str().size(), offset); + auto obj = und.get(); + + std::cout << obj << std::endl; + assert(obj.as() == m); + } + std::cout << "offset: " << offset << std::endl; + { + auto und = msgpack::unpack(ss.str().data(), ss.str().size(), offset); + auto obj = und.get(); + + std::cout << obj << std::endl; + assert(obj.as() == s); + } + std::cout << "offset: " << offset << std::endl; + { + auto und = msgpack::unpack(ss.str().data(), ss.str().size(), offset); + auto obj = und.get(); + + std::cout << obj << std::endl; + assert(obj.as() == f); + } + std::cout << "offset: " << offset << std::endl; } int main() { diff --git a/example/cpp11/non_def_con_class.cpp b/example/cpp11/non_def_con_class.cpp index a7150908..4772eecc 100644 --- a/example/cpp11/non_def_con_class.cpp +++ b/example/cpp11/non_def_con_class.cpp @@ -17,6 +17,7 @@ #include #include +#include #include @@ -53,6 +54,6 @@ int main() { my m1(42); msgpack::zone z; msgpack::object obj(m1, z); - auto m2 = obj.as(); - assert(m1.a == m2.a); + std::cout << obj << std::endl; + assert(m1.a == obj.as().a); }