LeechCraft  0.6.70-16373-g319c272718
Modular cross-platform feature rich live environment.
sqliteimpl.h
Go to the documentation of this file.
1 /**********************************************************************
2  * LeechCraft - modular cross-platform feature rich internet client.
3  * Copyright (C) 2006-2014 Georg Rudoy
4  *
5  * Distributed under the Boost Software License, Version 1.0.
6  * (See accompanying file LICENSE or copy at https://www.boost.org/LICENSE_1_0.txt)
7  **********************************************************************/
8 
9 #pragma once
10 
11 #include "oraltypes.h"
12 
14 {
15  struct ImplFactory
16  {
17  using IsImpl_t = void;
18 
19  struct TypeLits
20  {
21  inline constexpr static CtString IntAutoincrement { "INTEGER PRIMARY KEY AUTOINCREMENT" };
22  inline constexpr static CtString Binary { "BLOB" };
23  };
24 
25  inline constexpr static CtString LimitNone { "-1" };
26 
27  constexpr static auto GetInsertPrefix (InsertAction::DefaultTag)
28  {
29  return "INSERT"_ct;
30  }
31 
32  constexpr static auto GetInsertPrefix (InsertAction::IgnoreTag)
33  {
34  return "INSERT OR IGNORE"_ct;
35  }
36 
37  constexpr static auto GetInsertPrefix (InsertAction::Replace::PKeyType)
38  {
39  return "INSERT OR REPLACE"_ct;
40  }
41 
42  template<auto... Ptrs>
44  {
45  return "INSERT OR REPLACE"_ct;
46  }
47 
48  constexpr static auto GetInsertSuffix (auto...)
49  {
50  return ""_ct;
51  }
52  };
53 }
54 
55 namespace LC::Util::oral
56 {
58 }
static constexpr auto GetInsertPrefix(InsertAction::Replace::PKeyType)
Definition: sqliteimpl.h:37
static constexpr auto GetInsertPrefix(InsertAction::IgnoreTag)
Definition: sqliteimpl.h:32
static constexpr auto GetInsertSuffix(auto...)
Definition: sqliteimpl.h:48
static constexpr auto GetInsertPrefix(InsertAction::Replace::FieldsType< Ptrs... >)
Definition: sqliteimpl.h:43
static constexpr auto GetInsertPrefix(InsertAction::DefaultTag)
Definition: sqliteimpl.h:27