hi all
I am trying to use mpl to do some simple type computation that involves nest
if statements
The logic is somewhat like
if(T is Libor)
return LiborType
if(
or(
or(T = Euribor,
T = EURLibor),
is_base_of(T, Libor)
),
ConstrType2,
if(
or(is_base_of(T, Euribor),
is_base_of(T, EURLibor)),
ConstrType1,
ConstrType
)
)
When I first coded it and instantiate T with some derived class of
Libor, the final type is always a generic type. Few more testing shows
that the inner if_ in the code below
typedef typename
boost::mpl::if_
<
boost::is_same