use has_invB() to decide if the generic or trivial versions of getInvB_() are used

this used to be has_pvtRegionIndex(). While there currently is no
difference in practice because the only fluid state that exhibits a
pvtRegionIndex() method also has invB(), a bug is a bug...
This commit is contained in:
Andreas Lauser 2018-01-19 11:20:14 +01:00
parent 847213f36e
commit d3b20fa5c5

View File

@ -53,13 +53,13 @@ unsigned getPvtRegionIndex_(typename std::enable_if<!HasMember_pvtRegionIndex<Fl
OPM_GENERATE_HAS_MEMBER(invB, ) // Creates 'HasMember_invB<T>'.
template <class FluidState, class FluidSystem, class LhsEval>
LhsEval getInvB_(typename std::enable_if<HasMember_pvtRegionIndex<FluidState>::value,
LhsEval getInvB_(typename std::enable_if<HasMember_invB<FluidState>::value,
const FluidState&>::type fluidState,
unsigned phaseIdx)
{ return Opm::decay<LhsEval>(fluidState.invB(phaseIdx)); }
template <class FluidState, class FluidSystem, class LhsEval>
LhsEval getInvB_(typename std::enable_if<!HasMember_pvtRegionIndex<FluidState>::value,
LhsEval getInvB_(typename std::enable_if<!HasMember_invB<FluidState>::value,
const FluidState&>::type fluidState,
unsigned phaseIdx)
{