diff --git a/include/sqlpp11/detail/set.h b/include/sqlpp11/detail/set.h index b21ee504..5ad62062 100644 --- a/include/sqlpp11/detail/set.h +++ b/include/sqlpp11/detail/set.h @@ -194,19 +194,6 @@ namespace sqlpp struct has_duplicates : std::integral_constant::type::size::value != sizeof...(T)> {}; -#if WANT_AUTO_JOIN - template - struct begin // FIXME: Should move this into set struct - { - static_assert(wrong::value, "begin template used on invalid type container"); - }; - - template - struct begin> - { - using type = T; - }; -#endif // WANT_AUTO_JOIN } } diff --git a/include/sqlpp11/insert.h b/include/sqlpp11/insert.h index 3b27ec16..2a9392a4 100644 --- a/include/sqlpp11/insert.h +++ b/include/sqlpp11/insert.h @@ -145,7 +145,7 @@ namespace sqlpp size_t _get_no_of_parameters() const { - return _parameter_list_t::size::value; // FIXME: Need to add dynamic parameters here + return _parameter_list_t::size::value; } template diff --git a/include/sqlpp11/remove.h b/include/sqlpp11/remove.h index 3b9677c2..2262c05c 100644 --- a/include/sqlpp11/remove.h +++ b/include/sqlpp11/remove.h @@ -56,9 +56,6 @@ namespace sqlpp static_assert(vendor::is_noop::value or is_using_t::value, "invalid 'Using' argument"); static_assert(vendor::is_noop::value or is_where_t::value, "invalid 'Where' argument"); - - // FIXME: We might want to have everywhere() or all() to indicate that everything is to be removed, same with update and select - template using set_using_t = remove_t; template @@ -143,7 +140,7 @@ namespace sqlpp size_t _get_no_of_parameters() const { - return _parameter_list_t::size::value; // FIXME: Need to add dynamic parameters here + return _parameter_list_t::size::value; } template diff --git a/include/sqlpp11/select.h b/include/sqlpp11/select.h index ec83b748..45cfc94a 100644 --- a/include/sqlpp11/select.h +++ b/include/sqlpp11/select.h @@ -605,12 +605,12 @@ namespace sqlpp size_t _get_no_of_parameters() const { - return _parameter_list_t::size::value; // FIXME: Need to add dynamic parameters here + return _parameter_list_t::size::value; } size_t get_no_of_result_columns() const { - return _result_row_t::static_size(); // FIXME: Need to add the size of dynamic columns + return _result_row_t::static_size() + get_dynamic_names().size(); } // Execute diff --git a/include/sqlpp11/select_fwd.h b/include/sqlpp11/select_fwd.h index 884bcd9e..dc432e57 100644 --- a/include/sqlpp11/select_fwd.h +++ b/include/sqlpp11/select_fwd.h @@ -27,12 +27,14 @@ #ifndef SQLPP_SELECT_FWD_H #define SQLPP_SELECT_FWD_H -// FIXME: Do we really need this file? -#include #include namespace sqlpp { + namespace vendor + { + struct noop; + } // select flags struct all_t; struct distinct_t; diff --git a/include/sqlpp11/type_traits.h b/include/sqlpp11/type_traits.h index 1234b099..404466d9 100644 --- a/include/sqlpp11/type_traits.h +++ b/include/sqlpp11/type_traits.h @@ -85,7 +85,7 @@ namespace sqlpp SQLPP_IS_VALUE_TRAIT_GENERATOR(expression); SQLPP_IS_VALUE_TRAIT_GENERATOR(named_expression); SQLPP_IS_VALUE_TRAIT_GENERATOR(multi_expression); - SQLPP_IS_VALUE_TRAIT_GENERATOR(alias); // FIXME: Is this really part of the value? + SQLPP_IS_VALUE_TRAIT_GENERATOR(alias); SQLPP_IS_VALUE_TRAIT_GENERATOR(select_flag); SQLPP_IS_COLUMN_TRAIT_GENERATOR(must_not_insert); diff --git a/include/sqlpp11/update.h b/include/sqlpp11/update.h index 73dfabd1..fef3cc81 100644 --- a/include/sqlpp11/update.h +++ b/include/sqlpp11/update.h @@ -60,7 +60,6 @@ namespace sqlpp using set_assignments_t = update_t; template using set_where_t = update_t; - //FIXME: add method to explicitly indicate that EVERYTHING should be updated? using _parameter_tuple_t = std::tuple; using _parameter_list_t = typename make_parameter_list_t::type; @@ -142,7 +141,7 @@ namespace sqlpp size_t _get_no_of_parameters() const { - return _parameter_list_t::size::value; // FIXME: Need to add dynamic parameters here + return _parameter_list_t::size::value; } template diff --git a/include/sqlpp11/vendor/from.h b/include/sqlpp11/vendor/from.h index 3d533eab..4a35ed8d 100644 --- a/include/sqlpp11/vendor/from.h +++ b/include/sqlpp11/vendor/from.h @@ -55,7 +55,6 @@ namespace sqlpp // FIXME: Joins contain two tables. This is not being dealt with at the moment when looking at duplicates, for instance - template void add(Table&& table) { diff --git a/include/sqlpp11/vendor/noop.h b/include/sqlpp11/vendor/noop.h index 603fa65f..fc057cef 100644 --- a/include/sqlpp11/vendor/noop.h +++ b/include/sqlpp11/vendor/noop.h @@ -28,7 +28,6 @@ #define SQLPP_NOOP_H #include -#include namespace sqlpp { diff --git a/include/sqlpp11/vendor/select_column_list.h b/include/sqlpp11/vendor/select_column_list.h index 36efb557..a48db6f8 100644 --- a/include/sqlpp11/vendor/select_column_list.h +++ b/include/sqlpp11/vendor/select_column_list.h @@ -83,7 +83,10 @@ namespace sqlpp template<> struct dynamic_select_column_list { - struct _names_t {}; + struct _names_t + { + static constexpr size_t size() { return 0; } + }; _names_t _dynamic_expression_names; template