10 public std::runtime_error
12 using std::runtime_error::runtime_error;
16 public std::runtime_error
18 using std::runtime_error::runtime_error;
22 public std::runtime_error
24 using std::runtime_error::runtime_error;
28 public std::runtime_error
30 using std::runtime_error::runtime_error;
34 public std::runtime_error
36 using std::runtime_error::runtime_error;
40 public std::runtime_error
42 using std::runtime_error::runtime_error;
46 public std::runtime_error
48 using std::runtime_error::runtime_error;
52 public std::runtime_error
54 using std::runtime_error::runtime_error;
58 public std::runtime_error
60 using std::runtime_error::runtime_error;
64 public std::runtime_error
66 using std::runtime_error::runtime_error;
70 public std::runtime_error
72 using std::runtime_error::runtime_error;
77#define HART_STRINGIFY2(x) #x
82#if HART_DO_NOT_THROW_EXCEPTIONS
83#define HART_THROW(ExceptionType, message) do { std::cout << #ExceptionType << " triggered: \"" << message << "\", file: " << __FILE__ << ", line: " << __LINE__ << std::endl; } while (0
)
85#define HART_THROW(ExceptionType, message) do { throw ExceptionType (std::string (message) + ", file: " __FILE__ ", line: " HART_LINE_STRING); } while (0
)
88#define HART_THROW_OR_RETURN(ExceptionType, message, returnValue) do { HART_THROW (ExceptionType, message); return returnValue; } while (0
)
89#define HART_THROW_OR_RETURN_VOID(ExceptionType, message) do { HART_THROW (ExceptionType, message); return; } while(0
)
91#define hassertfalse HART_THROW (hart::HartAssertException, "hassertfalse failed")
92#define hassert(condition) if (! (condition)) { HART_THROW (hart::HartAssertException, std::string ("hassert failed:") + #condition); }
94#define HART_WARNING(message) std::cout << "Warning: " << message << ", file: " << __FILE__ << ", line: " << __LINE__ << std::endl
#define HART_STRINGIFY(x)
#define HART_STRINGIFY2(x)
#define HART_THROW(ExceptionType, message)