16 template < auto Data >
22 template < fgl::
string_literal column, fgl::
string_literal table_name, fgl::
string_literal table_key_name >
25 constexpr fgl::string_literal begin {
"UPDATE " };
26 constexpr fgl::string_literal set {
" SET " };
27 constexpr fgl::string_literal where {
" = ? WHERE " };
28 constexpr fgl::string_literal end {
" = ?" };
29 constexpr auto& static_data {
32 return std::string_view( static_data.begin(), static_data.size() - 1 );
35 template < fgl::
string_literal column, fgl::
string_literal table_name, fgl::
string_literal table_key_name >
38 constexpr fgl::string_literal begin {
"SELECT " };
39 constexpr fgl::string_literal from {
" FROM " };
40 constexpr fgl::string_literal where {
" WHERE " };
41 constexpr fgl::string_literal end {
" = ?" };
43 constexpr auto& static_data {
47 return std::string_view( static_data.begin(), static_data.size() - 1 );
50 template < fgl::
string_literal str, fgl::
string_literal last >
53 constexpr fgl::string_literal comma {
", " };
54 return str + comma + last;
57 template < fgl::string_literal str, fgl::string_literal... rest >
58 requires(
sizeof...( rest ) > 1 )
61 constexpr fgl::string_literal comma {
", " };
65 template < fgl::string_literal table, fgl::string_literal table_key_name, fgl::string_literal... columns >
68 constexpr fgl::string_literal begin {
"SELECT " };
69 constexpr fgl::string_literal from {
" FROM " };
70 constexpr fgl::string_literal where {
" WHERE " };
71 constexpr fgl::string_literal end {
" = ?" };
76 return std::string_view( static_data.begin(), static_data.size() - 1 );