query/source/orm/query/error_code.cpp

46 lines
1.2 KiB
C++

#include "matador/query/error_code.hpp"
namespace matador::query {
const char* query_category_impl::name() const noexcept {
return "query";
}
std::string query_category_impl::message(int ev) const {
switch (static_cast<error_code>(ev)) {
case error_code::Success:
return "Success";
case error_code::Failure:
return "Failure";
case error_code::InvalidQuery:
return "Invalid query";
case error_code::InvalidSchema:
return "Invalid schema";
case error_code::InvalidTable:
return "Invalid table";
case error_code::InvalidColumn:
return "Invalid column";
case error_code::InvalidConstraint:
return "Invalid constraint";
case error_code::InvalidDataType:
return "Invalid data type";
case error_code::InvalidValue:
return "Invalid value";
default:
return "Unknown error";
}
}
const std::error_category& query_category() {
static query_category_impl instance;
return instance;
}
std::error_code make_error_code(error_code e) {
return {static_cast<int>(e), query_category()};
}
std::error_condition make_error_condition(error_code e) {
return {static_cast<int>(e), query_category()};
}
}