Loading...
Searching...
No Matches
Go to the documentation of this file.
16static inline signed int min2_signed(
signed int a,
signed int b) {
17 return (a < b) ? a : b;
21static inline unsigned int min2_unsigned(
unsigned int a,
unsigned int b) {
22 return (a < b) ? a : b;
26static inline float min2_float(
float a,
float b) {
27 return (a < b) ? a : b;
30#define MINOF2(a, b) _Generic((a) + (b), \
31 signed int: min2_signed, \
32 unsigned int: min2_unsigned, \
36#define MINOF3(a, b, c) MINOF2(MINOF2(a, b), c)
37#define MINOF4(a, b, c, d) MINOF2(MINOF2(a, b), MINOF2(c, d))
41#define DISPATCH_MINOF(_1, _2, _3, _4, NAME, ...) NAME
42#define MINOF(...) DISPATCH_MINOF(__VA_ARGS__, MINOF4, MINOF3, MINOF2)(__VA_ARGS__)