VSQLite++  0.3
include/sqlite/database_exception.hpp
Go to the documentation of this file.
00001 /*##############################################################################
00002  VSQLite++ - virtuosic bytes SQLite3 C++ wrapper
00003 
00004  Copyright (c) 2006-2014 Vinzenz Feenstra vinzenz.feenstra@gmail.com
00005  All rights reserved.
00006 
00007  Redistribution and use in source and binary forms, with or without modification,
00008  are permitted provided that the following conditions are met:
00009 
00010  * Redistributions of source code must retain the above copyright notice,
00011    this list of conditions and the following disclaimer.
00012  * Redistributions in binary form must reproduce the above copyright notice,
00013    this list of conditions and the following disclaimer in the documentation
00014    and/or other materials provided with the distribution.
00015  * Neither the name of virtuosic bytes nor the names of its contributors may
00016    be used to endorse or promote products derived from this software without
00017    specific prior written permission.
00018 
00019  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00020  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
00021  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
00022  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
00023  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
00024  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
00025  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
00026  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
00027  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
00028  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
00029  POSSIBILITY OF SUCH DAMAGE.
00030 
00031 ##############################################################################*/
00032 #ifndef GUARD_SQLITE_DATABASE_EXCEPTION_HPP_INCLUDED
00033 #define GUARD_SQLITE_DATABASE_EXCEPTION_HPP_INCLUDED
00034 
00035 #include <stdexcept>
00036 #include <string>
00037 
00038 namespace sqlite{
00039     struct database_exception
00040         : public std::runtime_error {
00041             database_exception(std::string const & msg)
00042                 : std::runtime_error(msg.c_str()){}
00043     };
00044 
00045     struct buffer_too_small_exception : public std::runtime_error{
00046         buffer_too_small_exception(std::string const & msg)
00047             : std::runtime_error(msg.c_str()){}
00048     };
00049 
00050     struct database_misuse_exception : public std::logic_error{
00051         database_misuse_exception(std::string const & msg)
00052             : std::logic_error(msg){}
00053     };
00054 
00055 
00056 }
00057 
00058 #endif //GUARD_SQLITE_DATABASE_EXCEPTION_HPP_INCLUDED
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends