HPCToolkit
wrapper-macros.h File Reference

Go to the source code of this file.

Macros

#define VA_DECLARE_ARG(type_t, x)   type_t x
 
#define VA_DECLARE_ARGS20(type_t, x, ...)   VA_DECLARE_ARG(type_t, x), VA_DECLARE_ARGS18(__VA_ARGS__)
 
#define VA_DECLARE_ARGS18(type_t, x, ...)   VA_DECLARE_ARG(type_t, x), VA_DECLARE_ARGS16(__VA_ARGS__)
 
#define VA_DECLARE_ARGS16(type_t, x, ...)   VA_DECLARE_ARG(type_t, x), VA_DECLARE_ARGS14(__VA_ARGS__)
 
#define VA_DECLARE_ARGS14(type_t, x, ...)   VA_DECLARE_ARG(type_t, x), VA_DECLARE_ARGS12(__VA_ARGS__)
 
#define VA_DECLARE_ARGS12(type_t, x, ...)   VA_DECLARE_ARG(type_t, x), VA_DECLARE_ARGS10(__VA_ARGS__)
 
#define VA_DECLARE_ARGS10(type_t, x, ...)   VA_DECLARE_ARG(type_t, x), VA_DECLARE_ARGS8(__VA_ARGS__)
 
#define VA_DECLARE_ARGS8(type_t, x, ...)   VA_DECLARE_ARG(type_t, x), VA_DECLARE_ARGS6(__VA_ARGS__)
 
#define VA_DECLARE_ARGS6(type_t, x, ...)   VA_DECLARE_ARG(type_t, x), VA_DECLARE_ARGS4(__VA_ARGS__)
 
#define VA_DECLARE_ARGS4(type_t, x, ...)   VA_DECLARE_ARG(type_t, x), VA_DECLARE_ARGS2(__VA_ARGS__)
 
#define VA_DECLARE_ARGS2(type_t, x, ...)   VA_DECLARE_ARG(type_t, x)
 
#define VA_DECLARE_ARGS1(type_t, ...)   type_t
 
#define VA_DECLARE_ARGS0(...)   void
 
#define VA_CALL_ARG(type_t, x)   x
 
#define VA_CALL_ARGS20(type_t, x, ...)   VA_CALL_ARG(type_t, x), VA_CALL_ARGS18(__VA_ARGS__)
 
#define VA_CALL_ARGS18(type_t, x, ...)   VA_CALL_ARG(type_t, x), VA_CALL_ARGS16(__VA_ARGS__)
 
#define VA_CALL_ARGS16(type_t, x, ...)   VA_CALL_ARG(type_t, x), VA_CALL_ARGS14(__VA_ARGS__)
 
#define VA_CALL_ARGS14(type_t, x, ...)   VA_CALL_ARG(type_t, x), VA_CALL_ARGS12(__VA_ARGS__)
 
#define VA_CALL_ARGS12(type_t, x, ...)   VA_CALL_ARG(type_t, x), VA_CALL_ARGS10(__VA_ARGS__)
 
#define VA_CALL_ARGS10(type_t, x, ...)   VA_CALL_ARG(type_t, x), VA_CALL_ARGS8(__VA_ARGS__)
 
#define VA_CALL_ARGS8(type_t, x, ...)   VA_CALL_ARG(type_t, x), VA_CALL_ARGS6(__VA_ARGS__)
 
#define VA_CALL_ARGS6(type_t, x, ...)   VA_CALL_ARG(type_t, x), VA_CALL_ARGS4(__VA_ARGS__)
 
#define VA_CALL_ARGS4(type_t, x, ...)   VA_CALL_ARG(type_t, x), VA_CALL_ARGS2(__VA_ARGS__)
 
#define VA_CALL_ARGS2(type_t, x, ...)   VA_CALL_ARG(type_t, x)
 
#define VA_CALL_ARGS1(type_t, ...)
 
#define VA_CALL_ARGS0(...)
 
#define VA_COMMA0
 
#define VA_COMMA1   ,
 
