Skip to content

Commit a83e43a

Browse files
committed
Merge pull request #448 from redboltz/replace_unpacked_with_object_handle
Replaced msgpack::unpacked with msgpack::object_handle.
2 parents 8b1632d + 1bfcf55 commit a83e43a

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+2429
-2431
lines changed

QUICKSTART-CPP.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,11 @@ int main(void) {
3131
msgpack::pack(sbuf, vec);
3232

3333
// deserialize it.
34-
msgpack::unpacked msg;
35-
msgpack::unpack(&msg, sbuf.data(), sbuf.size());
34+
msgpack::object_handle oh =
35+
msgpack::unpack(sbuf.data(), sbuf.size());
3636

3737
// print the deserialized object.
38-
msgpack::object obj = msg.get();
38+
msgpack::object obj = oh.get();
3939
std::cout << obj << std::endl; //=> ["Hello", "MessagePack"]
4040

4141
// convert it into statically typed object.
@@ -79,9 +79,9 @@ int main(void) {
7979
pac.buffer_consumed(buffer.size());
8080
8181
// now starts streaming deserialization.
82-
msgpack::unpacked result;
83-
while(pac.next(&result)) {
84-
std::cout << result.get() << std::endl;
82+
msgpack::object_handle oh;
83+
while(pac.next(&oh)) {
84+
std::cout << oh.get() << std::endl;
8585
}
8686
8787
// results:
@@ -151,10 +151,10 @@ int main(void) {
151151
msgpack::sbuffer sbuf;
152152
msgpack::pack(sbuf, vec);
153153
154-
msgpack::unpacked msg;
155-
msgpack::unpack(&msg, sbuf.data(), sbuf.size());
154+
msgpack::object_handle oh =
155+
msgpack::unpack(sbuf.data(), sbuf.size());
156156
157-
msgpack::object obj = msg.get();
157+
msgpack::object obj = oh.get();
158158
159159
// you can convert object to myclass directly
160160
std::vector<myclass> rvec;

README.md

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -83,12 +83,11 @@ int main(void)
8383
// deserialize the buffer into msgpack::object instance.
8484
std::string str(buffer.str());
8585
86-
msgpack::unpacked result;
86+
msgpack::object_handle oh =
87+
msgpack::unpack(str.data(), str.size());
8788
88-
msgpack::unpack(result, str.data(), str.size());
89-
90-
// deserialized object is valid during the msgpack::unpacked instance alive.
91-
msgpack::object deserialized = result.get();
89+
// deserialized object is valid during the msgpack::object_handle instance is alive.
90+
msgpack::object deserialized = oh.get();
9291
9392
// msgpack::object supports ostream.
9493
std::cout << deserialized << std::endl;

example/boost/msgpack_variant_capitalize.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -73,8 +73,8 @@ int main() {
7373
msgpack::pack(ss1, u);
7474
print(ss1.str());
7575

76-
msgpack::unpacked unp1 = msgpack::unpack(ss1.str().data(), ss1.str().size());
77-
msgpack::object const& obj1 = unp1.get();
76+
msgpack::object_handle oh1 = msgpack::unpack(ss1.str().data(), ss1.str().size());
77+
msgpack::object const& obj1 = oh1.get();
7878
std::cout << "Unpacked msgpack object." << std::endl;
7979
std::cout << obj1 << std::endl;
8080

@@ -87,8 +87,8 @@ int main() {
8787
msgpack::pack(ss2, v);
8888
print(ss2.str());
8989

90-
msgpack::unpacked unp2 = msgpack::unpack(ss2.str().data(), ss2.str().size());
91-
msgpack::object const& obj2 = unp2.get();
90+
msgpack::object_handle oh2 = msgpack::unpack(ss2.str().data(), ss2.str().size());
91+
msgpack::object const& obj2 = oh2.get();
9292
std::cout << "Modified msgpack object." << std::endl;
9393
std::cout << obj2 << std::endl;
9494
}

example/boost/msgpack_variant_mapbased.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,8 +79,8 @@ int main() {
7979
u.address = "Tokyo";
8080
msgpack::pack(ss, u);
8181

82-
msgpack::unpacked unp = msgpack::unpack(ss.str().data(), ss.str().size());
83-
msgpack::object const& obj = unp.get();
82+
msgpack::object_handle oh = msgpack::unpack(ss.str().data(), ss.str().size());
83+
msgpack::object const& obj = oh.get();
8484
std::cout << "Unpacked msgpack object." << std::endl;
8585
std::cout << obj << std::endl;
8686
msgpack::type::variant_ref v = obj.as<msgpack::type::variant_ref>();

example/cpp03/class_intrusive.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -84,9 +84,9 @@ int main() {
8484

8585
print(ss.str());
8686

87-
msgpack::unpacked unp;
88-
msgpack::unpack(unp, ss.str().data(), ss.str().size());
89-
msgpack::object obj = unp.get();
87+
msgpack::object_handle oh =
88+
msgpack::unpack(ss.str().data(), ss.str().size());
89+
msgpack::object obj = oh.get();
9090
std::cout << obj << std::endl;
9191
assert(obj.as<my_class>() == my);
9292
}

example/cpp03/class_intrusive_map.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,9 +59,9 @@ int main() {
5959

6060
print(ss.str());
6161

62-
msgpack::unpacked unp;
63-
msgpack::unpack(unp, ss.str().data(), ss.str().size());
64-
msgpack::object obj = unp.get();
62+
msgpack::object_handle oh =
63+
msgpack::unpack(ss.str().data(), ss.str().size());
64+
msgpack::object obj = oh.get();
6565
std::cout << obj << std::endl;
6666
assert(obj.as<my_class>() == my);
6767
}

example/cpp03/class_non_intrusive.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -102,9 +102,9 @@ int main() {
102102

103103
print(ss.str());
104104

105-
msgpack::unpacked unp;
106-
msgpack::unpack(unp, ss.str().data(), ss.str().size());
107-
msgpack::object obj = unp.get();
105+
msgpack::object_handle oh =
106+
msgpack::unpack(ss.str().data(), ss.str().size());
107+
msgpack::object obj = oh.get();
108108
std::cout << obj << std::endl;
109109
assert(obj.as<my_class>() == my);
110110
}

example/cpp03/custom.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,9 @@ int main(void)
4040
std::stringstream sbuf;
4141
msgpack::pack(sbuf, oc);
4242

43-
msgpack::unpacked result;
44-
msgpack::unpack(result, sbuf.str().data(), sbuf.str().size());
45-
msgpack::object obj = result.get();
43+
msgpack::object_handle oh =
44+
msgpack::unpack(sbuf.str().data(), sbuf.str().size());
45+
msgpack::object obj = oh.get();
4646

4747
obj.convert(nc);
4848

@@ -56,9 +56,9 @@ int main(void)
5656
std::stringstream sbuf;
5757
msgpack::pack(sbuf, nc);
5858

59-
msgpack::unpacked result;
60-
msgpack::unpack(result, sbuf.str().data(), sbuf.str().size());
61-
msgpack::object obj = result.get();
59+
msgpack::object_handle oh =
60+
msgpack::unpack(sbuf.str().data(), sbuf.str().size());
61+
msgpack::object obj = oh.get();
6262

6363
obj.convert(oc);
6464

example/cpp03/enum.cpp

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -30,20 +30,20 @@ int main(void)
3030
my_enum e3 = elem3;
3131
msgpack::pack(sbuf, e3);
3232

33-
msgpack::unpacked result;
33+
msgpack::object_handle oh;
3434
std::size_t off = 0;
3535

36-
msgpack::unpack(result, sbuf.str().data(), sbuf.str().size(), off);
37-
std::cout << result.get().as<my_enum>() << std::endl;
38-
assert(result.get().as<my_enum>() == elem1);
36+
msgpack::unpack(oh, sbuf.str().data(), sbuf.str().size(), off);
37+
std::cout << oh.get().as<my_enum>() << std::endl;
38+
assert(oh.get().as<my_enum>() == elem1);
3939

40-
msgpack::unpack(result, sbuf.str().data(), sbuf.str().size(), off);
41-
std::cout << result.get().as<my_enum>() << std::endl;
42-
assert(result.get().as<my_enum>() == elem2);
40+
msgpack::unpack(oh, sbuf.str().data(), sbuf.str().size(), off);
41+
std::cout << oh.get().as<my_enum>() << std::endl;
42+
assert(oh.get().as<my_enum>() == elem2);
4343

44-
msgpack::unpack(result, sbuf.str().data(), sbuf.str().size(), off);
45-
std::cout << result.get().as<my_enum>() << std::endl;
46-
assert(result.get().as<my_enum>() == elem3);
44+
msgpack::unpack(oh, sbuf.str().data(), sbuf.str().size(), off);
45+
std::cout << oh.get().as<my_enum>() << std::endl;
46+
assert(oh.get().as<my_enum>() == elem3);
4747
}
4848
{ // create object without zone
4949
msgpack::object obj(elem2);

example/cpp03/map_based_versionup.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,9 +71,9 @@ int main() {
7171

7272
print(ss.str());
7373

74-
msgpack::unpacked unp = msgpack::unpack(ss.str().data(), ss.str().size());
74+
msgpack::object_handle oh = msgpack::unpack(ss.str().data(), ss.str().size());
7575

76-
msgpack::object obj = unp.get();
76+
msgpack::object obj = oh.get();
7777
std::cout << obj << std::endl;
7878

7979
v2 newv = obj.as<v2>();

0 commit comments

Comments
 (0)