17 #ifndef ZORBA_ERROR_API_H
18 #define ZORBA_ERROR_API_H
20 #include <zorba/internal/system_diagnostic.h>
21 #include <zorba/internal/qname.h>
26 namespace serialization {
28 void operator&( serialization::Archiver&,
const Diagnostic*& );
45 #ifdef ZORBA_WITH_JSON
49 typedef internal::SystemDiagnostic<internal::JSONiqErrQName> JSONiqErrorCode;
57 class ZORBA_DLL_PUBLIC
UserError :
public Diagnostic {
80 diagnostic::QName
const& qname()
const;
81 diagnostic::category category()
const;
85 Diagnostic
const* clone()
const;
88 typedef internal::VariableQName<std::string> QName;
98 UserError(
char const *ns,
char const *prefix,
char const *localname );
100 friend class UserException;
101 friend UserError make_user_error(
char const*,
char const*,
char const* );
106 const Diagnostic*& );
internal::SystemDiagnostic< internal::ZorbaErrQName > ZorbaErrorCode
A ZorbaErrorCode is a diagnostic for all Zorba-specific errors.
internal::SystemDiagnostic< internal::XQueryErrQName > XQueryErrorCode
An XQueryErrorCode is a diagnostic for all XQuery-specific errors.
A UserError is-a Diagnostic for user-defined errors via fn:error().
void operator&(serialization::Archiver &, const Diagnostic *&)