#define _VA_CONCAT2(name, x)   name##x
 
#define _VA_CONCAT3(x, y, z, ...)   x##y##z
 
#define __twentyone_and_0__   0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 0
 
#define _VA_SELECT22_INTERNAL(_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, ...)   _21
 
#define _VA_SELECT22(...)   _VA_SELECT22_INTERNAL(__VA_ARGS__)
 
#define VA_COUNT_ARGS(...)
 
#define X_ARGS(...)   _VA_CONCAT3(__twentyone,_and_0__,__VA_ARGS__)
 
#define ONE_IF_NONEMPTY(...)
 
#define VA_CONCAT2_EVAL(name, x)   _VA_CONCAT2(name,x)
 
#define VA_COMMA_IF_NONEMPTY(...)   VA_CONCAT2_EVAL(VA_COMMA,ONE_IF_NONEMPTY(__VA_ARGS__))
 
#define VA_DECLARE_ARGS(...)
 
#define VA_CALL_ARGS(...)
 
#define VA_FN_CALL(fn, ...)
 
#define VA_FN_DECLARE(tfn, fn, ...)
 

Macro Definition Documentation

◆ __twentyone_and_0__

#define __twentyone_and_0__   0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 0

Definition at line 127 of file wrapper-macros.h.

◆ _VA_CONCAT2

#define _VA_CONCAT2 (   name,
 
)    name##x

Definition at line 112 of file wrapper-macros.h.

◆ _VA_CONCAT3

#define _VA_CONCAT3 (   x,
  y,
  z,
  ... 
)    x##y##z

Definition at line 119 of file wrapper-macros.h.

◆ _VA_SELECT22

#define _VA_SELECT22 (   ...)    _VA_SELECT22_INTERNAL(__VA_ARGS__)

Definition at line 141 of file wrapper-macros.h.

◆ _VA_SELECT22_INTERNAL

#define _VA_SELECT22_INTERNAL (   _0,
  _1,
  _2,
  _3,
  _4,
  _5,
  _6,
  _7,
  _8,
  _9,
  _10,
  _11,
  _12,
  _13,
  _14,
  _15,
  _16,
  _17,
  _18,
  _19,
  _20,
  _21,
  ... 
)    _21

Definition at line 138 of file wrapper-macros.h.

◆ ONE_IF_NONEMPTY

#define ONE_IF_NONEMPTY (   ...)
Value:
_VA_SELECT22(_VA_CONCAT3(__twentyone,_and_0__,__VA_ARGS__), \
__VA_ARGS__,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1)
#define _VA_CONCAT3(x, y, z,...)
#define _VA_SELECT22(...)

Definition at line 159 of file wrapper-macros.h.

◆ VA_CALL_ARG

#define VA_CALL_ARG (   type_t,
 
)    x

Definition at line 64 of file wrapper-macros.h.

◆ VA_CALL_ARGS

#define VA_CALL_ARGS (   ...)
Value:
__VA_ARGS__)
#define VA_CONCAT2_EVAL(name, x)
#define VA_CALL_ARGS(...)
#define VA_COUNT_ARGS(...)

Definition at line 192 of file wrapper-macros.h.

◆ VA_CALL_ARGS0

#define VA_CALL_ARGS0 (   ...)

Definition at line 98 of file wrapper-macros.h.

◆ VA_CALL_ARGS1

#define VA_CALL_ARGS1 (   type_t,
  ... 
)

Definition at line 96 of file wrapper-macros.h.

◆ VA_CALL_ARGS10

#define VA_CALL_ARGS10 (   type_t,
  x,
  ... 
)    VA_CALL_ARG(type_t, x), VA_CALL_ARGS8(__VA_ARGS__)

Definition at line 81 of file wrapper-macros.h.

◆ VA_CALL_ARGS12

#define VA_CALL_ARGS12 (   type_t,
  x,
  ... 
)    VA_CALL_ARG(type_t, x), VA_CALL_ARGS10(__VA_ARGS__)

