54 using AdjustT =
typename std::conditional<
55 std::is_const<typename std::remove_reference<Pattern>::type>::value,
56 typename std::conditional<std::is_lvalue_reference<Pattern>::value,
57 const T&,
const T&&>::type,
58 typename std::conditional<std::is_lvalue_reference<Pattern>::value, T&,
61 template <
typename MockType>
62 static AdjustT<MockType> Adjust(
const MockType& mock) {
63 return static_cast<AdjustT<MockType>
>(
const_cast<MockType&
>(mock));