A UserException is-an XQueryException for errors raised via fn:error()
.
More...
#include <zorba/user_exception.h>
Public Types | |
typedef internal::diagnostic::location::column_type | column_type |
typedef internal::error_object_type | error_object_type |
typedef internal::diagnostic::location::line_type | line_type |
Public Member Functions | |
Diagnostic const & | diagnostic () const throw () |
Gets the diagnostic carried by this exception. | |
error_object_type const & | error_object () const throw () |
Gets the error object associated with this exception. | |
bool | has_source () const throw () |
Checks whether the XQuery source location has been set. | |
UserException & | operator= (UserException const &from) |
Assigns this UserException from another. | |
void | polymorphic_throw () const |
Throws itself polymorphically; see http://www.parashift.com/c++-faq-lite/exceptions.html#faq-17.16. | |
XQueryStackTrace & | query_trace () throw () |
Gets the XQuery stack trace, if any. | |
XQueryStackTrace const & | query_trace () const throw () |
Gets the XQuery stack trace, if any. | |
char const * | raise_file () const throw () |
Gets the C++ source-code file name whence this exception was raised. | |
line_type | raise_line () const throw () |
Gets the C++ source-code line number whence this exception was raised. | |
void | set_diagnostic (Diagnostic const &diagnostic) throw () |
Sets the diagnostic. | |
void | set_source (char const *uri, line_type line, column_type column=0, line_type line_end=0, column_type column_end=0) |
Sets the XQuery source-code URI name, line, and column numbers. | |
column_type | source_column () const throw () |
Gets the XQuery source-code column number containing the error. | |
column_type | source_column_end () const throw () |
Gets the XQuery source-code end column number containing the error. | |
line_type | source_line () const throw () |
Gets the XQuery source-code line number containing the error. | |
line_type | source_line_end () const throw () |
Gets the XQuery source-code end line number containing the error. | |
char const * | source_uri () const throw () |
Gets the XQuery source URI containing the error. | |
UserException (UserException const &from) | |
Copy-constructs a UserException. | |
char const * | what () const throw () |
~UserException () throw () | |
Destroys this UserException. | |
Protected Member Functions | |
std::unique_ptr< ZorbaException > | clone () const |
Clones this exception object. | |
std::ostream & | print (std::ostream &o) const |
Prints the exception to the given ostream. | |
Friends | |
UserException | internal::make_user_exception (char const *, line_type, char const *, char const *, char const *, char const *, internal::diagnostic::location const &, error_object_type *) |
UserException | internal::make_user_exception (char const *, line_type, Error const &, char const *, internal::diagnostic::location const &, error_object_type *) |
std::ostream & | operator<< (std::ostream &, ZorbaException const &) |
Emits the given ZorbaException to the given ostream. | |
void | serialization::operator& (serialization::Archiver &, ZorbaException *&) |
A UserException is-an XQueryException for errors raised via fn:error()
.
Definition at line 96 of file user_exception.h.
typedef internal::diagnostic::location::column_type zorba::XQueryException::column_type [inherited] |
Definition at line 39 of file xquery_exception.h.
Definition at line 98 of file user_exception.h.
typedef internal::diagnostic::location::line_type zorba::ZorbaException::line_type [inherited] |
Definition at line 44 of file zorba_exception.h.
zorba::UserException::UserException | ( | UserException const & | from | ) |
Copy-constructs a UserException.
from | The UserException to copy from. |
zorba::UserException::~UserException | ( | ) | throw () |
Destroys this UserException.
std::unique_ptr<ZorbaException> zorba::UserException::clone | ( | ) | const [protected, virtual] |
Clones this exception object.
Reimplemented from zorba::XQueryException.
Diagnostic const& zorba::ZorbaException::diagnostic | ( | ) | const throw () [inline, inherited] |
Gets the diagnostic carried by this exception.
Definition at line 71 of file zorba_exception.h.
error_object_type const& zorba::UserException::error_object | ( | ) | const throw () [inline] |
Gets the error object associated with this exception.
Definition at line 125 of file user_exception.h.
bool zorba::XQueryException::has_source | ( | ) | const throw () [inline, inherited] |
Checks whether the XQuery source location has been set.
true
only if the source location has been set. Definition at line 82 of file xquery_exception.h.
UserException& zorba::UserException::operator= | ( | UserException const & | from | ) |
Assigns this UserException from another.
from | The UserException to assign from. |
*this
. void zorba::UserException::polymorphic_throw | ( | ) | const [virtual] |
Throws itself polymorphically; see http://www.parashift.com/c++-faq-lite/exceptions.html#faq-17.16.
Reimplemented from zorba::XQueryException.
std::ostream& zorba::XQueryException::print | ( | std::ostream & | o | ) | const [protected, virtual, inherited] |
Prints the exception to the given ostream.
o | The ostream to print to. |
Reimplemented from zorba::ZorbaException.
XQueryStackTrace& zorba::XQueryException::query_trace | ( | ) | throw () [inline, inherited] |
Gets the XQuery stack trace, if any.
Definition at line 136 of file xquery_exception.h.
XQueryStackTrace const& zorba::XQueryException::query_trace | ( | ) | const throw () [inline, inherited] |
Gets the XQuery stack trace, if any.
Definition at line 145 of file xquery_exception.h.
char const* zorba::ZorbaException::raise_file | ( | ) | const throw () [inline, inherited] |
Gets the C++ source-code file name whence this exception was raised.
Definition at line 95 of file zorba_exception.h.
line_type zorba::ZorbaException::raise_line | ( | ) | const throw () [inline, inherited] |
Gets the C++ source-code line number whence this exception was raised.
Definition at line 104 of file zorba_exception.h.
void zorba::ZorbaException::set_diagnostic | ( | Diagnostic const & | diagnostic | ) | throw () [inline, inherited] |
Sets the diagnostic.
diagnostic | The diagnostic. |
Definition at line 86 of file zorba_exception.h.
void zorba::XQueryException::set_source | ( | char const * | uri, |
line_type | line, | ||
column_type | column = 0 , |
||
line_type | line_end = 0 , |
||
column_type | column_end = 0 |
||
) | [inherited] |
Sets the XQuery source-code URI name, line, and column numbers.
uri | The source-code URI name. |
line | The source-code URI line number. |
column | The source-code URI column number. |
line_end | The source-code URI end line number. |
column_end | The source-code URI end column number. |
column_type zorba::XQueryException::source_column | ( | ) | const throw () [inline, inherited] |
Gets the XQuery source-code column number containing the error.
Definition at line 109 of file xquery_exception.h.
column_type zorba::XQueryException::source_column_end | ( | ) | const throw () [inline, inherited] |
Gets the XQuery source-code end column number containing the error.
Definition at line 127 of file xquery_exception.h.
line_type zorba::XQueryException::source_line | ( | ) | const throw () [inline, inherited] |
Gets the XQuery source-code line number containing the error.
Definition at line 100 of file xquery_exception.h.
line_type zorba::XQueryException::source_line_end | ( | ) | const throw () [inline, inherited] |
Gets the XQuery source-code end line number containing the error.
Definition at line 118 of file xquery_exception.h.
char const* zorba::XQueryException::source_uri | ( | ) | const throw () [inline, inherited] |
Gets the XQuery source URI containing the error.
Definition at line 91 of file xquery_exception.h.
char const* zorba::ZorbaException::what | ( | ) | const throw () [inherited] |
UserException internal::make_user_exception | ( | char const * | , |
line_type | , | ||
char const * | , | ||
char const * | , | ||
char const * | , | ||
char const * | , | ||
internal::diagnostic::location const & | , | ||
error_object_type * | |||
) | [friend] |
UserException internal::make_user_exception | ( | char const * | , |
line_type | , | ||
Error const & | , | ||
char const * | , | ||
internal::diagnostic::location const & | , | ||
error_object_type * | |||
) | [friend] |
std::ostream& operator<< | ( | std::ostream & | o, |
ZorbaException const & | e | ||
) | [friend, inherited] |
Emits the given ZorbaException to the given ostream.
o | The ostream to emit to. |
e | The ZorbaException to emit. |
Definition at line 174 of file zorba_exception.h.
void serialization::operator& | ( | serialization::Archiver & | , |
ZorbaException *& | |||
) | [friend] |
Reimplemented from zorba::XQueryException.