query/source/orm/sql/error_code.cpp

59 lines
1.5 KiB
C++

#include "matador/sql/error_code.hpp"
namespace matador::sql {
const char * sql_category_impl::name() const noexcept {
return "sql";
}
std::string sql_category_impl::message(const int ev) const {
switch (static_cast<error_code>(ev)) {
case error_code::OK:
return "OK";
case error_code::INVALID_QUERY:
return "Invalid query";
case error_code::UNKNOWN_TABLE:
return "Unknown table";
case error_code::UNKNOWN_COLUMN:
return "Unknown column";
case error_code::BIND_FAILED:
return "Bind failed";
case error_code::EXECUTE_FAILED:
return "Execute failed";
case error_code::FETCH_FAILED:
return "Fetch failed";
case error_code::PREPARE_FAILED:
return "Prepare failed";
case error_code::DESCRIBE_FAILED:
return "Describe failed";
case error_code::TABLE_EXISTS_FAILED:
return "Table exists failed";
case error_code::RETRIEVE_DATA_FAILED:
return "Retrieve data failed";
case error_code::RESET_FAILED:
return "Reset failed";
case error_code::OPEN_ERROR:
return "Open failed";
case error_code::CLOSE_ERROR:
return "Close failed";
case error_code::FAILURE:
return "Failure";
default:
return "Unknown error";
}
}
const std::error_category & sql_category() {
static sql_category_impl instance;
return instance;
}
std::error_code make_error_code(error_code e) {
return {static_cast<int>(e), sql_category()};
}
std::error_condition make_error_condition(error_code e) {
return {static_cast<int>(e), sql_category()};
}
}