libGimbal 0.1.0
C17-Based Extended Standard Library and Cross-Language Runtime Framework
Loading...
Searching...
No Matches
gimbal_api_frame.hpp
1#ifndef GIMBAL_API_FRAME_HPP
2#define GIMBAL_API_FRAME_HPP
3
4#include "gimbal_api_frame.h"
5
6#define GBL_API_TRY_BLOCK
7 Exception::TryBlock({SRC_FILE, SRC_FN, SRC_LN, SRC_COL}) = [&]()
8
9
10#define GBL_API_TRY
11 GBL_STMT_START {
12 auto blk = GBL_API_TRY_BLOCK
13
14#define GBL_API_VERIFY_CATCH()
15 ;
16 if(!blk) {
17 GBL_API_RECORD() = blk.getRecord();
18 GBL_API_RECORD_HANDLER(&blk.getRecord());
19 GBL_API_DONE();
20 }
21 } GBL_STMT_END
22
23
24
25
26#endif // GIMBAL_API_HPP
#define GBL_API_TRY_BLOCK