diff --git a/CMakeLists.txt b/CMakeLists.txt index f984283b..af1aefe8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -84,6 +84,7 @@ LIST (APPEND msgpack_HEADERS IF (MSGPACK_ENABLE_CXX) LIST (APPEND msgpack_HEADERS include/msgpack.hpp + include/msgpack_forward.hpp include/msgpack/adaptor/bool.hpp include/msgpack/adaptor/char_ptr.hpp include/msgpack/adaptor/cpp11/array.hpp @@ -115,6 +116,7 @@ IF (MSGPACK_ENABLE_CXX) include/msgpack/detail/cpp11_zone.hpp include/msgpack/fbuffer.hpp include/msgpack/object.hpp + include/msgpack/object_forward.hpp include/msgpack/pack.hpp include/msgpack/sbuffer.hpp include/msgpack/type.hpp diff --git a/erb/cpp03_define.hpp.erb b/erb/cpp03_define.hpp.erb index 2e4a9db6..e4350202 100644 --- a/erb/cpp03_define.hpp.erb +++ b/erb/cpp03_define.hpp.erb @@ -19,6 +19,7 @@ #define MSGPACK_CPP03_DEFINE_HPP #include "msgpack/versioning.hpp" +#include "msgpack_forward.hpp" #define MSGPACK_DEFINE(...) \ template \ diff --git a/erb/cpp03_msgpack_tuple.hpp.erb b/erb/cpp03_msgpack_tuple.hpp.erb index c3e5006b..582762d2 100644 --- a/erb/cpp03_msgpack_tuple.hpp.erb +++ b/erb/cpp03_msgpack_tuple.hpp.erb @@ -19,7 +19,7 @@ #define MSGPACK_CPP03_MSGPACK_TUPLE_HPP #include "msgpack/versioning.hpp" -#include "msgpack/object.hpp" +#include "msgpack_forward.hpp" namespace msgpack { diff --git a/erb/cpp03_zone.hpp.erb b/erb/cpp03_zone.hpp.erb index 25d69091..69261065 100644 --- a/erb/cpp03_zone.hpp.erb +++ b/erb/cpp03_zone.hpp.erb @@ -23,7 +23,7 @@ #include #include "msgpack/versioning.hpp" -#include "msgpack/cpp_config.hpp" +#include "msgpack_forward.hpp" #ifndef MSGPACK_ZONE_CHUNK_SIZE #define MSGPACK_ZONE_CHUNK_SIZE 8192 diff --git a/include/msgpack/adaptor/bool.hpp b/include/msgpack/adaptor/bool.hpp index e2b50a7a..1d794dd1 100644 --- a/include/msgpack/adaptor/bool.hpp +++ b/include/msgpack/adaptor/bool.hpp @@ -19,7 +19,7 @@ #define MSGPACK_TYPE_BOOL_HPP #include "msgpack/versioning.hpp" -#include "msgpack/object.hpp" +#include "msgpack_forward.hpp" #include namespace msgpack { diff --git a/include/msgpack/adaptor/char_ptr.hpp b/include/msgpack/adaptor/char_ptr.hpp index 5566040a..cf013b34 100644 --- a/include/msgpack/adaptor/char_ptr.hpp +++ b/include/msgpack/adaptor/char_ptr.hpp @@ -19,7 +19,7 @@ #define MSGPACK_TYPE_CHAR_PTR_HPP #include "msgpack/versioning.hpp" -#include "msgpack/object.hpp" +#include "msgpack_forward.hpp" #include namespace msgpack { diff --git a/include/msgpack/adaptor/cpp11/array.hpp b/include/msgpack/adaptor/cpp11/array.hpp index 5f7ac1b7..e9e1c972 100644 --- a/include/msgpack/adaptor/cpp11/array.hpp +++ b/include/msgpack/adaptor/cpp11/array.hpp @@ -20,12 +20,10 @@ #define MSGPACK_CPP11_ARRAY_HPP #include "msgpack/versioning.hpp" +#include "msgpack_forward.hpp" #include -#include "msgpack/object.hpp" -#include "msgpack/cpp_config.hpp" - namespace msgpack { MSGPACK_API_VERSION_NAMESPACE(v1) { diff --git a/include/msgpack/adaptor/cpp11/array_char.hpp b/include/msgpack/adaptor/cpp11/array_char.hpp index 17a8605e..34aa2761 100644 --- a/include/msgpack/adaptor/cpp11/array_char.hpp +++ b/include/msgpack/adaptor/cpp11/array_char.hpp @@ -19,7 +19,7 @@ #define MSGPACK_TYPE_ARRAY_CHAR_HPP #include "msgpack/versioning.hpp" -#include "msgpack/object.hpp" +#include "msgpack_forward.hpp" #include namespace msgpack { diff --git a/include/msgpack/adaptor/cpp11/forward_list.hpp b/include/msgpack/adaptor/cpp11/forward_list.hpp index f1a442e2..d2dbebb9 100644 --- a/include/msgpack/adaptor/cpp11/forward_list.hpp +++ b/include/msgpack/adaptor/cpp11/forward_list.hpp @@ -20,12 +20,10 @@ #define MSGPACK_CPP11_FORWARD_LIST_HPP #include "msgpack/versioning.hpp" +#include "msgpack_forward.hpp" #include -#include "msgpack/object.hpp" -#include "msgpack/cpp_config.hpp" - namespace msgpack { MSGPACK_API_VERSION_NAMESPACE(v1) { diff --git a/include/msgpack/adaptor/cpp11/tuple.hpp b/include/msgpack/adaptor/cpp11/tuple.hpp index 935c9fbf..704d81ab 100644 --- a/include/msgpack/adaptor/cpp11/tuple.hpp +++ b/include/msgpack/adaptor/cpp11/tuple.hpp @@ -19,12 +19,10 @@ #define MSGPACK_CPP11_TUPLE_HPP #include "msgpack/versioning.hpp" +#include "msgpack_forward.hpp" #include -#include "msgpack/object.hpp" -#include "msgpack/cpp_config.hpp" - namespace msgpack { MSGPACK_API_VERSION_NAMESPACE(v1) { diff --git a/include/msgpack/adaptor/deque.hpp b/include/msgpack/adaptor/deque.hpp index 11aad789..364baff3 100644 --- a/include/msgpack/adaptor/deque.hpp +++ b/include/msgpack/adaptor/deque.hpp @@ -19,7 +19,7 @@ #define MSGPACK_TYPE_DEQUE_HPP #include "msgpack/versioning.hpp" -#include "msgpack/object.hpp" +#include "msgpack_forward.hpp" #include namespace msgpack { diff --git a/include/msgpack/adaptor/detail/cpp03_define.hpp b/include/msgpack/adaptor/detail/cpp03_define.hpp index 5463b3a7..d9090236 100644 --- a/include/msgpack/adaptor/detail/cpp03_define.hpp +++ b/include/msgpack/adaptor/detail/cpp03_define.hpp @@ -19,6 +19,7 @@ #define MSGPACK_CPP03_DEFINE_HPP #include "msgpack/versioning.hpp" +#include "msgpack_forward.hpp" #define MSGPACK_DEFINE(...) \ template \ diff --git a/include/msgpack/adaptor/detail/cpp03_msgpack_tuple.hpp b/include/msgpack/adaptor/detail/cpp03_msgpack_tuple.hpp index ac8c7807..3ffd0e29 100644 --- a/include/msgpack/adaptor/detail/cpp03_msgpack_tuple.hpp +++ b/include/msgpack/adaptor/detail/cpp03_msgpack_tuple.hpp @@ -19,7 +19,7 @@ #define MSGPACK_CPP03_MSGPACK_TUPLE_HPP #include "msgpack/versioning.hpp" -#include "msgpack/object.hpp" +#include "msgpack_forward.hpp" namespace msgpack { diff --git a/include/msgpack/adaptor/detail/cpp11_define.hpp b/include/msgpack/adaptor/detail/cpp11_define.hpp index 8ec9b469..b8a0979f 100644 --- a/include/msgpack/adaptor/detail/cpp11_define.hpp +++ b/include/msgpack/adaptor/detail/cpp11_define.hpp @@ -19,6 +19,7 @@ #define MSGPACK_CPP11_DEFINE_HPP #include "msgpack/versioning.hpp" +#include "msgpack_forward.hpp" #include diff --git a/include/msgpack/adaptor/detail/cpp11_msgpack_tuple.hpp b/include/msgpack/adaptor/detail/cpp11_msgpack_tuple.hpp index 84d4ae0b..4f190a86 100644 --- a/include/msgpack/adaptor/detail/cpp11_msgpack_tuple.hpp +++ b/include/msgpack/adaptor/detail/cpp11_msgpack_tuple.hpp @@ -19,12 +19,10 @@ #define MSGPACK_CPP11_MSGPACK_TUPLE_HPP #include "msgpack/versioning.hpp" +#include "msgpack_forward.hpp" #include -#include "msgpack/object.hpp" -#include "msgpack/cpp_config.hpp" - namespace msgpack { MSGPACK_API_VERSION_NAMESPACE(v1) { diff --git a/include/msgpack/adaptor/fixint.hpp b/include/msgpack/adaptor/fixint.hpp index e1bc9306..ca5e6b02 100644 --- a/include/msgpack/adaptor/fixint.hpp +++ b/include/msgpack/adaptor/fixint.hpp @@ -19,7 +19,7 @@ #define MSGPACK_TYPE_FIXINT_HPP #include "msgpack/versioning.hpp" -#include "msgpack/object.hpp" +#include "msgpack_forward.hpp" #include "msgpack/adaptor/int.hpp" namespace msgpack { diff --git a/include/msgpack/adaptor/float.hpp b/include/msgpack/adaptor/float.hpp index 3a5404b9..bbace593 100644 --- a/include/msgpack/adaptor/float.hpp +++ b/include/msgpack/adaptor/float.hpp @@ -19,7 +19,7 @@ #define MSGPACK_TYPE_FLOAT_HPP #include "msgpack/versioning.hpp" -#include "msgpack/object.hpp" +#include "msgpack_forward.hpp" #include namespace msgpack { diff --git a/include/msgpack/adaptor/int.hpp b/include/msgpack/adaptor/int.hpp index 92135cd4..6491d274 100644 --- a/include/msgpack/adaptor/int.hpp +++ b/include/msgpack/adaptor/int.hpp @@ -19,7 +19,7 @@ #define MSGPACK_TYPE_INT_HPP #include "msgpack/versioning.hpp" -#include "msgpack/object.hpp" +#include "msgpack_forward.hpp" #include namespace msgpack { diff --git a/include/msgpack/adaptor/list.hpp b/include/msgpack/adaptor/list.hpp index 5d0169d6..b7690dd7 100644 --- a/include/msgpack/adaptor/list.hpp +++ b/include/msgpack/adaptor/list.hpp @@ -19,7 +19,7 @@ #define MSGPACK_TYPE_LIST_HPP #include "msgpack/versioning.hpp" -#include "msgpack/object.hpp" +#include "msgpack_forward.hpp" #include namespace msgpack { diff --git a/include/msgpack/adaptor/map.hpp b/include/msgpack/adaptor/map.hpp index be5add20..de9f825e 100644 --- a/include/msgpack/adaptor/map.hpp +++ b/include/msgpack/adaptor/map.hpp @@ -19,7 +19,7 @@ #define MSGPACK_TYPE_MAP_HPP #include "msgpack/versioning.hpp" -#include "msgpack/object.hpp" +#include "msgpack_forward.hpp" #include #include #include diff --git a/include/msgpack/adaptor/nil.hpp b/include/msgpack/adaptor/nil.hpp index af7f6308..c8f2a0c7 100644 --- a/include/msgpack/adaptor/nil.hpp +++ b/include/msgpack/adaptor/nil.hpp @@ -19,7 +19,7 @@ #define MSGPACK_TYPE_NIL_HPP #include "msgpack/versioning.hpp" -#include "msgpack/object.hpp" +#include "msgpack_forward.hpp" namespace msgpack { diff --git a/include/msgpack/adaptor/pair.hpp b/include/msgpack/adaptor/pair.hpp index 10784af0..238abb8e 100644 --- a/include/msgpack/adaptor/pair.hpp +++ b/include/msgpack/adaptor/pair.hpp @@ -19,7 +19,7 @@ #define MSGPACK_TYPE_PAIR_HPP #include "msgpack/versioning.hpp" -#include "msgpack/object.hpp" +#include "msgpack_forward.hpp" #include namespace msgpack { diff --git a/include/msgpack/adaptor/raw.hpp b/include/msgpack/adaptor/raw.hpp index c61e8cb5..52790519 100644 --- a/include/msgpack/adaptor/raw.hpp +++ b/include/msgpack/adaptor/raw.hpp @@ -19,7 +19,7 @@ #define MSGPACK_TYPE_RAW_HPP #include "msgpack/versioning.hpp" -#include "msgpack/object.hpp" +#include "msgpack_forward.hpp" #include #include diff --git a/include/msgpack/adaptor/set.hpp b/include/msgpack/adaptor/set.hpp index a714b4db..a01b1618 100644 --- a/include/msgpack/adaptor/set.hpp +++ b/include/msgpack/adaptor/set.hpp @@ -19,7 +19,7 @@ #define MSGPACK_TYPE_SET_HPP #include "msgpack/versioning.hpp" -#include "msgpack/object.hpp" +#include "msgpack_forward.hpp" #include diff --git a/include/msgpack/adaptor/string.hpp b/include/msgpack/adaptor/string.hpp index f3fdd302..66068361 100644 --- a/include/msgpack/adaptor/string.hpp +++ b/include/msgpack/adaptor/string.hpp @@ -19,7 +19,7 @@ #define MSGPACK_TYPE_STRING_HPP #include "msgpack/versioning.hpp" -#include "msgpack/object.hpp" +#include "msgpack_forward.hpp" #include namespace msgpack { diff --git a/include/msgpack/adaptor/tr1/unordered_map.hpp b/include/msgpack/adaptor/tr1/unordered_map.hpp index 228cc584..77399581 100644 --- a/include/msgpack/adaptor/tr1/unordered_map.hpp +++ b/include/msgpack/adaptor/tr1/unordered_map.hpp @@ -19,7 +19,7 @@ #define MSGPACK_TYPE_TR1_UNORDERED_MAP_HPP #include "msgpack/versioning.hpp" -#include "msgpack/object.hpp" +#include "msgpack_forward.hpp" #if defined(_LIBCPP_VERSION) || (_MSC_VER >= 1700) diff --git a/include/msgpack/adaptor/tr1/unordered_set.hpp b/include/msgpack/adaptor/tr1/unordered_set.hpp index 045bd0a9..e81fe590 100644 --- a/include/msgpack/adaptor/tr1/unordered_set.hpp +++ b/include/msgpack/adaptor/tr1/unordered_set.hpp @@ -19,7 +19,7 @@ #define MSGPACK_TYPE_TR1_UNORDERED_SET_HPP #include "msgpack/versioning.hpp" -#include "msgpack/object.hpp" +#include "msgpack_forward.hpp" #if defined(_LIBCPP_VERSION) || (_MSC_VER >= 1700) diff --git a/include/msgpack/adaptor/vector.hpp b/include/msgpack/adaptor/vector.hpp index 406b32f0..21f2f085 100644 --- a/include/msgpack/adaptor/vector.hpp +++ b/include/msgpack/adaptor/vector.hpp @@ -19,7 +19,7 @@ #define MSGPACK_TYPE_VECTOR_HPP #include "msgpack/versioning.hpp" -#include "msgpack/object.hpp" +#include "msgpack_forward.hpp" #include namespace msgpack { diff --git a/include/msgpack/adaptor/vector_char.hpp b/include/msgpack/adaptor/vector_char.hpp index 8675370b..a702f445 100644 --- a/include/msgpack/adaptor/vector_char.hpp +++ b/include/msgpack/adaptor/vector_char.hpp @@ -19,7 +19,7 @@ #define MSGPACK_TYPE_VECTOR_CHAR_HPP #include "msgpack/versioning.hpp" -#include "msgpack/object.hpp" +#include "msgpack_forward.hpp" #include namespace msgpack { diff --git a/include/msgpack/detail/cpp03_zone.hpp b/include/msgpack/detail/cpp03_zone.hpp index cc09b6a8..b2acd3d8 100644 --- a/include/msgpack/detail/cpp03_zone.hpp +++ b/include/msgpack/detail/cpp03_zone.hpp @@ -23,7 +23,7 @@ #include #include "msgpack/versioning.hpp" -#include "msgpack/cpp_config.hpp" +#include "msgpack_forward.hpp" #ifndef MSGPACK_ZONE_CHUNK_SIZE #define MSGPACK_ZONE_CHUNK_SIZE 8192 diff --git a/include/msgpack/object.hpp b/include/msgpack/object.hpp index f96543e2..7e22426c 100644 --- a/include/msgpack/object.hpp +++ b/include/msgpack/object.hpp @@ -1,7 +1,7 @@ // // MessagePack for C++ static resolution routine // -// Copyright (C) 2008-2010 FURUHASHI Sadayuki +// Copyright (C) 2008-2014 FURUHASHI Sadayuki and KONDO Takatoshi // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -19,9 +19,9 @@ #define MSGPACK_OBJECT_HPP #include "msgpack/versioning.hpp" -#include "object.h" -#include "pack.hpp" -#include "zone.hpp" +#include "msgpack/object_forward.hpp" +#include "msgpack/pack.hpp" +#include "msgpack/zone.hpp" #include #include #include @@ -32,114 +32,6 @@ namespace msgpack { MSGPACK_API_VERSION_NAMESPACE(v1) { -class type_error : public std::bad_cast { }; - - -namespace type { - enum object_type { - NIL = MSGPACK_OBJECT_NIL, - BOOLEAN = MSGPACK_OBJECT_BOOLEAN, - POSITIVE_INTEGER = MSGPACK_OBJECT_POSITIVE_INTEGER, - NEGATIVE_INTEGER = MSGPACK_OBJECT_NEGATIVE_INTEGER, - DOUBLE = MSGPACK_OBJECT_DOUBLE, - STR = MSGPACK_OBJECT_STR, - BIN = MSGPACK_OBJECT_BIN, - ARRAY = MSGPACK_OBJECT_ARRAY, - MAP = MSGPACK_OBJECT_MAP, - EXT = MSGPACK_OBJECT_EXT - }; -} - - -struct object; -struct object_kv; - -struct object_array { - uint32_t size; - object* ptr; -}; - -struct object_map { - uint32_t size; - object_kv* ptr; -}; - -struct object_str { - uint32_t size; - const char* ptr; -}; - -struct object_bin { - uint32_t size; - const char* ptr; -}; - -struct object_ext { - int8_t type() const { return ptr[0]; } - const char* data() const { return &ptr[1]; } - uint32_t size; - const char* ptr; -}; - -struct object { - union union_type { - bool boolean; - uint64_t u64; - int64_t i64; - double dec; - object_array array; - object_map map; - object_str str; - object_bin bin; - object_ext ext; - }; - - type::object_type type; - union_type via; - - bool is_nil() const { return type == type::NIL; } - - template - T as() const; - - template - void convert(T& v) const; - template - void convert(T* v) const; - - object(); - - object(msgpack_object o); - - template - explicit object(const T& v); - - template - object(const T& v, zone& z); - - // obsolete - template - object(const T& v, zone* z); - - template - object& operator=(const T& v); - - operator msgpack_object() const; - - struct with_zone; - -private: - struct implicit_type; - -public: - implicit_type convert() const; -}; - -struct object_kv { - object key; - object val; -}; - struct object::with_zone : object { with_zone(msgpack::zone& zone) : zone(zone) { } msgpack::zone& zone; diff --git a/include/msgpack/object_forward.hpp b/include/msgpack/object_forward.hpp new file mode 100644 index 00000000..cad24f45 --- /dev/null +++ b/include/msgpack/object_forward.hpp @@ -0,0 +1,144 @@ +// +// MessagePack for C++ static resolution routine +// +// Copyright (C) 2008-2014 FURUHASHI Sadayuki and KONDO Takatoshi +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + +#ifndef MSGPACK_OBJECT_FORWARD_HPP +#define MSGPACK_OBJECT_FORWARD_HPP + +#include "msgpack/versioning.hpp" +#include "msgpack/zone.hpp" +#include "msgpack/object.h" + +#include + +namespace msgpack { + +MSGPACK_API_VERSION_NAMESPACE(v1) { + + +namespace type { + enum object_type { + NIL = MSGPACK_OBJECT_NIL, + BOOLEAN = MSGPACK_OBJECT_BOOLEAN, + POSITIVE_INTEGER = MSGPACK_OBJECT_POSITIVE_INTEGER, + NEGATIVE_INTEGER = MSGPACK_OBJECT_NEGATIVE_INTEGER, + DOUBLE = MSGPACK_OBJECT_DOUBLE, + STR = MSGPACK_OBJECT_STR, + BIN = MSGPACK_OBJECT_BIN, + ARRAY = MSGPACK_OBJECT_ARRAY, + MAP = MSGPACK_OBJECT_MAP, + EXT = MSGPACK_OBJECT_EXT + }; +} + + +struct object; +struct object_kv; + +struct object_array { + uint32_t size; + object* ptr; +}; + +struct object_map { + uint32_t size; + object_kv* ptr; +}; + +struct object_str { + uint32_t size; + const char* ptr; +}; + +struct object_bin { + uint32_t size; + const char* ptr; +}; + +struct object_ext { + int8_t type() const { return ptr[0]; } + const char* data() const { return &ptr[1]; } + uint32_t size; + const char* ptr; +}; + +struct object { + union union_type { + bool boolean; + uint64_t u64; + int64_t i64; + double dec; + object_array array; + object_map map; + object_str str; + object_bin bin; + object_ext ext; + }; + + type::object_type type; + union_type via; + + bool is_nil() const { return type == type::NIL; } + + template + T as() const; + + template + void convert(T& v) const; + template + void convert(T* v) const; + + object(); + + object(msgpack_object o); + + template + explicit object(const T& v); + + template + object(const T& v, zone& z); + + // obsolete + template + object(const T& v, zone* z); + + template + object& operator=(const T& v); + + operator msgpack_object() const; + + struct with_zone; + +private: + struct implicit_type; + +public: + implicit_type convert() const; +}; + +class type_error : public std::bad_cast { }; + +struct object_kv { + object key; + object val; +}; + +} // MSGPACK_API_VERSION_NAMESPACE(v1) + +} // namespace msgpack + +#endif // MSGPACK_OBJECT_FORWARD_HPP diff --git a/include/msgpack_forward.hpp b/include/msgpack_forward.hpp new file mode 100644 index 00000000..90963fe6 --- /dev/null +++ b/include/msgpack_forward.hpp @@ -0,0 +1,26 @@ +/* + * MessagePack for C++ version switcher + * + * Copyright (C) 2014 KONDO Takatoshi + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +#ifndef MSGPACK_FORWARD_HPP +#define MSGPACK_FORWARD_HPP + +#include "msgpack/versioning.hpp" +#include "msgpack/zone.hpp" +#include "msgpack/object_forward.hpp" +#include "msgpack/pack.hpp" + +#endif // MSGPACK_FORWARD_HPP diff --git a/src/Makefile.am b/src/Makefile.am index b3245236..df0a872c 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -53,6 +53,7 @@ nobase_include_HEADERS = \ if ENABLE_CXX nobase_include_HEADERS += \ ../include/msgpack.hpp \ + ../include/msgpack_forward.hpp \ ../include/msgpack/adaptor/bool.hpp \ ../include/msgpack/adaptor/char_ptr.hpp \ ../include/msgpack/adaptor/cpp11/array.hpp \ @@ -84,6 +85,7 @@ nobase_include_HEADERS += \ ../include/msgpack/detail/cpp11_zone.hpp \ ../include/msgpack/fbuffer.hpp \ ../include/msgpack/object.hpp \ + ../include/msgpack/object_forward.hpp \ ../include/msgpack/pack.hpp \ ../include/msgpack/sbuffer.hpp \ ../include/msgpack/type.hpp \