summaryrefslogtreecommitdiffstats
path: root/third_party/msgpack/include/msgpack/v1/unpack_exception.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/msgpack/include/msgpack/v1/unpack_exception.hpp')
-rw-r--r--third_party/msgpack/include/msgpack/v1/unpack_exception.hpp122
1 files changed, 122 insertions, 0 deletions
diff --git a/third_party/msgpack/include/msgpack/v1/unpack_exception.hpp b/third_party/msgpack/include/msgpack/v1/unpack_exception.hpp
new file mode 100644
index 0000000000..c676a6205b
--- /dev/null
+++ b/third_party/msgpack/include/msgpack/v1/unpack_exception.hpp
@@ -0,0 +1,122 @@
+//
+// MessagePack for C++ deserializing routine
+//
+// Copyright (C) 2008-2016 FURUHASHI Sadayuki and KONDO Takatoshi
+//
+// Distributed under the Boost Software License, Version 1.0.
+// (See accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+//
+#ifndef MSGPACK_V1_UNPACK_EXCEPTION_HPP
+#define MSGPACK_V1_UNPACK_EXCEPTION_HPP
+
+#include "msgpack/versioning.hpp"
+
+#include <string>
+#include <stdexcept>
+
+
+namespace msgpack {
+
+/// @cond
+MSGPACK_API_VERSION_NAMESPACE(v1) {
+/// @endcond
+
+struct unpack_error : public std::runtime_error {
+ explicit unpack_error(const std::string& msg)
+ :std::runtime_error(msg) {}
+#if !defined(MSGPACK_USE_CPP03)
+ explicit unpack_error(const char* msg):
+ std::runtime_error(msg) {}
+#endif // !defined(MSGPACK_USE_CPP03)
+};
+
+struct parse_error : public unpack_error {
+ explicit parse_error(const std::string& msg)
+ :unpack_error(msg) {}
+#if !defined(MSGPACK_USE_CPP03)
+ explicit parse_error(const char* msg)
+ :unpack_error(msg) {}
+#endif // !defined(MSGPACK_USE_CPP03)
+};
+
+struct insufficient_bytes : public unpack_error {
+ explicit insufficient_bytes(const std::string& msg)
+ :unpack_error(msg) {}
+#if !defined(MSGPACK_USE_CPP03)
+ explicit insufficient_bytes(const char* msg)
+ :unpack_error(msg) {}
+#endif // !defined(MSGPACK_USE_CPP03)
+};
+
+struct size_overflow : public unpack_error {
+ explicit size_overflow(const std::string& msg)
+ :unpack_error(msg) {}
+#if !defined(MSGPACK_USE_CPP03)
+ explicit size_overflow(const char* msg)
+ :unpack_error(msg) {}
+#endif
+};
+
+struct array_size_overflow : public size_overflow {
+ array_size_overflow(const std::string& msg)
+ :size_overflow(msg) {}
+#if !defined(MSGPACK_USE_CPP03)
+ array_size_overflow(const char* msg)
+ :size_overflow(msg) {}
+#endif
+};
+
+struct map_size_overflow : public size_overflow {
+ map_size_overflow(const std::string& msg)
+ :size_overflow(msg) {}
+#if !defined(MSGPACK_USE_CPP03)
+ map_size_overflow(const char* msg)
+ :size_overflow(msg) {}
+#endif
+};
+
+struct str_size_overflow : public size_overflow {
+ str_size_overflow(const std::string& msg)
+ :size_overflow(msg) {}
+#if !defined(MSGPACK_USE_CPP03)
+ str_size_overflow(const char* msg)
+ :size_overflow(msg) {}
+#endif
+};
+
+struct bin_size_overflow : public size_overflow {
+ bin_size_overflow(const std::string& msg)
+ :size_overflow(msg) {}
+#if !defined(MSGPACK_USE_CPP03)
+ bin_size_overflow(const char* msg)
+ :size_overflow(msg) {}
+#endif
+};
+
+struct ext_size_overflow : public size_overflow {
+ ext_size_overflow(const std::string& msg)
+ :size_overflow(msg) {}
+#if !defined(MSGPACK_USE_CPP03)
+ ext_size_overflow(const char* msg)
+ :size_overflow(msg) {}
+#endif
+};
+
+struct depth_size_overflow : public size_overflow {
+ depth_size_overflow(const std::string& msg)
+ :size_overflow(msg) {}
+#if !defined(MSGPACK_USE_CPP03)
+ depth_size_overflow(const char* msg)
+ :size_overflow(msg) {}
+#endif
+};
+
+/// @cond
+} // MSGPACK_API_VERSION_NAMESPACE(v1)
+/// @endcond
+
+} // namespace msgpack
+
+
+#endif // MSGPACK_V1_UNPACK_EXCEPTION_HPP