📄 base64_exception.hpp
字号:
#ifndef BOOST_ARCHIVE_ITERATORS_BASE64_EXCEPTION_HPP#define BOOST_ARCHIVE_ITERATORS_BASE64_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// base64_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>#include <cassert>namespace boost {namespace archive {namespace iterators {//////////////////////////////////////////////////////////////////////// exceptions thrown by base64s//class base64_exception : public std::exception{public: typedef enum { invalid_code, // attempt to encode a value > 6 bits invalid_character, // decode a value not in base64 char set other_exception } exception_code; exception_code code; base64_exception(exception_code c = other_exception) : code(c) {} virtual const char *what( ) const throw( ) { const char *msg = "unknown exception code"; switch(code){ case invalid_code: msg = "attempt to encode a value > 6 bits"; break; case invalid_character: msg = "attempt to decode a value not in base64 char set"; break; default: assert(false); break; } return msg; }};} // namespace iterators} // namespace archive} // namespace boost#endif //BOOST_NO_EXCEPTIONS#endif //BOOST_ARCHIVE_ITERATORS_ARCHIVE_EXCEPTION_HPP
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -