libfoedus-core
FOEDUS Core Library
error_stack.hpp File Reference
#include <errno.h>
#include <stdint.h>
#include <cstring>
#include <iosfwd>
#include <string>
#include "foedus/assert_nd.hpp"
#include "foedus/compiler.hpp"
#include "foedus/cxx11.hpp"
#include "foedus/error_code.hpp"
Include dependency graph for error_stack.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  foedus::ErrorStack
 Brings error stacktrace information as return value of functions. More...
 

Namespaces

 foedus
 Root package of FOEDUS (Fast Optimistic Engine for Data Unification Services).
 

Macros

#define ERROR_STACK(e)    foedus::ErrorStack(__FILE__, __FUNCTION__, __LINE__, e)
 Instantiates ErrorStack with the given foedus::error_code, creating an error stack with the current file, line, and error code. More...
 
#define ERROR_STACK_MSG(e, m)    foedus::ErrorStack(__FILE__, __FUNCTION__, __LINE__, e, m)
 Overload of ERROR_STACK(e) to receive a custom error message. More...
 
#define CHECK_ERROR(x)
 This macro calls x and checks its returned value. More...
 
#define WRAP_ERROR_CODE(x)
 Same as CHECK_ERROR(x) except it receives only an error code, thus more efficient. More...
 
#define UNWRAP_ERROR_STACK(x)
 Similar to WRAP_ERROR_CODE(x), but this one converts ErrorStack to ErrorCode. More...
 
#define CHECK_ERROR_MSG(x, m)
 Overload of ERROR_CHECK(x) to receive a custom error message. More...
 
#define CHECK_OUTOFMEMORY(ptr)
 This macro checks if ptr is nullptr, and if so exists with kErrorCodeOutofmemory error stack. More...
 
#define COERCE_ERROR(x)
 This macro calls x and aborts if encounters an error. More...
 
#define COERCE_ERROR_CODE(x)
 Same as COERCE_ERROR(x) except this received ErrorCode, not ErrorStack. More...
 

Variables

const ErrorStack foedus::kRetOk
 Normal return value for no-error case. More...