Macros
pp.hpp File Reference

Set of macro used by openvino. More...

Go to the source code of this file.

Macros

#define OV_PP_TOSTRING(...)   OV_PP_TOSTRING_(__VA_ARGS__)
 
#define OV_PP_TOSTRING_(...)   #__VA_ARGS__
 
#define OV_PP_EXPAND(X)   X
 
#define OV_PP_NARG(...)   OV_PP_EXPAND( OV_PP_NARG_(__VA_ARGS__, OV_PP_RSEQ_N()) )
 
#define OV_PP_NARG_(...)   OV_PP_EXPAND( OV_PP_ARG_N(__VA_ARGS__) )
 
#define OV_PP_ARG_N(_1, _2, _3, _4, N, ...)   N
 
#define OV_PP_RSEQ_N()   4, 3, 2, 1, 0
 
#define OV_PP_CAT_(x, y)   x ## y
 
#define OV_PP_CAT(x, y)   OV_PP_CAT_(x, y)
 
#define OV_PP_CAT3_(x, y, z)   x ## y ## z
 
#define OV_PP_CAT3(x, y, z)   OV_PP_CAT3_(x, y, z)
 
#define OV_PP_CAT4_(x, y, z, w)   x ## y ## z ## w
 
#define OV_PP_CAT4(x, y, z, w)   OV_PP_CAT4_(x, y, z, w)
 
#define OV_PP_OVERLOAD(NAME, ...)   OV_PP_EXPAND( OV_PP_CAT3(NAME, _, OV_PP_EXPAND( OV_PP_NARG(__VA_ARGS__) ))(__VA_ARGS__) )
 

Detailed Description

Set of macro used by openvino.