From 95ffdb29672fcdc8d5524e4dff8ab1829b7dc33f Mon Sep 17 00:00:00 2001 From: rbock Date: Sat, 9 Apr 2016 22:24:50 +0200 Subject: [PATCH] More cleanup ... and maybe MSVC will be happy again, too? --- include/sqlpp11/basic_expression_operators.h | 43 ++++++++++--------- .../data_types/boolean/expression_operators.h | 2 +- .../day_point/expression_operators.h | 2 +- .../floating_point/expression_operators.h | 2 +- .../integral/expression_operators.h | 2 +- .../no_value/expression_operators.h | 2 +- .../data_types/text/expression_operators.h | 2 +- .../time_point/expression_operators.h | 2 +- 8 files changed, 30 insertions(+), 27 deletions(-) diff --git a/include/sqlpp11/basic_expression_operators.h b/include/sqlpp11/basic_expression_operators.h index fbf9a490..462ad6a7 100644 --- a/include/sqlpp11/basic_expression_operators.h +++ b/include/sqlpp11/basic_expression_operators.h @@ -46,67 +46,70 @@ namespace sqlpp SQLPP_PORTABLE_STATIC_ASSERT(assert_comparison_lhs_rhs_differ_t, "identical lhs and rhs operands in comparison"); template - using check_comparison_t = static_combined_check_t< - static_check_t>::value, - is_multi_expression_t>::value>::value, + using check_comparison_impl = static_combined_check_t< + static_check_t::value, is_multi_expression_t::value>::value, assert_comparison_rhs_is_expression_t>, - static_check_t::template _is_valid_operand>::value, + static_check_t::template _is_valid_operand::value, assert_comparison_rhs_is_valid_operand_t>, static_check_t::value, assert_comparison_lhs_rhs_differ_t>>; + template + using check_comparison_t = check_comparison_impl>; + template - using check_in_t = static_combined_check_t< - static_check_t>::value...>::value, - assert_comparison_rhs_is_expression_t>, - static_check_t::template _is_valid_operand< - sqlpp::wrap_operand_t>::value...>::value, + using check_in_impl = static_combined_check_t< + static_check_t::value...>::value, assert_comparison_rhs_is_expression_t>, + static_check_t::template _is_valid_operand::value...>::value, assert_comparison_rhs_is_valid_operand_t>, static_check_t::value...>::value, assert_comparison_lhs_rhs_differ_t>>; + template + using check_in_t = check_in_impl...>; + namespace detail { template class Expr, typename Lhs, typename Rhs> - struct new_binary_expression_impl + struct comparison_expression_impl { using type = bad_expression; }; template