OBSERVABLE_MACROS.hh
Go to the documentation of this file.
1 
4 #pragma once
5 
6 #define OBSERVABLE_1(value) boca::Observable(value, #value, #value)
7 #define OBSERVABLE_2(value, string) boca::Observable(value, #value, string)
8 
9 #define ARGUMENTS(arg1, arg2, arg, ...) arg
10 #define OBSERVABLE_CHOOSE(...) ARGUMENTS(__VA_ARGS__, OBSERVABLE_2, OBSERVABLE_1, )
11 
15 #define OBSERVABLE(...) OBSERVABLE_CHOOSE(__VA_ARGS__)(__VA_ARGS__)