Blender V5.0
GHOST_utildefines.hh File Reference

Go to the source code of this file.

Macros

Branch Prediction Macros
#define LIKELY(x)
#define UNLIKELY(x)
Array Unpacking Macros
#define UNPACK2(a)
#define UNPACK3(a)
#define UNPACK4(a)
#define UNPACK2_EX(pre, a, post)
#define UNPACK3_EX(pre, a, post)
#define UNPACK4_EX(pre, a, post)
Array Macros
#define ARRAY_SIZE(arr)
Equal to Any Element (ELEM) Macro
#define _VA_ELEM2(v, a)
#define _VA_ELEM3(v, a, b)
#define _VA_ELEM4(v, a, b, c)
#define _VA_ELEM5(v, a, b, c, d)
#define _VA_ELEM6(v, a, b, c, d, e)
#define _VA_ELEM7(v, a, b, c, d, e, f)
#define _VA_ELEM8(v, a, b, c, d, e, f, g)
#define _VA_ELEM9(v, a, b, c, d, e, f, g, h)
#define _VA_ELEM10(v, a, b, c, d, e, f, g, h, i)
#define _VA_ELEM11(v, a, b, c, d, e, f, g, h, i, j)
#define _VA_ELEM12(v, a, b, c, d, e, f, g, h, i, j, k)
#define _VA_ELEM13(v, a, b, c, d, e, f, g, h, i, j, k, l)
#define _VA_ELEM14(v, a, b, c, d, e, f, g, h, i, j, k, l, m)
#define _VA_ELEM15(v, a, b, c, d, e, f, g, h, i, j, k, l, m, n)
#define _VA_ELEM16(v, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o)
#define _VA_ELEM17(v, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p)
#define ELEM(...)
String Macros
#define STRINGIFY_ARG(x)
#define STRINGIFY_APPEND(a, b)
#define STRINGIFY(x)
#define STREQ(a, b)
#define STRCASEEQ(a, b)
#define STREQLEN(a, b, n)
#define STRCASEEQLEN(a, b, n)
#define STRPREFIX(a, b)

Detailed Description

Utility defines (avoid depending on BLI_utildefines.h).

Definition in file GHOST_utildefines.hh.

Macro Definition Documentation

◆ _VA_ELEM10

#define _VA_ELEM10 ( v,
a,
b,
c,
d,
e,
f,
g,
h,
i )
Value:
(_VA_ELEM9(v, a, b, c, d, e, f, g, h) || _VA_ELEM2(v, i))
#define _VA_ELEM9(v, a, b, c, d, e, f, g, h)
#define _VA_ELEM2(v, a)
ATTR_WARN_UNUSED_RESULT const BMVert const BMEdge * e
ATTR_WARN_UNUSED_RESULT const BMVert * v
i
Definition text_draw.cc:230

Definition at line 84 of file GHOST_utildefines.hh.

◆ _VA_ELEM11

#define _VA_ELEM11 ( v,
a,
b,
c,
d,
e,
f,
g,
h,
i,
j )
Value:
(_VA_ELEM10(v, a, b, c, d, e, f, g, h, i) || _VA_ELEM2(v, j))
#define _VA_ELEM10(v, a, b, c, d, e, f, g, h, i)

Definition at line 86 of file GHOST_utildefines.hh.

◆ _VA_ELEM12

#define _VA_ELEM12 ( v,
a,
b,
c,
d,
e,
f,
g,
h,
i,
j,
k )
Value:
(_VA_ELEM11(v, a, b, c, d, e, f, g, h, i, j) || _VA_ELEM2(v, k))
#define _VA_ELEM11(v, a, b, c, d, e, f, g, h, i, j)

Definition at line 88 of file GHOST_utildefines.hh.

◆ _VA_ELEM13

#define _VA_ELEM13 ( v,
a,
b,
c,
d,
e,
f,
g,
h,
i,
j,
k,
l )
Value:
(_VA_ELEM12(v, a, b, c, d, e, f, g, h, i, j, k) || _VA_ELEM2(v, l))
#define _VA_ELEM12(v, a, b, c, d, e, f, g, h, i, j, k)
ATTR_WARN_UNUSED_RESULT const BMLoop * l

