![]() |
LeechCraft
0.6.70-13729-g7046a9d2a7
Modular cross-platform feature rich live environment.
|
Namespaces | |
PostgreSQL | |
SQLite | |
Typedefs | |
using | IInsertQueryBuilder_ptr = std::unique_ptr< IInsertQueryBuilder > |
template<typename U > | |
using | MorpherDetector = decltype(std::declval< U >().FieldNameMorpher(QString {})) |
template<typename T > | |
using | TypeNameDetector = decltype(T::TypeName) |
template<typename T > | |
using | BaseTypeDetector = typename T::BaseType |
template<typename Seq , int Idx> | |
using | ValueAtC_t = typename boost::fusion::result_of::value_at_c< Seq, Idx >::type |
template<typename Seq , typename Idx > | |
using | ValueAt_t = typename boost::fusion::result_of::value_at< Seq, Idx >::type |
template<typename Seq > | |
using | FindPKeyDetector = boost::mpl::int_< FindPKey< Seq >::result_type::value > |
template<typename T , typename... Args> | |
using | AggregateDetector_t = decltype(new T { std::declval< Args >()... }) |
template<typename T > | |
using | UnwrapIndirect_t = typename std::conditional_t< IsIndirect< T > {}, T, WrapDirect< T > >::value_type |
template<typename Seq , typename L , typename R > | |
using | ComparableDetector = decltype(std::declval< UnwrapIndirect_t< typename L::template ValueType_t< Seq > >>()==std::declval< UnwrapIndirect_t< typename R::template ValueType_t< Seq > >>()) |
template<typename L , typename R > | |
using | EnableRelOp_t = std::enable_if_t< EitherIsExprTree< L, R >()> |
template<typename T > | |
using | ConstraintsDetector = typename T::Constraints |
template<typename T > | |
using | ConstraintsType = Util::IsDetected_t< Constraints<>, ConstraintsDetector, T > |
template<size_t Idx, typename Tuple > | |
using | UnderlyingObject_t = typename std::decay_t< std::tuple_element_t< Idx, Tuple > >::element_type::ObjectType_t |
Functions | |
bool | MatchesSchema (const QString &baseName, const QString &schema, QSqlDatabase &db) |
template<typename T > | |
QString | MorphFieldName (QString str) noexcept |
template<typename Seq , int Idx> | |
QString | GetFieldName () noexcept |
template<auto Ptr, size_t Idx = 0> | |
constexpr size_t | FieldIndex () noexcept |
template<auto Ptr> | |
QString | GetFieldNamePtr () noexcept |
template<auto Ptr> | |
QString | GetQualifiedFieldNamePtr () noexcept |
template<typename T > | |
QVariant | ToVariantF (const T &t) noexcept |
template<typename T > | |
auto | MakeInserter (const CachedFieldsData &data, const QSqlQuery_ptr &insertQuery, bool bindPrimaryKey) noexcept |
template<typename Seq > | |
constexpr auto | HasAutogenPKey () noexcept |
template<typename T > | |
CachedFieldsData | BuildCachedFieldsData (const QString &table) noexcept |
template<typename T > | |
CachedFieldsData | BuildCachedFieldsData () noexcept |
template<typename T , size_t... Indices> | |
T | InitializeFromQuery (const QSqlQuery &q, std::index_sequence< Indices... >, int startIdx) noexcept |
QString | TypeToSql (ExprType type) noexcept |
constexpr bool | IsRelational (ExprType type) noexcept |
template<typename T > | |
constexpr auto | AsLeafData (const T &node) noexcept |
template<ExprType Type, typename L , typename R > | |
auto | MakeExprTree (const L &left, const R &right) noexcept |
template<typename L , typename R > | |
constexpr bool | EitherIsExprTree () noexcept |
template<typename L , typename R , typename = EnableRelOp_t<L, R>> | |
auto | operator< (const L &left, const R &right) noexcept |
template<typename L , typename R , typename = EnableRelOp_t<L, R>> | |
auto | operator> (const L &left, const R &right) noexcept |
template<typename L , typename R , typename = EnableRelOp_t<L, R>> | |
auto | operator== (const L &left, const R &right) noexcept |
template<typename L , typename R , typename = EnableRelOp_t<L, R>> | |
auto | operator!= (const L &left, const R &right) noexcept |
template<typename L , ExprType Op> | |
auto | operator| (const L &left, InfixBinary< Op >) noexcept |
template<typename L , ExprType Op, typename R > | |
auto | operator| (const InfixBinaryProxy< L, Op > &left, const R &right) noexcept |
template<typename L , typename R , typename = EnableRelOp_t<L, R>> | |
auto | operator && (const L &left, const R &right) noexcept |
template<typename L , typename R , typename = EnableRelOp_t<L, R>> | |
auto | operator|| (const L &left, const R &right) noexcept |
template<typename > | |
auto | HandleExprTree (const ExprTree< ExprType::ConstTrue > &, int lastId=0) noexcept |
template<typename Seq , typename Tree , typename = decltype (std::declval<Tree> ().ToSql (std::declval<ToSqlState<Seq>&> ()))> | |
auto | HandleExprTree (const Tree &tree, int lastId=0) noexcept |
template<typename L , typename R , typename = std::enable_if_t<IsSelector<L> {} && IsSelector<R> {}>> | |
SelectorUnion< L, R > | operator+ (L, R) noexcept |
template<auto... Ptrs, size_t... Idxs> | |
auto | MakeIndexedQueryHandler (MemberPtrs< Ptrs... >, std::index_sequence< Idxs... >) noexcept |
template<auto Ptr> | |
auto | MakeIndexedQueryHandler () noexcept |
template<auto... Ptrs> | |
QStringList | BuildFieldNames () noexcept |
template<size_t RepIdx, size_t TupIdx, typename Tuple , typename NewType > | |
decltype(auto) constexpr | GetReplaceTupleElem (Tuple &&tuple, NewType &&arg) noexcept |
template<size_t RepIdx, typename NewType , typename Tuple , size_t... TupIdxs> | |
constexpr auto | ReplaceTupleElemImpl (Tuple &&tuple, NewType &&arg, std::index_sequence< TupIdxs... >) noexcept |
template<size_t RepIdx, typename NewType , typename... TupleArgs> | |
constexpr auto | ReplaceTupleElem (std::tuple< TupleArgs... > &&tuple, NewType &&arg) noexcept |
template<typename... LArgs, typename... RArgs> | |
auto | Combine (std::tuple< LArgs... > &&left, std::tuple< RArgs... > &&right) noexcept |
template<typename... LArgs, typename R > | |
auto | Combine (std::tuple< LArgs... > &&left, const R &right) noexcept |
template<typename L , typename... RArgs> | |
auto | Combine (const L &left, std::tuple< RArgs... > &&right) noexcept |
template<typename L , typename R > | |
auto | Combine (const L &left, const R &right) noexcept |
template<typename L , typename R > | |
constexpr auto | CombineBehaviour (L, R) noexcept |
template<typename ResList > | |
decltype(auto) | HandleResultBehaviour (ResultBehaviour::All, ResList &&list) noexcept |
template<typename ResList > | |
auto | HandleResultBehaviour (ResultBehaviour::First, ResList &&list) noexcept |
template<typename F , typename R > | |
HandleSelectorResult (QString, F, R) -> HandleSelectorResult< F, R > | |
template<typename... Args> | |
QStringList | GetConstraintsStringList (Constraints< Args... >, const CachedFieldsData &data) noexcept |
template<typename ImplFactory , typename T , size_t... Indices> | |
QList< QString > | GetTypes (std::index_sequence< Indices... >) noexcept |
template<typename ImplFactory , typename T > | |
QString | AdaptCreateTable (const CachedFieldsData &data) noexcept |
template<typename ImplFactory , typename Tuple , size_t... Idxs> | |
void | AdaptPtrs (const QSqlDatabase &db, Tuple &tuple, std::index_sequence< Idxs... >) |
Variables | |
template<typename S > | |
constexpr auto | SeqSize = boost::fusion::result_of::size<S>::type::value |
template<typename S > | |
constexpr auto | SeqIndices = std::make_index_sequence<SeqSize<S>> {} |
template<typename T > | |
constexpr bool | TypeNameCustomized = IsDetected_v<TypeNameDetector, T> |
template<typename T > | |
constexpr bool | BaseTypeCustomized = IsDetected_v<BaseTypeDetector, T> |
template<typename Seq > | |
constexpr auto | HasPKey = IsDetected_v<FindPKeyDetector, Seq> |
template<typename Seq , typename L , typename R > | |
constexpr auto | AreComparableTypes = IsDetected_v<ComparableDetector, Seq, L, R> || IsDetected_v<ComparableDetector, Seq, R, L> |
constexpr auto | ConstTrueTree_v = ExprTree<ExprType::ConstTrue> {} |
constexpr CountAll * | CountAllPtr = nullptr |
using LC::Util::oral::detail::AggregateDetector_t = typedef decltype (new T { std::declval<Args> ()... }) |
using LC::Util::oral::detail::BaseTypeDetector = typedef typename T::BaseType |
using LC::Util::oral::detail::ComparableDetector = typedef decltype (std::declval<UnwrapIndirect_t<typename L::template ValueType_t<Seq> >> () == std::declval<UnwrapIndirect_t<typename R::template ValueType_t<Seq> >> ()) |
using LC::Util::oral::detail::ConstraintsDetector = typedef typename T::Constraints |
using LC::Util::oral::detail::ConstraintsType = typedef Util::IsDetected_t<Constraints<>, ConstraintsDetector, T> |
using LC::Util::oral::detail::EnableRelOp_t = typedef std::enable_if_t<EitherIsExprTree<L, R> ()> |
using LC::Util::oral::detail::FindPKeyDetector = typedef boost::mpl::int_<FindPKey<Seq>::result_type::value> |
using LC::Util::oral::detail::IInsertQueryBuilder_ptr = typedef std::unique_ptr<IInsertQueryBuilder> |
Definition at line 48 of file impldefs.h.
using LC::Util::oral::detail::MorpherDetector = typedef decltype (std::declval<U> ().FieldNameMorpher (QString {})) |
using LC::Util::oral::detail::TypeNameDetector = typedef decltype (T::TypeName) |
using LC::Util::oral::detail::UnderlyingObject_t = typedef typename std::decay_t<std::tuple_element_t<Idx, Tuple> >::element_type::ObjectType_t |
using LC::Util::oral::detail::UnwrapIndirect_t = typedef typename std::conditional_t<IsIndirect<T> {}, T, WrapDirect<T> >::value_type |
using LC::Util::oral::detail::ValueAt_t = typedef typename boost::fusion::result_of::value_at<Seq, Idx>::type |
using LC::Util::oral::detail::ValueAtC_t = typedef typename boost::fusion::result_of::value_at_c<Seq, Idx>::type |
|
strong |
|
strong |
|
strong |
|
noexcept |
Definition at line 1639 of file oral.h.
References GetConstraintsStringList().
void LC::Util::oral::detail::AdaptPtrs | ( | const QSqlDatabase & | db, |
Tuple & | tuple, | ||
std::index_sequence< Idxs... > | |||
) |
Definition at line 1723 of file oral.h.
References LC::Util::oral::AdaptPtr().
|
noexcept |
Definition at line 721 of file oral.h.
Referenced by MakeExprTree(), and LC::Util::oral::detail::ExprTree< ExprType::LeafStaticPlaceholder, MemberPtrs< Ptr >, void >::operator=().
|
noexcept |
Definition at line 383 of file oral.h.
References LC::Util::oral::sph::fields, and LC::Util::Map().
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
Definition at line 1627 of file oral.h.
Referenced by AdaptCreateTable().
|
noexcept |
Definition at line 117 of file oral.h.
Referenced by LC::Util::oral::detail::ExprTree< ExprType::LeafStaticPlaceholder, MemberPtrs< Ptr >, void >::ToSql().
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
Definition at line 887 of file oral.h.
References LC::Util::oral::detail::ExprTreeHandler< F >::LastID_, and LC::Util::Stlize().
|
noexcept |
|
noexcept |
LC::Util::oral::detail::HandleSelectorResult | ( | QString | , |
F | , | ||
R | |||
) | -> HandleSelectorResult< F, R > |
|
noexcept |
|
noexcept |
Definition at line 499 of file oral.h.
References LC::Util::IsDetected_v.
|
noexcept |
|
noexcept |
Definition at line 779 of file oral.h.
References AsLeafData().
|
noexcept |
|
noexcept |
|
noexcept |
Definition at line 321 of file oral.h.
References LC::Util::DBLock::DumpError(), and ToVariantF().
bool LC::Util::oral::detail::MatchesSchema | ( | const QString & | baseName, |
const QString & | schema, | ||
QSqlDatabase & | db | ||
) |
Definition at line 42 of file migrate.h.
References LC::Util::RunTextQuery().
Referenced by LC::Util::oral::Migrate().
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
Definition at line 315 of file oral.h.
Referenced by LC::Util::oral::detail::AdaptDelete< T >::AdaptDelete(), MakeInserter(), and LC::Util::oral::detail::ExprTree< ExprType::LeafData, T, void >::ToSql().
|
inlinenoexcept |
Definition at line 535 of file oral.h.
References And, ConstTrue, Equal, Geq, Greater, LeafData, LeafStaticPlaceholder, Leq, Less, Like, Neq, Or, and LC::Util::Unreachable().
Referenced by LC::Util::oral::detail::ExprTree< Type, L, R >::ToSql().
constexpr auto LC::Util::oral::detail::AreComparableTypes = IsDetected_v<ComparableDetector, Seq, L, R> || IsDetected_v<ComparableDetector, Seq, R, L> |
constexpr bool LC::Util::oral::detail::BaseTypeCustomized = IsDetected_v<BaseTypeDetector, T> |
constexpr auto LC::Util::oral::detail::ConstTrueTree_v = ExprTree<ExprType::ConstTrue> {} |
Definition at line 776 of file oral.h.
Referenced by LC::Util::oral::detail::SelectWrapper< T, detail::SelectBehaviour::One >::Build(), and LC::Util::oral::detail::SelectWrapper< T, detail::SelectBehaviour::One >::operator()().
|
inline |
constexpr auto LC::Util::oral::detail::HasPKey = IsDetected_v<FindPKeyDetector, Seq> |
constexpr auto LC::Util::oral::detail::SeqIndices = std::make_index_sequence<SeqSize<S>> {} |
constexpr auto LC::Util::oral::detail::SeqSize = boost::fusion::result_of::size<S>::type::value |
constexpr bool LC::Util::oral::detail::TypeNameCustomized = IsDetected_v<TypeNameDetector, T> |