#include <iostream>
#include <string>
#include <algorithm>
#include <exception>
#include <vector>
#include <cerrno>
#include "asserts.h"
#include "types.h"
Include dependency graph for error.h:
This graph shows which files directly or indirectly include this file:
Go to the source code of this file.
Classes | |
class | error_instance |
Instance of a single error containing a descriptive error message and the location in the file that the error took place. More... | |
class | error |
An error class. More... | |
Defines | |
#define | ERROR_INSTANCE(s) error_instance((s), __FILE__, __LINE__) |
#define | err_unknown INTERNAL_ERROR(0,"An unknown error has occured") |
#define | err_nomem ERROR(ENOMEM,"Out of memory") |
#define | ERROR(e, s) error(e,ERROR_INSTANCE((s)), false) |
#define | INTERNAL_ERROR(e, s) error(e,ERROR_INSTANCE(s), true) |
#define | TRY(code, es) |
#define | TRY_nomem(code) |
#define | TRY_instead(code, es) |
#define | TRY_log(code, es) |
Functions | |
std::ostream & | operator<< (std::ostream &a_out, const error &a_e) |
const char * | get_error_str (const int a_err) |
|
Definition at line 115 of file error.h. Referenced by archive_manager::archive(), vault_manager::select(), error::str(), table_cell_table::table_cell_table(), and test8(). |
|
Definition at line 113 of file error.h. Referenced by archive_manager::archive(), main(), job_archiver::mf_parse_rsync_io(), mk_dirhier(), mk_relative_symlink(), vault_manager::select(), job_archiver::start(), error::str(), test_rvm(), and test_vaulter(). |
|
|
Definition at line 67 of file error.h. Referenced by job_archiver::mf_parse_rsync_io(), mk_dirhier(), mk_relative_symlink(), error::push_back(), execute::reroute_stdio(), test4(), test4a(), test5(), test5a(), and test6(). |
|
|
Value: try { \ code; \ } \ catch(error e) { \ e.push_back(ERROR_INSTANCE(es)); \ throw(e); \ } \ catch(...) { \ if (errno == ENOMEM) { \ throw(err_nomem); \ } \ error e = err_unknown; \ \ e.push_back(es); \ throw(e); \ } Definition at line 125 of file error.h. Referenced by archive_manager::archive(), timestamp::assign(), estring::assign(), timer::eta(), timestamp::make_str_(), make_time_string_(), timer::mf_make_string(), timer::mf_make_timer_string(), estring::operator double(), estring::operator float(), estring::operator int(), estring::operator long(), estring::operator long long(), estring::operator short(), estring::operator unsigned int(), estring::operator unsigned long(), estring::operator unsigned long long(), estring::operator unsigned short(), subdirectory::path(), percent_string(), vault_manager::prepare(), archive_path::push_back(), rm_recursive(), size_to_string(), estring::T_string_to_fractional(), and test7a(). |
|
Value: try { \ code; \ } \ catch(error e) { \ e.clear_stack(); \ e.push_back(ERROR_INSTANCE(es)); \ throw(e); \ } \ catch(...) { \ if (errno == ENOMEM) { \ throw(err_nomem); \ } \ error e = err_unknown; \ \ e.push_back(es); \ throw(e); \ } |
|
Value: try { \ code; \ } \ catch(error e) { \ e.clear_stack(); \ e.push_back(ERROR_INSTANCE(es)); \ logger.write(e.str()); \ } \ catch(...) { \ if (errno == ENOMEM) { \ throw(err_nomem); \ } \ error e = err_unknown; \ \ e.push_back(es); \ logger.write(e.str()); \ } Definition at line 176 of file error.h. Referenced by catalog_manager::catalog(). |
|
|
Definition at line 380 of file error.cc. Referenced by error::push_back(). |
|
Definition at line 375 of file error.cc. References error::write(). |
Here is the call graph for this function: