LeechCraft  0.6.70-16373-g319c272718
Modular cross-platform feature rich live environment.
LC::Util::oral Namespace Reference

Namespaces

 detail
 
 infix
 
 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 = typedef Typelist<Args...>

Definition at line 139 of file oraltypes.h.

◆ Indices

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

Definition at line 145 of file oraltypes.h.

◆ NotNullValue_t

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

Definition at line 90 of file oraltypes.h.

◆ ObjectInfo_ptr

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

Definition at line 1659 of file oral.h.

◆ PKeyValue_t

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

Definition at line 72 of file oraltypes.h.

◆ PostgreSQLImplFactory

◆ QSqlQuery_ptr

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

Definition at line 98 of file oral.h.

◆ ReferencesValue_t

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

Definition at line 130 of file oraltypes.h.

◆ SQLiteImplFactory

◆ UniqueNotNull

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

Definition at line 93 of file oraltypes.h.

◆ UniqueValue_t

template<typename T >
using LC::Util::oral::UniqueValue_t = typedef 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 1638 of file oral.h.

References LC::Util::RunTextQuery().

+ Here is the call graph for this function:

◆ AdaptPtr()

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

Definition at line 1662 of file oral.h.

◆ AdaptPtrs()

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

Definition at line 1668 of file oral.h.

◆ Migrate()

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

Definition at line 41 of file migrate.h.

References LC::Util::oral::sph::fields, LC::Util::DBLock::Init(), LC::Util::JoinTup(), LC::Util::oral::detail::MatchesSchema(), and LC::Util::RunTextQuery().

+ Here is the call graph for this function:

◆ 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 toString(), and LC::Util::oral::IndirectHolderBase< T, PKey< T, Tags... > >::Val_.

Referenced by LC::Util::TagsLineEdit::AddSelector().

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

Variable Documentation

◆ GroupBy

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

Definition at line 978 of file oral.h.

◆ OrderBy

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

Definition at line 975 of file oral.h.

◆ SeqSize

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

Definition at line 124 of file oral.h.