Definition at line 90 of file GHOST_utildefines.hh.

◆ _VA_ELEM14

#define _VA_ELEM14 ( v,
a,
b,
c,
d,
e,
f,
g,
h,
i,
j,
k,
l,
m )
Value:
(_VA_ELEM13(v, a, b, c, d, e, f, g, h, i, j, k, l) || _VA_ELEM2(v, m))
#define _VA_ELEM13(v, a, b, c, d, e, f, g, h, i, j, k, l)

Definition at line 92 of file GHOST_utildefines.hh.

◆ _VA_ELEM15

#define _VA_ELEM15 ( v,
a,
b,
c,
d,
e,
f,
g,
h,
i,
j,
k,
l,
m,
n )
Value:
(_VA_ELEM14(v, a, b, c, d, e, f, g, h, i, j, k, l, m) || _VA_ELEM2(v, n))
#define _VA_ELEM14(v, a, b, c, d, e, f, g, h, i, j, k, l, m)

Definition at line 94 of file GHOST_utildefines.hh.

◆ _VA_ELEM16

#define _VA_ELEM16 ( v,
a,
b,
c,
d,
e,
f,
g,
h,
i,
j,
k,
l,
m,
n,
o )
Value:
(_VA_ELEM15(v, a, b, c, d, e, f, g, h, i, j, k, l, m, n) || _VA_ELEM2(v, o))
#define _VA_ELEM15(v, a, b, c, d, e, f, g, h, i, j, k, l, m, n)

Definition at line 96 of file GHOST_utildefines.hh.

◆ _VA_ELEM17

#define _VA_ELEM17 ( v,
a,
b,
c,
d,
e,
f,
g,
h,
i,
j,
k,
l,
m,
n,
o,
p )
Value:
(_VA_ELEM16(v, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) || _VA_ELEM2(v, p))
#define _VA_ELEM16(v, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o)

Definition at line 98 of file GHOST_utildefines.hh.

◆ _VA_ELEM2

#define _VA_ELEM2 ( v,
a )
Value:
((v) == (a))

Definition at line 69 of file GHOST_utildefines.hh.

◆ _VA_ELEM3

#define _VA_ELEM3 ( v,
a,
b )
Value:
(_VA_ELEM2(v, a) || _VA_ELEM2(v, b))

Definition at line 70 of file GHOST_utildefines.hh.

◆ _VA_ELEM4

#define _VA_ELEM4 ( v,
a,
b,
c )
Value:
(_VA_ELEM3(v, a, b) || _VA_ELEM2(v, c))
#define _VA_ELEM3(v, a, b)

Definition at line 72 of file GHOST_utildefines.hh.

◆ _VA_ELEM5

#define _VA_ELEM5 ( v,
a,
b,
c,
d )
Value:
(_VA_ELEM4(v, a, b, c) || _VA_ELEM2(v, d))
#define _VA_ELEM4(v, a, b, c)

Definition at line 74 of file GHOST_utildefines.hh.

◆ _VA_ELEM6

#define _VA_ELEM6 ( v,
a,
b,
c,
d,
e )
Value:
(_VA_ELEM5(v, a, b, c, d) || _VA_ELEM2(v, e))
#define _VA_ELEM5(v, a, b, c, d)

Definition at line 76 of file GHOST_utildefines.hh.

◆ _VA_ELEM7

#define _VA_ELEM7 ( v,
a,
b,
c,
d,
e,
f )
Value:
(_VA_ELEM6(v, a, b, c, d, e) || _VA_ELEM2(v, f))
#define _VA_ELEM6(v, a, b, c, d, e)

Definition at line 78 of file GHOST_utildefines.hh.

◆ _VA_ELEM8

#define _VA_ELEM8 ( v,
a,
b,
c,
d,
e,
f,
g )
Value:
(_VA_ELEM7(v, a, b, c, d, e, f) || _VA_ELEM2(v, g))
#define _VA_ELEM7(v, a, b, c, d, e, f)

