LeechCraft 0.6.70-17609-g3dde4097dd
Modular cross-platform feature rich live environment.
Loading...
Searching...
No Matches
LC::Util::oral Namespace Reference

Namespaces

namespace  detail
namespace  infix
namespace  sph

Classes

struct  AsDataStream
struct  FieldAccess
struct  FieldIndexAccess
struct  FromVariant
struct  Index
struct  IndirectHolderBase
struct  InsertAction
struct  IsIndirect
struct  IsIndirect< NotNull< T > >
struct  IsIndirect< PKey< T, Args... > >
struct  IsIndirect< References< Ptr > >
struct  IsIndirect< Unique< T > >
struct  Limit
struct  MemberNames
struct  NotNull
struct  ObjectInfo
struct  Offset
struct  PKey
struct  PrimaryKey
class  QueryException
struct  References
struct  ToVariant
struct  Type2Name
struct  Type2Name< ImplFactory, NotNull< T > >
struct  Type2Name< ImplFactory, PKey< int, Tags... > >
struct  Type2Name< ImplFactory, PKey< T, Tags... > >
struct  Type2Name< ImplFactory, References< Ptr > >
struct  Type2Name< ImplFactory, Unique< T > >
struct  Unique
struct  UniqueSubset

Typedefs

using QSqlQuery_ptr = std::shared_ptr<QSqlQuery>
template<typename T>
using ObjectInfo_ptr = std::unique_ptr<ObjectInfo<T>>
template<typename T, typename... Args>
using PKeyValue_t = typename PKey<T, Args...>::value_type
template<typename T>
using UniqueValue_t = typename Unique<T>::value_type
template<typename T>
using NotNullValue_t = typename NotNull<T>::value_type
template<typename T>
using UniqueNotNull = Unique<NotNull<T>>
template<auto Ptr>
using ReferencesValue_t = typename References<Ptr>::value_type
template<typename... Args>
using Constraints = Typelist<Args...>
template<typename... Args>
using Indices = Typelist<Args...>
using PostgreSQLImplFactory = detail::PostgreSQL::ImplFactory
using SQLiteImplFactory = detail::SQLite::ImplFactory

Functions

template<typename Record, typename ImplFactory = SQLiteImplFactory>
void Migrate (QSqlDatabase &db)
template<typename T, typename ImplFactory = detail::SQLite::ImplFactory>
ObjectInfo< T > Adapt (const QSqlDatabase &db)
template<typename T, typename ImplFactory = SQLiteImplFactory>
ObjectInfo_ptr< T > AdaptPtr (const QSqlDatabase &db)
template<typename ImplFactory, typename... Ts>
void AdaptPtrs (const QSqlDatabase &db, ObjectInfo_ptr< Ts > &... objects)
template<typename T, typename... Args>
char * toString (const PKey< T, Args... > &pkey)

Variables

template<typename>
constexpr size_t SeqSize = -1
template<typename... Orders>
constexpr detail::OrderBy< Orders... > OrderBy {}
template<auto... Ptrs>
constexpr detail::GroupBy< Ptrs... > GroupBy {}

Typedef Documentation

◆ Constraints

template<typename... Args>
using LC::Util::oral::Constraints = Typelist<Args...>

Definition at line 139 of file oraltypes.h.

◆ Indices

template<typename... Args>
using LC::Util::oral::Indices = Typelist<Args...>

Definition at line 145 of file oraltypes.h.

◆ NotNullValue_t

template<typename T>
using LC::Util::oral::NotNullValue_t = typename NotNull<T>::value_type

Definition at line 90 of file oraltypes.h.

◆ ObjectInfo_ptr

template<typename T>
using LC::Util::oral::ObjectInfo_ptr = std::unique_ptr<ObjectInfo<T>>

Definition at line 1662 of file oral.h.

◆ PKeyValue_t

template<typename T, typename... Args>
using LC::Util::oral::PKeyValue_t = typename PKey<T, Args...>::value_type

Definition at line 72 of file oraltypes.h.

◆ PostgreSQLImplFactory

◆ QSqlQuery_ptr

using LC::Util::oral::QSqlQuery_ptr = std::shared_ptr<QSqlQuery>

Definition at line 98 of file oral.h.

◆ ReferencesValue_t

template<auto Ptr>
using LC::Util::oral::ReferencesValue_t = typename References<Ptr>::value_type

Definition at line 130 of file oraltypes.h.

◆ SQLiteImplFactory

◆ UniqueNotNull

template<typename T>
using LC::Util::oral::UniqueNotNull = Unique<NotNull<T>>

Definition at line 93 of file oraltypes.h.

◆ UniqueValue_t

template<typename T>
using LC::Util::oral::UniqueValue_t = typename Unique<T>::value_type

Definition at line 81 of file oraltypes.h.

Function Documentation

◆ Adapt()

template<typename T, typename ImplFactory = detail::SQLite::ImplFactory>
ObjectInfo< T > LC::Util::oral::Adapt ( const QSqlDatabase & db)

Definition at line 1641 of file oral.h.

References LC::Util::oral::detail::AdaptCreateTable(), LC::Util::RunTextQuery(), and LC::Util::ToString().

Referenced by AdaptPtr().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AdaptPtr()

template<typename T, typename ImplFactory = SQLiteImplFactory>
ObjectInfo_ptr< T > LC::Util::oral::AdaptPtr ( const QSqlDatabase & db)

Definition at line 1665 of file oral.h.

References Adapt().

Referenced by AdaptPtrs(), ORAL_ADAPT_STRUCT(), and LC::Util::PrepareRecords().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AdaptPtrs()

template<typename ImplFactory, typename... Ts>
void LC::Util::oral::AdaptPtrs ( const QSqlDatabase & db,
ObjectInfo_ptr< Ts > &... objects )

Definition at line 1671 of file oral.h.

References AdaptPtr().

Here is the call graph for this function:

◆ Migrate()

template<typename Record, typename ImplFactory = SQLiteImplFactory>
void LC::Util::oral::Migrate ( QSqlDatabase & db)

◆ toString()

template<typename T, typename... Args>
char * LC::Util::oral::toString ( const PKey< T, Args... > & pkey)

Definition at line 46 of file common.h.

References LC::Util::oral::IndirectHolderBase< T, Concrete >::Val_.

Variable Documentation

◆ GroupBy

template<auto... Ptrs>
detail::GroupBy<Ptrs...> LC::Util::oral::GroupBy {}
constexpr

Definition at line 975 of file oral.h.

◆ OrderBy

template<typename... Orders>
detail::OrderBy<Orders...> LC::Util::oral::OrderBy {}
constexpr

Definition at line 972 of file oral.h.

◆ SeqSize

template<typename>
size_t LC::Util::oral::SeqSize = -1
constexpr

Definition at line 109 of file oral.h.