Google OR-Tools: ortools/base/int_type.h File Reference

template <typename IntTypeName, typename ValueType> \

constexpr IntType<IntTypeName, ValueType> operator op( \

IntType<IntTypeName, ValueType> id_1, \

IntType<IntTypeName, ValueType> id_2) { \

return IntType<IntTypeName, ValueType>(id_1.value() op id_2.value()); \

} \

template <typename IntTypeName, typename ValueType> \

constexpr IntType<IntTypeName, ValueType> operator op( \

IntType<IntTypeName, ValueType> id, \

typename IntType<IntTypeName, ValueType>::ValueType arg_val) { \

return IntType<IntTypeName, ValueType>(id.value() op arg_val); \

} \

template <typename IntTypeName, typename ValueType> \

constexpr IntType<IntTypeName, ValueType> operator op( \

typename IntType<IntTypeName, ValueType>::ValueType arg_val, \

IntType<IntTypeName, ValueType> id) { \

return IntType<IntTypeName, ValueType>(arg_val op id.value()); \

}