xale-db 1.0
minimal SQL engine, written in c++
Loading...
Searching...
No Matches
ExceptionHandler.h
Go to the documentation of this file.
1#ifndef CORE_EXCEPTION_HANDLER_H
2#define CORE_EXCEPTION_HANDLER_H
3
4#include <string>
5#include <exception>
6#include <iostream>
7#include <utility>
8
9namespace Xale::Core
10{
25
26 class DbException : public std::exception
27 {
28 public:
29 DbException(ExceptionCode code, std::string msg, const char* file, int line);
30 const char* what() const noexcept override;
31 ExceptionCode getCode() const;
32
33 private:
34 ExceptionCode _code;
35 std::string _msg;
36 std::string _fullMessage;
37 const char* _file;
38 int _line;
39 };
40}
41
42#define THROW_DB_EXCEPTION(code, msg) \
43 throw Xale::Core::DbException(code, msg, __FILE__, __LINE__)
44
45#endif // CORE_EXCEPTION_HANDLER_H
const char * what() const noexcept override
Definition ExceptionHandler.cpp:17
ExceptionCode getCode() const
Definition ExceptionHandler.cpp:22
DbException(ExceptionCode code, std::string msg, const char *file, int line)
Definition ExceptionHandler.cpp:5
Definition ConfigurationHandler.h:13
ExceptionCode
Definition ExceptionHandler.h:12
@ WriteFile
Definition ExceptionHandler.h:19
@ Startup
Definition ExceptionHandler.h:15
@ StorageOpen
Definition ExceptionHandler.h:16
@ StorageClose
Definition ExceptionHandler.h:17
@ SyncFile
Definition ExceptionHandler.h:20
@ None
Definition ExceptionHandler.h:13
@ ExecutionError
Definition ExceptionHandler.h:23
@ DataStruct
Definition ExceptionHandler.h:21
@ Unknown
Definition ExceptionHandler.h:14
@ ReadFile
Definition ExceptionHandler.h:18
@ ParseError
Definition ExceptionHandler.h:22