mirror of
https://github.com/rbock/sqlpp11.git
synced 2024-11-15 20:31:16 +08:00
Disabled select(tab). Use select(all_of(tab)) instead.
This commit is contained in:
parent
96c6e5d435
commit
4d8e448152
@ -32,31 +32,38 @@ namespace sqlpp
|
||||
namespace detail
|
||||
{
|
||||
template<typename Expr>
|
||||
auto make_single_expression_tuple(Expr&& expr) -> typename std::enable_if<is_named_expression_t<typename std::decay<Expr>::type>::value, decltype(std::make_tuple(expr))>::type
|
||||
auto make_single_expression_tuple(Expr&& expr)
|
||||
-> typename std::enable_if<is_named_expression_t<typename std::decay<Expr>::type>::value, decltype(std::make_tuple(expr))>::type
|
||||
{
|
||||
return std::make_tuple(std::forward<Expr>(expr));
|
||||
};
|
||||
|
||||
template<typename Expr>
|
||||
auto make_single_expression_tuple(Expr&& expr) -> typename std::enable_if<is_select_flag_t<typename std::decay<Expr>::type>::value, std::tuple<>>::type
|
||||
auto make_single_expression_tuple(Expr&& expr)
|
||||
-> typename std::enable_if<is_select_flag_t<typename std::decay<Expr>::type>::value, std::tuple<>>::type
|
||||
{
|
||||
return {};
|
||||
};
|
||||
|
||||
/*
|
||||
template<typename Tab>
|
||||
auto make_single_expression_tuple(Tab&& tab) -> typename std::enable_if<is_table_t<typename std::decay<Tab>::type>::value, typename std::decay<Tab>::type::_all_of_t>::type
|
||||
auto make_single_expression_tuple(Tab&& tab)
|
||||
-> typename std::enable_if<is_table_t<typename std::decay<Tab>::type>::value, typename std::decay<Tab>::type::_all_of_t>::type
|
||||
{
|
||||
return {};
|
||||
};
|
||||
*/
|
||||
|
||||
template<typename... Expr>
|
||||
auto make_single_expression_tuple(std::tuple<Expr...>&& t) -> std::tuple<Expr...>
|
||||
auto make_single_expression_tuple(std::tuple<Expr...>&& t)
|
||||
-> std::tuple<Expr...>
|
||||
{
|
||||
return t;
|
||||
};
|
||||
|
||||
template<typename... Expr>
|
||||
auto make_expression_tuple(Expr&&... expr) -> decltype(std::tuple_cat(make_single_expression_tuple(std::forward<Expr>(expr))...))
|
||||
auto make_expression_tuple(Expr&&... expr)
|
||||
-> decltype(std::tuple_cat(make_single_expression_tuple(std::forward<Expr>(expr))...))
|
||||
{
|
||||
return std::tuple_cat(make_single_expression_tuple(std::forward<Expr>(expr))...);
|
||||
};
|
||||
|
@ -224,9 +224,9 @@ int main()
|
||||
{
|
||||
auto a = select(all_of(t));
|
||||
auto b = select(t.alpha, t.beta, t.gamma);
|
||||
auto c = select(t);
|
||||
//auto c = select(t);
|
||||
static_assert(std::is_same<decltype(a), decltype(b)>::value, "all_of(t) has to be expanded by select()");
|
||||
static_assert(std::is_same<decltype(b), decltype(c)>::value, "t has to be expanded by select()");
|
||||
//static_assert(std::is_same<decltype(b), decltype(c)>::value, "t has to be expanded by select()");
|
||||
}
|
||||
|
||||
// Test that select(all_of(tab)) is expanded in multi_column
|
||||
@ -238,7 +238,7 @@ int main()
|
||||
|
||||
// Test that select(tab) is expanded in multi_column
|
||||
{
|
||||
auto a = multi_column(sqlpp::alias::a, t);
|
||||
auto a = multi_column(sqlpp::alias::a, all_of(t));
|
||||
auto b = multi_column(sqlpp::alias::a, t.alpha, t.beta, t.gamma);
|
||||
static_assert(std::is_same<decltype(a), decltype(b)>::value, "t has to be expanded by multi_column");
|
||||
}
|
||||
@ -263,7 +263,7 @@ int main()
|
||||
}
|
||||
|
||||
{
|
||||
auto s = dynamic_select(db, t).dynamic_from().dynamic_where().dynamic_limit().dynamic_offset();
|
||||
auto s = dynamic_select(db, all_of(t)).dynamic_from().dynamic_where().dynamic_limit().dynamic_offset();
|
||||
s = s.add_from(t);
|
||||
s = s.add_where(t.alpha > 7);
|
||||
s = s.set_limit(30);
|
||||
|
Loading…
Reference in New Issue
Block a user