23 #ifndef XAPIAN_INCLUDED_ERROR_H
24 #define XAPIAN_INCLUDED_ERROR_H
26 #if !defined XAPIAN_IN_XAPIAN_H && !defined XAPIAN_LIB_BUILD
27 # error Never use <xapian/error.h> directly; include <xapian.h> instead.
86 Error(std::string_view msg_, std::string_view context_,
87 const char* type_,
const char* error_string_);
92 Error(std::string_view msg_, std::string_view context_,
93 const char* type_,
int errno_)
94 : msg(msg_), context(context_), error_string(), type(type_),
131 const char * get_error_string()
const;
134 std::string get_description()
const;
147 LogicError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
148 :
Error(msg_, context_, type_, error_string_) {}
153 LogicError(std::string_view msg_, std::string_view context_,
const char* type_,
int errno_)
154 :
Error(msg_, context_, type_, errno_) {}
169 RuntimeError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
170 :
Error(msg_, context_, type_, error_string_) {}
175 RuntimeError(std::string_view msg_, std::string_view context_,
const char* type_,
int errno_)
176 :
Error(msg_, context_, type_, errno_) {}
194 AssertionError(std::string_view msg_, std::string_view context_,
const char* error_string_)
195 :
LogicError(msg_, context_,
"\000AssertionError", error_string_) {}
203 explicit AssertionError(std::string_view msg_, std::string_view context_ = {},
int errno_ = 0)
204 :
LogicError(msg_, context_,
"\000AssertionError", errno_) {}
212 :
LogicError(msg_, std::string(),
"\000AssertionError", errno_) {}
217 AssertionError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
218 :
LogicError(msg_, context_, type_, error_string_) {}
223 AssertionError(std::string_view msg_, std::string_view context_,
const char* type_,
int errno_)
224 :
LogicError(msg_, context_, type_, errno_) {}
237 :
LogicError(msg_, context_,
"\001InvalidArgumentError", error_string_) {}
246 :
LogicError(msg_, context_,
"\001InvalidArgumentError", errno_) {}
254 :
LogicError(msg_, std::string(),
"\001InvalidArgumentError", errno_) {}
259 InvalidArgumentError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
260 :
LogicError(msg_, context_, type_, error_string_) {}
266 :
LogicError(msg_, context_, type_, errno_) {}
279 :
LogicError(msg_, context_,
"\002InvalidOperationError", error_string_) {}
288 :
LogicError(msg_, context_,
"\002InvalidOperationError", errno_) {}
296 :
LogicError(msg_, std::string(),
"\002InvalidOperationError", errno_) {}
301 InvalidOperationError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
302 :
LogicError(msg_, context_, type_, error_string_) {}
308 :
LogicError(msg_, context_, type_, errno_) {}
321 :
LogicError(msg_, context_,
"\003UnimplementedError", error_string_) {}
330 :
LogicError(msg_, context_,
"\003UnimplementedError", errno_) {}
338 :
LogicError(msg_, std::string(),
"\003UnimplementedError", errno_) {}
343 UnimplementedError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
344 :
LogicError(msg_, context_, type_, error_string_) {}
350 :
LogicError(msg_, context_, type_, errno_) {}
362 DatabaseError(std::string_view msg_, std::string_view context_,
const char* error_string_)
363 :
RuntimeError(msg_, context_,
"\004DatabaseError", error_string_) {}
371 explicit DatabaseError(std::string_view msg_, std::string_view context_ = {},
int errno_ = 0)
372 :
RuntimeError(msg_, context_,
"\004DatabaseError", errno_) {}
380 :
RuntimeError(msg_, std::string(),
"\004DatabaseError", errno_) {}
385 DatabaseError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
391 DatabaseError(std::string_view msg_, std::string_view context_,
const char* type_,
int errno_)
405 :
DatabaseError(msg_, context_,
"\005DatabaseCorruptError", error_string_) {}
414 :
DatabaseError(msg_, context_,
"\005DatabaseCorruptError", errno_) {}
422 :
DatabaseError(msg_, std::string(),
"\005DatabaseCorruptError", errno_) {}
427 DatabaseCorruptError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
447 :
DatabaseError(msg_, context_,
"\006DatabaseCreateError", error_string_) {}
456 :
DatabaseError(msg_, context_,
"\006DatabaseCreateError", errno_) {}
464 :
DatabaseError(msg_, std::string(),
"\006DatabaseCreateError", errno_) {}
469 DatabaseCreateError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
489 :
DatabaseError(msg_, context_,
"\007DatabaseLockError", error_string_) {}
497 explicit DatabaseLockError(std::string_view msg_, std::string_view context_ = {},
int errno_ = 0)
498 :
DatabaseError(msg_, context_,
"\007DatabaseLockError", errno_) {}
506 :
DatabaseError(msg_, std::string(),
"\007DatabaseLockError", errno_) {}
511 DatabaseLockError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
517 DatabaseLockError(std::string_view msg_, std::string_view context_,
const char* type_,
int errno_)
535 :
DatabaseError(msg_, context_,
"\010DatabaseModifiedError", error_string_) {}
544 :
DatabaseError(msg_, context_,
"\010DatabaseModifiedError", errno_) {}
552 :
DatabaseError(msg_, std::string(),
"\010DatabaseModifiedError", errno_) {}
557 DatabaseModifiedError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
577 :
DatabaseError(msg_, context_,
"\011DatabaseOpeningError", error_string_) {}
586 :
DatabaseError(msg_, context_,
"\011DatabaseOpeningError", errno_) {}
594 :
DatabaseError(msg_, std::string(),
"\011DatabaseOpeningError", errno_) {}
599 DatabaseOpeningError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
650 DatabaseVersionError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
669 DocNotFoundError(std::string_view msg_, std::string_view context_,
const char* error_string_)
670 :
RuntimeError(msg_, context_,
"\013DocNotFoundError", error_string_) {}
678 explicit DocNotFoundError(std::string_view msg_, std::string_view context_ = {},
int errno_ = 0)
679 :
RuntimeError(msg_, context_,
"\013DocNotFoundError", errno_) {}
687 :
RuntimeError(msg_, std::string(),
"\013DocNotFoundError", errno_) {}
692 DocNotFoundError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
698 DocNotFoundError(std::string_view msg_, std::string_view context_,
const char* type_,
int errno_)
715 :
RuntimeError(msg_, context_,
"\014FeatureUnavailableError", error_string_) {}
724 :
RuntimeError(msg_, context_,
"\014FeatureUnavailableError", errno_) {}
732 :
RuntimeError(msg_, std::string(),
"\014FeatureUnavailableError", errno_) {}
756 InternalError(std::string_view msg_, std::string_view context_,
const char* error_string_)
757 :
RuntimeError(msg_, context_,
"\015InternalError", error_string_) {}
765 explicit InternalError(std::string_view msg_, std::string_view context_ = {},
int errno_ = 0)
766 :
RuntimeError(msg_, context_,
"\015InternalError", errno_) {}
774 :
RuntimeError(msg_, std::string(),
"\015InternalError", errno_) {}
779 InternalError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
785 InternalError(std::string_view msg_, std::string_view context_,
const char* type_,
int errno_)
798 NetworkError(std::string_view msg_, std::string_view context_,
const char* error_string_)
799 :
RuntimeError(msg_, context_,
"\016NetworkError", error_string_) {}
807 explicit NetworkError(std::string_view msg_, std::string_view context_ = {},
int errno_ = 0)
808 :
RuntimeError(msg_, context_,
"\016NetworkError", errno_) {}
816 :
RuntimeError(msg_, std::string(),
"\016NetworkError", errno_) {}
821 NetworkError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
827 NetworkError(std::string_view msg_, std::string_view context_,
const char* type_,
int errno_)
841 :
NetworkError(msg_, context_,
"\017NetworkTimeoutError", error_string_) {}
850 :
NetworkError(msg_, context_,
"\017NetworkTimeoutError", errno_) {}
858 :
NetworkError(msg_, std::string(),
"\017NetworkTimeoutError", errno_) {}
863 NetworkTimeoutError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
882 QueryParserError(std::string_view msg_, std::string_view context_,
const char* error_string_)
883 :
RuntimeError(msg_, context_,
"\020QueryParserError", error_string_) {}
891 explicit QueryParserError(std::string_view msg_, std::string_view context_ = {},
int errno_ = 0)
892 :
RuntimeError(msg_, context_,
"\020QueryParserError", errno_) {}
900 :
RuntimeError(msg_, std::string(),
"\020QueryParserError", errno_) {}
905 QueryParserError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
911 QueryParserError(std::string_view msg_, std::string_view context_,
const char* type_,
int errno_)
925 :
RuntimeError(msg_, context_,
"\021SerialisationError", error_string_) {}
934 :
RuntimeError(msg_, context_,
"\021SerialisationError", errno_) {}
942 :
RuntimeError(msg_, std::string(),
"\021SerialisationError", errno_) {}
947 SerialisationError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
966 RangeError(std::string_view msg_, std::string_view context_,
const char* error_string_)
967 :
RuntimeError(msg_, context_,
"\022RangeError", error_string_) {}
975 explicit RangeError(std::string_view msg_, std::string_view context_ = {},
int errno_ = 0)
976 :
RuntimeError(msg_, context_,
"\022RangeError", errno_) {}
984 :
RuntimeError(msg_, std::string(),
"\022RangeError", errno_) {}
989 RangeError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
995 RangeError(std::string_view msg_, std::string_view context_,
const char* type_,
int errno_)
1008 WildcardError(std::string_view msg_, std::string_view context_,
const char* error_string_)
1009 :
RuntimeError(msg_, context_,
"\023WildcardError", error_string_) {}
1017 explicit WildcardError(std::string_view msg_, std::string_view context_ = {},
int errno_ = 0)
1018 :
RuntimeError(msg_, context_,
"\023WildcardError", errno_) {}
1026 :
RuntimeError(msg_, std::string(),
"\023WildcardError", errno_) {}
1031 WildcardError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
1032 :
RuntimeError(msg_, context_, type_, error_string_) {}
1037 WildcardError(std::string_view msg_, std::string_view context_,
const char* type_,
int errno_)
1093 :
DatabaseError(msg_, context_,
"\025DatabaseClosedError", error_string_) {}
1102 :
DatabaseError(msg_, context_,
"\025DatabaseClosedError", errno_) {}
1110 :
DatabaseError(msg_, std::string(),
"\025DatabaseClosedError", errno_) {}
1115 DatabaseClosedError(std::string_view msg_, std::string_view context_,
const char* type_,
const char* error_string_)
Compiler attribute macros.
AssertionError is thrown if a logical assertion inside Xapian fails.
AssertionError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
AssertionError(std::string_view msg_, int errno_)
Construct from message and errno value.
AssertionError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
AssertionError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
AssertionError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
Indicates an attempt to access a closed database.
DatabaseClosedError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
DatabaseClosedError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
DatabaseClosedError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
DatabaseClosedError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
DatabaseClosedError(std::string_view msg_, int errno_)
Construct from message and errno value.
DatabaseCorruptError indicates database corruption was detected.
DatabaseCorruptError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
DatabaseCorruptError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
DatabaseCorruptError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
DatabaseCorruptError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
DatabaseCorruptError(std::string_view msg_, int errno_)
Construct from message and errno value.
DatabaseCreateError indicates a failure to create a database.
DatabaseCreateError(std::string_view msg_, int errno_)
Construct from message and errno value.
DatabaseCreateError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
DatabaseCreateError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
DatabaseCreateError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
DatabaseCreateError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
DatabaseError indicates some sort of database related error.
DatabaseError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
DatabaseError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
DatabaseError(std::string_view msg_, int errno_)
Construct from message and errno value.
DatabaseError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
DatabaseError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
DatabaseLockError indicates failure to lock a database.
DatabaseLockError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
DatabaseLockError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
DatabaseLockError(std::string_view msg_, int errno_)
Construct from message and errno value.
DatabaseLockError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
DatabaseLockError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
DatabaseModifiedError indicates a database was modified.
DatabaseModifiedError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
DatabaseModifiedError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
DatabaseModifiedError(std::string_view msg_, int errno_)
Construct from message and errno value.
DatabaseModifiedError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
DatabaseModifiedError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
Indicates an attempt to access a database not present.
DatabaseNotFoundError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
DatabaseNotFoundError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
DatabaseNotFoundError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
DatabaseNotFoundError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
DatabaseNotFoundError(std::string_view msg_, int errno_)
Construct from message and errno value.
DatabaseOpeningError indicates failure to open a database.
DatabaseOpeningError(std::string_view msg_, int errno_)
Construct from message and errno value.
DatabaseOpeningError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
DatabaseOpeningError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
DatabaseOpeningError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
DatabaseOpeningError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
DatabaseVersionError indicates that a database is in an unsupported format.
DatabaseVersionError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
DatabaseVersionError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
DatabaseVersionError(std::string_view msg_, int errno_)
Construct from message and errno value.
DatabaseVersionError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
DatabaseVersionError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
Indicates an attempt to access a document not present in the database.
DocNotFoundError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
DocNotFoundError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
DocNotFoundError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
DocNotFoundError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
DocNotFoundError(std::string_view msg_, int errno_)
Construct from message and errno value.
All exceptions thrown by Xapian are subclasses of Xapian::Error.
std::string context
Optional context information.
int my_errno
Optional value of 'errno' associated with this error.
std::string error_string
The error string derived from my_errno.
std::string msg
Message giving details of the error, intended for human consumption.
const char * type
The type of this error (e.g. DocNotFoundError.)
void operator=(const Error &o)
Don't allow assignment of the base class.
const std::string & get_msg() const noexcept
Message giving details of the error, intended for human consumption.
const char * get_type() const noexcept
The type of this error (e.g. "DocNotFoundError".)
Error(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
const std::string & get_context() const noexcept
Optional context information.
Error(const Error &)=default
Default copy constructor.
Indicates an attempt to use a feature which is unavailable.
FeatureUnavailableError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
FeatureUnavailableError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
FeatureUnavailableError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
FeatureUnavailableError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
FeatureUnavailableError(std::string_view msg_, int errno_)
Construct from message and errno value.
InternalError indicates a runtime problem of some sort.
InternalError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
InternalError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
InternalError(std::string_view msg_, int errno_)
Construct from message and errno value.
InternalError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
InternalError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
InvalidArgumentError indicates an invalid parameter value was passed to the API.
InvalidArgumentError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
InvalidArgumentError(std::string_view msg_, int errno_)
Construct from message and errno value.
InvalidArgumentError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
InvalidArgumentError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
InvalidArgumentError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
InvalidOperationError indicates the API was used in an invalid way.
InvalidOperationError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
InvalidOperationError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
InvalidOperationError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
InvalidOperationError(std::string_view msg_, int errno_)
Construct from message and errno value.
InvalidOperationError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
The base class for exceptions indicating errors in the program logic.
LogicError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
LogicError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
Indicates a problem communicating with a remote database.
NetworkError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
NetworkError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
NetworkError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
NetworkError(std::string_view msg_, int errno_)
Construct from message and errno value.
NetworkError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
Indicates a timeout expired while communicating with a remote database.
NetworkTimeoutError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
NetworkTimeoutError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
NetworkTimeoutError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
NetworkTimeoutError(std::string_view msg_, int errno_)
Construct from message and errno value.
NetworkTimeoutError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
Indicates a query string can't be parsed.
QueryParserError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
QueryParserError(std::string_view msg_, int errno_)
Construct from message and errno value.
QueryParserError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
QueryParserError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
QueryParserError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
RangeError indicates an attempt to access outside the bounds of a container.
RangeError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
RangeError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
RangeError(std::string_view msg_, int errno_)
Construct from message and errno value.
RangeError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
RangeError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
The base class for exceptions indicating errors only detectable at runtime.
RuntimeError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
RuntimeError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
Indicates an error in the std::string serialisation of an object.
SerialisationError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
SerialisationError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
SerialisationError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
SerialisationError(std::string_view msg_, int errno_)
Construct from message and errno value.
SerialisationError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
UnimplementedError indicates an attempt to use an unimplemented feature.
UnimplementedError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
UnimplementedError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
UnimplementedError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
UnimplementedError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
UnimplementedError(std::string_view msg_, int errno_)
Construct from message and errno value.
WildcardError indicates an error expanding a wildcarded query.
WildcardError(std::string_view msg_, std::string_view context_, const char *type_, int errno_)
Constructor for use by constructors of derived classes.
WildcardError(std::string_view msg_, int errno_)
Construct from message and errno value.
WildcardError(std::string_view msg_, std::string_view context_, const char *type_, const char *error_string_)
Constructor for use by constructors of derived classes.
WildcardError(std::string_view msg_, std::string_view context_, const char *error_string_)
Private constructor for use by remote backend.
WildcardError(std::string_view msg_, std::string_view context_={}, int errno_=0)
General purpose constructor.
The Xapian namespace contains public interfaces for the Xapian library.
Define XAPIAN_VISIBILITY_* macros.
#define XAPIAN_VISIBILITY_DEFAULT