Definition at line 80 of file GHOST_utildefines.hh.

◆ _VA_ELEM9

#define _VA_ELEM9 ( v,
a,
b,
c,
d,
e,
f,
g,
h )
Value:
(_VA_ELEM8(v, a, b, c, d, e, f, g) || _VA_ELEM2(v, h))
#define _VA_ELEM8(v, a, b, c, d, e, f, g)

Definition at line 82 of file GHOST_utildefines.hh.

◆ ARRAY_SIZE

#define ARRAY_SIZE ( arr)
Value:
(sizeof(arr) / sizeof(*(arr)))

Definition at line 55 of file GHOST_utildefines.hh.

◆ ELEM

#define ELEM ( ...)
Value:
VA_NARGS_CALL_OVERLOAD(_VA_ELEM, __VA_ARGS__)
#define VA_NARGS_CALL_OVERLOAD(name,...)

Definition at line 103 of file GHOST_utildefines.hh.

◆ LIKELY

#define LIKELY ( x)
Value:

Definition at line 24 of file GHOST_utildefines.hh.

◆ STRCASEEQ

#define STRCASEEQ ( a,
b )
Value:
(strcasecmp(a, b) == 0)

Definition at line 128 of file GHOST_utildefines.hh.

◆ STRCASEEQLEN

#define STRCASEEQLEN ( a,
b,
n )
Value:
(strncasecmp(a, b, n) == 0)

Definition at line 130 of file GHOST_utildefines.hh.

◆ STREQ

#define STREQ ( a,
b )
Value:
(strcmp(a, b) == 0)

Definition at line 127 of file GHOST_utildefines.hh.

◆ STREQLEN

#define STREQLEN ( a,
b,
n )
Value:
(strncmp(a, b, n) == 0)

Definition at line 129 of file GHOST_utildefines.hh.

◆ STRINGIFY

#define STRINGIFY ( x)
Value:
#define STRINGIFY_APPEND(a, b)

Definition at line 119 of file GHOST_utildefines.hh.

◆ STRINGIFY_APPEND

#define STRINGIFY_APPEND ( a,
b )
Value:
"" a #b

Definition at line 118 of file GHOST_utildefines.hh.

◆ STRINGIFY_ARG

#define STRINGIFY_ARG ( x)
Value:
"" #x

Definition at line 117 of file GHOST_utildefines.hh.

◆ STRPREFIX

#define STRPREFIX ( a,
b )
Value:
(strncmp((a), (b), strlen(b)) == 0)

Definition at line 132 of file GHOST_utildefines.hh.

◆ UNLIKELY

#define UNLIKELY ( x)
Value:
(x)

Definition at line 25 of file GHOST_utildefines.hh.

◆ UNPACK2

#define UNPACK2 ( a)
Value:
((a)[0]), ((a)[1])

Definition at line 35 of file GHOST_utildefines.hh.

◆ UNPACK2_EX

#define UNPACK2_EX ( pre,
a,
post )
Value:
(pre((a)[0]) post), (pre((a)[1]) post)

Definition at line 39 of file GHOST_utildefines.hh.

◆ UNPACK3

#define UNPACK3 ( a)
Value:
UNPACK2(a), ((a)[2])
#define UNPACK2(a)

Definition at line 36 of file GHOST_utildefines.hh.

◆ UNPACK3_EX

#define UNPACK3_EX ( pre,
a,
post )
Value:
UNPACK2_EX(pre, a, post), (pre((a)[2]) post)
#define UNPACK2_EX(pre, a, post)

Definition at line 40 of file GHOST_utildefines.hh.

◆ UNPACK4

#define UNPACK4 ( a)
Value:
UNPACK3(a), ((a)[3])
#define UNPACK3(a)

Definition at line 37 of file GHOST_utildefines.hh.

◆ UNPACK4_EX

#define UNPACK4_EX ( pre,
a,
post )
Value:
UNPACK3_EX(pre, a, post), (pre((a)[3]) post)
#define UNPACK3_EX(pre, a, post)

Definition at line 41 of file GHOST_utildefines.hh.