Definition at line 78 of file wrapper-macros.h.

◆ VA_CALL_ARGS14

#define VA_CALL_ARGS14 (   type_t,
  x,
  ... 
)    VA_CALL_ARG(type_t, x), VA_CALL_ARGS12(__VA_ARGS__)

Definition at line 75 of file wrapper-macros.h.

◆ VA_CALL_ARGS16

#define VA_CALL_ARGS16 (   type_t,
  x,
  ... 
)    VA_CALL_ARG(type_t, x), VA_CALL_ARGS14(__VA_ARGS__)

Definition at line 72 of file wrapper-macros.h.

◆ VA_CALL_ARGS18

#define VA_CALL_ARGS18 (   type_t,
  x,
  ... 
)    VA_CALL_ARG(type_t, x), VA_CALL_ARGS16(__VA_ARGS__)

Definition at line 69 of file wrapper-macros.h.

◆ VA_CALL_ARGS2

#define VA_CALL_ARGS2 (   type_t,
  x,
  ... 
)    VA_CALL_ARG(type_t, x)

Definition at line 93 of file wrapper-macros.h.

◆ VA_CALL_ARGS20

#define VA_CALL_ARGS20 (   type_t,
  x,
  ... 
)    VA_CALL_ARG(type_t, x), VA_CALL_ARGS18(__VA_ARGS__)

Definition at line 66 of file wrapper-macros.h.

◆ VA_CALL_ARGS4

#define VA_CALL_ARGS4 (   type_t,
  x,
  ... 
)    VA_CALL_ARG(type_t, x), VA_CALL_ARGS2(__VA_ARGS__)

Definition at line 90 of file wrapper-macros.h.

◆ VA_CALL_ARGS6

#define VA_CALL_ARGS6 (   type_t,
  x,
  ... 
)    VA_CALL_ARG(type_t, x), VA_CALL_ARGS4(__VA_ARGS__)

Definition at line 87 of file wrapper-macros.h.

◆ VA_CALL_ARGS8

#define VA_CALL_ARGS8 (   type_t,
  x,
  ... 
)    VA_CALL_ARG(type_t, x), VA_CALL_ARGS6(__VA_ARGS__)

Definition at line 84 of file wrapper-macros.h.

◆ VA_COMMA0

#define VA_COMMA0

Definition at line 104 of file wrapper-macros.h.

◆ VA_COMMA1

#define VA_COMMA1   ,

Definition at line 105 of file wrapper-macros.h.

◆ VA_COMMA_IF_NONEMPTY

#define VA_COMMA_IF_NONEMPTY (   ...)    VA_CONCAT2_EVAL(VA_COMMA,ONE_IF_NONEMPTY(__VA_ARGS__))

Definition at line 175 of file wrapper-macros.h.

◆ VA_CONCAT2_EVAL

#define VA_CONCAT2_EVAL (   name,
 
)    _VA_CONCAT2(name,x)

Definition at line 168 of file wrapper-macros.h.

◆ VA_COUNT_ARGS

#define VA_COUNT_ARGS (   ...)
Value:
_VA_SELECT22(_VA_CONCAT3(__twentyone,_and_0__,__VA_ARGS__), \
__VA_ARGS__,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1)
#define _VA_CONCAT3(x, y, z,...)
#define _VA_SELECT22(...)

Definition at line 148 of file wrapper-macros.h.

◆ VA_DECLARE_ARG

#define VA_DECLARE_ARG (   type_t,
 
)    type_t x

Definition at line 22 of file wrapper-macros.h.

◆ VA_DECLARE_ARGS

#define VA_DECLARE_ARGS (   ...)
Value:
__VA_ARGS__)
#define VA_DECLARE_ARGS(...)
#define VA_CONCAT2_EVAL(name, x)
#define VA_COUNT_ARGS(...)

Definition at line 183 of file wrapper-macros.h.

◆ VA_DECLARE_ARGS0

#define VA_DECLARE_ARGS0 (   ...)    void

Definition at line 56 of file wrapper-macros.h.

