17 #ifndef ZORBA_XQUERY_EXCEPTION_API_H
18 #define ZORBA_XQUERY_EXCEPTION_API_H
25 namespace serialization {
27 void operator&( Archiver&, ZorbaException*& );
68 bool has_source() const throw() {
81 void set_source(
char const *uri,
83 column_type column = 0,
84 line_type line_end = 0,
85 column_type column_end = 0 );
93 return source_loc_.file();
102 return source_loc_.line();
111 return source_loc_.column();
120 return source_loc_.line_end();
129 return source_loc_.column_end();
154 void set_applied(
char const *uri,
156 column_type column = 0,
157 line_type line_end = 0,
158 column_type column_end = 0 );
166 return applied_loc_.file();
175 return applied_loc_.line();
185 return applied_loc_.column();
195 return applied_loc_.line_end();
205 return applied_loc_.column_end();
229 void polymorphic_throw()
const;
234 std::ostream& print( std::ostream &o )
const;
251 line_type raise_line,
char const *message );
253 location source_loc_;
254 location applied_loc_;
259 parameters
const&, location
const&
264 parameters
const&, location
const&
267 friend void set_applied(
ZorbaException&,
char const*, line_type, column_type,
268 line_type, column_type,
bool );
270 friend void set_source(
ZorbaException&,
char const*, line_type, column_type,
271 line_type, column_type,
bool );