diff DEPENDENCIES/generic/include/boost/locale/encoding_errors.hpp @ 16:2665513ce2d3

Add boost headers
author Chris Cannam
date Tue, 05 Aug 2014 11:11:38 +0100
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/DEPENDENCIES/generic/include/boost/locale/encoding_errors.hpp	Tue Aug 05 11:11:38 2014 +0100
@@ -0,0 +1,75 @@
+//
+//  Copyright (c) 2009-2011 Artyom Beilis (Tonkikh)
+//
+//  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 BOOST_LOCALE_ENCODING_ERRORS_HPP_INCLUDED
+#define BOOST_LOCALE_ENCODING_ERRORS_HPP_INCLUDED
+
+#include <boost/locale/definitions.hpp>
+#ifdef BOOST_MSVC
+#  pragma warning(push)
+#  pragma warning(disable : 4275 4251 4231 4660)
+#endif
+#include <stdexcept>
+
+
+
+namespace boost {
+    namespace locale {
+        namespace conv {
+            ///
+            /// \addtogroup codepage 
+            ///
+            /// @{
+
+            ///
+            /// \brief The excepton that is thrown in case of conversion error
+            ///
+            class BOOST_SYMBOL_VISIBLE conversion_error : public std::runtime_error {
+            public:
+                conversion_error() : std::runtime_error("Conversion failed") {}
+            };
+            
+            ///
+            /// \brief This exception is thrown in case of use of unsupported
+            /// or invalid character set
+            ///
+            class BOOST_SYMBOL_VISIBLE invalid_charset_error : public std::runtime_error {
+            public:
+
+                /// Create an error for charset \a charset
+                invalid_charset_error(std::string charset) : 
+                    std::runtime_error("Invalid or unsupported charset:" + charset)
+                {
+                }
+            };
+            
+
+            ///
+            /// enum that defines conversion policy
+            ///
+            typedef enum {
+                skip            = 0,    ///< Skip illegal/unconvertable characters
+                stop            = 1,    ///< Stop conversion and throw conversion_error
+                default_method  = skip  ///< Default method - skip
+            } method_type;
+
+
+            /// @}
+
+        } // conv
+
+    } // locale
+} // boost
+
+#ifdef BOOST_MSVC
+#pragma warning(pop)
+#endif
+
+#endif
+
+// vim: tabstop=4 expandtab shiftwidth=4 softtabstop=4
+