◆ VA_DECLARE_ARGS1

#define VA_DECLARE_ARGS1 (   type_t,
  ... 
)    type_t

Definition at line 54 of file wrapper-macros.h.

◆ VA_DECLARE_ARGS10

#define VA_DECLARE_ARGS10 (   type_t,
  x,
  ... 
)    VA_DECLARE_ARG(type_t, x), VA_DECLARE_ARGS8(__VA_ARGS__)

Definition at line 39 of file wrapper-macros.h.

◆ VA_DECLARE_ARGS12

#define VA_DECLARE_ARGS12 (   type_t,
  x,
  ... 
)    VA_DECLARE_ARG(type_t, x), VA_DECLARE_ARGS10(__VA_ARGS__)

Definition at line 36 of file wrapper-macros.h.

◆ VA_DECLARE_ARGS14

#define VA_DECLARE_ARGS14 (   type_t,
  x,
  ... 
)    VA_DECLARE_ARG(type_t, x), VA_DECLARE_ARGS12(__VA_ARGS__)

Definition at line 33 of file wrapper-macros.h.

◆ VA_DECLARE_ARGS16

#define VA_DECLARE_ARGS16 (   type_t,
  x,
  ... 
)    VA_DECLARE_ARG(type_t, x), VA_DECLARE_ARGS14(__VA_ARGS__)

Definition at line 30 of file wrapper-macros.h.

◆ VA_DECLARE_ARGS18

#define VA_DECLARE_ARGS18 (   type_t,
  x,
  ... 
)    VA_DECLARE_ARG(type_t, x), VA_DECLARE_ARGS16(__VA_ARGS__)

Definition at line 27 of file wrapper-macros.h.

◆ VA_DECLARE_ARGS2

#define VA_DECLARE_ARGS2 (   type_t,
  x,
  ... 
)    VA_DECLARE_ARG(type_t, x)

Definition at line 51 of file wrapper-macros.h.

◆ VA_DECLARE_ARGS20

#define VA_DECLARE_ARGS20 (   type_t,
  x,
  ... 
)    VA_DECLARE_ARG(type_t, x), VA_DECLARE_ARGS18(__VA_ARGS__)

Definition at line 24 of file wrapper-macros.h.

◆ VA_DECLARE_ARGS4

#define VA_DECLARE_ARGS4 (   type_t,
  x,
  ... 
)    VA_DECLARE_ARG(type_t, x), VA_DECLARE_ARGS2(__VA_ARGS__)

Definition at line 48 of file wrapper-macros.h.

◆ VA_DECLARE_ARGS6

#define VA_DECLARE_ARGS6 (   type_t,
  x,
  ... 
)    VA_DECLARE_ARG(type_t, x), VA_DECLARE_ARGS4(__VA_ARGS__)

Definition at line 45 of file wrapper-macros.h.

◆ VA_DECLARE_ARGS8

#define VA_DECLARE_ARGS8 (   type_t,
  x,
  ... 
)    VA_DECLARE_ARG(type_t, x), VA_DECLARE_ARGS6(__VA_ARGS__)

Definition at line 42 of file wrapper-macros.h.

◆ VA_FN_CALL

#define VA_FN_CALL (   fn,
  ... 
)
Value:
__VA_ARGS__))
#define VA_CONCAT2_EVAL(name, x)
#define VA_CALL_ARGS(...)
#define VA_COUNT_ARGS(...)

Definition at line 196 of file wrapper-macros.h.

◆ VA_FN_DECLARE

#define VA_FN_DECLARE (   tfn,
  fn,
  ... 
)
Value:
__VA_ARGS__))
#define VA_DECLARE_ARGS(...)
#define VA_CONCAT2_EVAL(name, x)
#define VA_COUNT_ARGS(...)

Definition at line 201 of file wrapper-macros.h.

◆ X_ARGS

#define X_ARGS (   ...)    _VA_CONCAT3(__twentyone,_and_0__,__VA_ARGS__)

Definition at line 153 of file wrapper-macros.h.