#include <error.h>


Public Member Functions | |
| const char * | get_type () const |
| The type of this error (e.g. "DocNotFoundError".). | |
| const std::string & | get_msg () const |
| Message giving details of the error, intended for human consumption. | |
| const std::string & | get_context () const |
| Optional context information. | |
| const char * | get_error_string () const |
| Returns any system error string associated with this exception. | |
| std::string | get_description () const |
| Return a string describing this object. | |
Private Member Functions | |
| void | operator= (const Error &o) |
| Don't allow assignment of the base class. | |
| Error (const std::string &msg_, const std::string &context_, const char *type_, const char *error_string_) | |
| Constructor for use by constructors of derived classes. | |
| Error (const std::string &msg_, const std::string &context_, const char *type_, int errno_) | |
| Constructor for use by constructors of derived classes. | |
Private Attributes | |
| std::string | msg |
| Message giving details of the error, intended for human consumption. | |
| std::string | context |
| Optional context information. | |
| const char * | type |
| The type of this error (e.g. DocNotFoundError.). | |
| int | my_errno |
| Optional value of 'errno' associated with this error. | |
| std::string | error_string |
| The error string derived from my_errno. | |
| bool | already_handled |
| True if this error has already been passed to an ErrorHandler. | |
Friends | |
| class | ErrorHandler |
This class can not be instantiated directly - instead a subclass should be used.
Definition at line 37 of file error.h.
| Xapian::Error::Error | ( | const std::string & | msg_, | |
| const std::string & | context_, | |||
| const char * | type_, | |||
| const char * | error_string_ | |||
| ) | [private] |
Constructor for use by constructors of derived classes.
For internal use only.
Definition at line 39 of file error.cc.
References error_string.
| Xapian::Error::Error | ( | const std::string & | msg_, | |
| const std::string & | context_, | |||
| const char * | type_, | |||
| int | errno_ | |||
| ) | [inline, private] |
| const std::string& Xapian::Error::get_context | ( | ) | const [inline] |
Optional context information.
This context is intended for use by Xapian::ErrorHandler (for example so it can know which remote server is unreliable and report the problem and remove that server from those being searched). But it's typically a plain-text string, and so also fit for human consumption.
Definition at line 112 of file error.h.
Referenced by serialise_error().
| string Xapian::Error::get_description | ( | ) | const |
Return a string describing this object.
Definition at line 107 of file error.cc.
References context, get_error_string(), msg, and type.
Referenced by FlintDatabase::apply(), ChertDatabase::apply(), BrassDatabase::apply(), DEFINE_TESTCASE(), RemoteTcpServer::handle_one_connection(), main(), TestRunner::run_tests(), test_driver::runtest(), test_qp_default_op1(), test_qp_flag_pure_not1(), test_qp_near1(), test_qp_phrase1(), test_qp_stem_all1(), test_qp_stem_all_z1(), test_qp_stopper1(), test_qp_stopword_group1(), test_qp_value_customrange1(), test_qp_value_daterange1(), test_qp_value_daterange2(), test_qp_value_range1(), test_qp_value_range2(), test_qp_value_range4(), test_qp_value_stringrange1(), test_queryparser1(), test_serialiseerror1(), and test_termgen1().
| const char * Xapian::Error::get_error_string | ( | ) | const |
Returns any system error string associated with this exception.
The system error string may come from errno, h_errno (on UNIX), or GetLastError() (on MS Windows). If there is no associated system error string, NULL is returned.
Definition at line 48 of file error.cc.
References error_string, my_errno, and Xapian::Internal::str().
Referenced by get_description(), RemoteTcpClient::open_socket(), serialise_error(), and test_serialiseerror1().
| const std::string& Xapian::Error::get_msg | ( | ) | const [inline] |
Message giving details of the error, intended for human consumption.
Definition at line 103 of file error.h.
Referenced by DEFINE_TESTCASE(), FlintDatabase::modifications_failed(), ChertDatabase::modifications_failed(), BrassDatabase::modifications_failed(), RemoteTcpClient::open_socket(), serialise_error(), test_qp_default_op1(), test_qp_flag_pure_not1(), test_qp_near1(), test_qp_phrase1(), test_qp_stem_all1(), test_qp_stem_all_z1(), test_qp_stopper1(), test_qp_stopword_group1(), test_qp_value_customrange1(), test_qp_value_daterange1(), test_qp_value_daterange2(), test_qp_value_range1(), test_qp_value_range2(), test_qp_value_range4(), test_qp_value_stringrange1(), test_queryparser1(), and Xapian::DatabaseMaster::write_changesets_to_fd().
| const char* Xapian::Error::get_type | ( | ) | const [inline] |
The type of this error (e.g. "DocNotFoundError".).
Definition at line 100 of file error.h.
Referenced by test_driver::runtest(), and serialise_error().
| void Xapian::Error::operator= | ( | const Error & | o | ) | [private] |
Don't allow assignment of the base class.
friend class ErrorHandler [friend] |
bool Xapian::Error::already_handled [private] |
True if this error has already been passed to an ErrorHandler.
Definition at line 78 of file error.h.
Referenced by Xapian::ErrorHandler::operator()().
std::string Xapian::Error::context [private] |
Optional context information.
This context is intended for use by Xapian::ErrorHandler (for example so it can know which remote server is unreliable and report the problem and remove that server from those being searched). But it's typically a plain-text string, and so also fit for human consumption.
Definition at line 51 of file error.h.
Referenced by get_description().
std::string Xapian::Error::error_string [mutable, private] |
The error string derived from my_errno.
This string is generated from my_errno lazily.
Definition at line 75 of file error.h.
Referenced by Error(), and get_error_string().
std::string Xapian::Error::msg [private] |
Message giving details of the error, intended for human consumption.
Definition at line 42 of file error.h.
Referenced by get_description().
int Xapian::Error::my_errno [private] |
Optional value of 'errno' associated with this error.
If no value is associated, this member variable will be 0.
On UNIX, if this value is < 0, it's a negated h_errno value (giving an error from gethostbyname() or similar).
On Windows, if this value is < 0, it's a negated Windows error code (as given by GetLastError() or WSAGetLastError()).
NB We don't just call this member "errno" to avoid problems on platforms where errno is a preprocessor macro.
Definition at line 69 of file error.h.
Referenced by get_error_string().
const char* Xapian::Error::type [private] |
The type of this error (e.g. DocNotFoundError.).
Definition at line 54 of file error.h.
Referenced by get_description().