24#define CompareTypes_default_Types(typenames, typename1, typename2, enabletype) \
25 CompareTypes_default_Type(Plus, typenames, typename1, typename2, enabletype); \
26 CompareTypes_default_Type(Minus, typenames, typename1, typename2, enabletype); \
27 CompareTypes_default_Type(Multiplies, typenames, typename1, typename2, enabletype); \
28 CompareTypes_default_Type(Divides, typenames, typename1, typename2, enabletype); \
29 CompareTypes_default_Type(And, typenames, typename1, typename2, enabletype); \
30 CompareTypes_default_Type(Or, typenames, typename1, typename2, enabletype)
32#define CompareTypes_super(a, b, super) \
33 template <bool reverse_order, typename Enable> \
34 struct CompareTypes<a, b, reverse_order, Enable> \
36 typedef super supertype; \
38 CompareTypes_default_Types(, a, b, void)
42#undef CompareTypes_default_Types
43#undef CompareTypes_super
DualNumber< Real, DNDerivativeType, true > ADReal
DualNumber< ADReal, ADReal > ChainedADReal