/usr/include/cppdb/errors.h is in libcppdb-dev 0.3.1+dfsg-5.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 | ///////////////////////////////////////////////////////////////////////////////
//
// Copyright (C) 2010-2011 Artyom Beilis (Tonkikh) <artyomtnk@yahoo.com>
//
// 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)
//
// or (at your opinion) under:
//
// The MIT License
// (See accompanying file MIT.txt or a copy at
// http://www.opensource.org/licenses/mit-license.php)
//
///////////////////////////////////////////////////////////////////////////////
#ifndef CPPDB_ERRORS_H
#define CPPDB_ERRORS_H
#include <stdexcept>
#include <string>
namespace cppdb {
///
/// \brief This is the base error of all errors thrown by cppdb.
///
class cppdb_error : public std::runtime_error {
public:
///
/// Create a cppdb_error with error message \a v
///
cppdb_error(std::string const &v) : std::runtime_error(v) {}
};
///
/// \brief invalid data conversions
///
/// It may be thrown if the data can't be converted to required format, for example trying to fetch
/// a negative value with unsigned type or parsing invalid string as datatime.
///
class bad_value_cast : public cppdb_error {
public:
bad_value_cast() : cppdb_error("cppdb::bad_value_cast can't convert data")
{
}
};
///
/// \brief attempt to fetch a null value.
///
/// Thrown by cppdb::result::get functions.
///
class null_value_fetch : public cppdb_error {
public:
null_value_fetch() : cppdb_error("cppdb::null_value_fetch attempt fetch null column")
{
}
};
///
/// \brief attempt to fetch a value from the row without calling next() first time or when next() returned false.
///
class empty_row_access : public cppdb_error {
public:
empty_row_access() : cppdb_error("cppdb::empty_row_access attempt to fetch from empty column")
{
}
};
///
/// \brief trying to fetch a value using invalid column index
///
class invalid_column : public cppdb_error {
public:
invalid_column() : cppdb_error("cppdb::invalid_column attempt access to invalid column")
{
}
};
///
/// \brief trying to fetch a value using invalid placeholder
///
class invalid_placeholder : public cppdb_error {
public:
invalid_placeholder() : cppdb_error("cppdb::invalid_placeholder attempt bind to invalid placeholder")
{
}
};
///
/// \brief trying to fetch a single row for a query that returned multiple ones.
///
class multiple_rows_query : public cppdb_error {
public:
multiple_rows_query() : cppdb_error( "cppdb::multiple_rows_query "
"multiple rows result for a single row request")
{
}
};
///
/// \brief This operation is not supported by the backend
///
class not_supported_by_backend : public cppdb_error {
public:
///
/// Create a not_supported_by_backend with error message \a e
///
not_supported_by_backend(std::string const &e) :
cppdb_error(e)
{
}
};
}
#endif
|