encoding_errors.h
//
// 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 BOOSTER_LOCALE_ENCODING_ERRORS_H_INCLUDED
#define BOOSTER_LOCALE_ENCODING_ERRORS_H_INCLUDED
#include <booster/config.h>
#ifdef BOOSTER_MSVC
# pragma warning(push)
# pragma warning(disable : 4275 4251 4231 4660)
#endif
#include <booster/backtrace.h>
namespace booster {
namespace locale {
namespace conv {
class conversion_error : public booster::runtime_error {
public:
conversion_error() : booster::runtime_error("Conversion failed") {}
};
class invalid_charset_error : public booster::runtime_error {
public:
invalid_charset_error(std::string charset) :
booster::runtime_error("Invalid or unsupported charset:" + charset)
{
}
};
typedef enum {
skip = 0,
stop = 1,
default_method = skip
} method_type;
} // conv
} // locale
} // boost
#ifdef BOOSTER_MSVC
#pragma warning(pop)
#endif
#endif
// vim: tabstop=4 expandtab shiftwidth=4 softtabstop=4
booster::runtime_error
Same as std::runtime_error but records stack trace.
Definition: backtrace.h:158
booster::locale::conv::default_method
Default method - skip.
Definition: encoding_errors.h:57
booster::locale::conv::conversion_error
The excepton that is thrown in case of conversion error.
Definition: encoding_errors.h:31
booster::locale::conv::invalid_charset_error
This exception is thrown in case of use of unsupported or invalid character set.
Definition: encoding_errors.h:40
booster::locale::conv::invalid_charset_error::invalid_charset_error
invalid_charset_error(std::string charset)
Create an error for charset charset.
Definition: encoding_errors.h:44
booster::locale::conv::skip
Skip illegal/unconvertable characters.
Definition: encoding_errors.h:55
booster::locale::conv::method_type
method_type
Definition: encoding_errors.h:54
booster::locale::conv::stop
Stop conversion and throw conversion_error.
Definition: encoding_errors.h:56