dataflow_exception.hpp

来自「Boost provides free peer-reviewed portab」· HPP 代码 · 共 81 行

HPP
81
字号
#ifndef BOOST_ARCHIVE_ITERATORS_DATAFLOW_EXCEPTION_HPP#define BOOST_ARCHIVE_ITERATORS_DATAFLOW_EXCEPTION_HPP// MS compatible compilers support #pragma once#if defined(_MSC_VER) && (_MSC_VER >= 1020)# pragma once#endif/////////1/////////2/////////3/////////4/////////5/////////6/////////7/////////8// dataflow_exception.hpp:// (C) Copyright 2002 Robert Ramey - http://www.rrsd.com . // Use, modification and distribution is subject to 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)//  See http://www.boost.org for updates, documentation, and revision history.#include <boost/config.hpp>#ifndef BOOST_NO_EXCEPTIONS#include <exception>#endif //BOOST_NO_EXCEPTIONS#include <cassert>namespace boost {namespace archive {namespace iterators {//////////////////////////////////////////////////////////////////////// exceptions thrown by dataflows//class dataflow_exception : public std::exception{public:    typedef enum {        invalid_6_bitcode,        invalid_base64_character,        invalid_xml_escape_sequence,        comparison_not_permitted,        invalid_conversion,        other_exception    } exception_code;    exception_code code;    dataflow_exception(exception_code c = other_exception) : code(c)    {}    virtual const char *what( ) const throw( )    {        const char *msg = "unknown exception code";        switch(code){        case invalid_6_bitcode:            msg = "attempt to encode a value > 6 bits";            break;        case invalid_base64_character:            msg = "attempt to decode a value not in base64 char set";            break;        case invalid_xml_escape_sequence:            msg = "invalid xml escape_sequence";            break;        case comparison_not_permitted:            msg = "cannot invoke iterator comparison now";            break;        case invalid_conversion:            msg = "invalid multbyte/wide char conversion";            break;        default:            assert(false);            break;        }        return msg;    }};} // namespace iterators} // namespace archive} // namespace boost#endif //BOOST_ARCHIVE_ITERATORS_DATAFLOW_EXCEPTION_HPP

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?