![]() |
LeechCraft
0.6.70-11552-gf61ee51c3d
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 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< AnyOf< IsExprTree, L, R > > |
| template<typename T > | |
| using | ConstraintsDetector = typename T::Constraints |
| template<typename T > | |
| using | ConstraintsType = Util::IsDetected_t< Constraints<>, ConstraintsDetector, T > |
Functions | |
| bool | MatchesSchema (const QString &baseName, const QString &schema, QSqlDatabase &db) |
| template<typename T > | |
| QString | MorphFieldName (QString str) |
| template<auto Ptr, size_t Idx = 0> | |
| constexpr size_t | FieldIndex () |
| template<typename T > | |
| QVariant | ToVariantF (const T &t) |
| template<typename T > | |
| auto | MakeInserter (const CachedFieldsData &data, const QSqlQuery_ptr &insertQuery, bool bindPrimaryKey) |
| template<typename Seq > | |
| constexpr auto | HasAutogenPKey () |
| template<typename T > | |
| CachedFieldsData | BuildCachedFieldsData (const QString &table) |
| template<typename T > | |
| CachedFieldsData | BuildCachedFieldsData () |
| template<typename T , size_t... Indices> | |
| T | InitializeFromQuery (const QSqlQuery &q, std::index_sequence< Indices... >) |
| QString | TypeToSql (ExprType type) |
| constexpr bool | IsRelational (ExprType type) |
| template<typename T > | |
| constexpr auto | AsLeafData (const T &node) |
| template<ExprType Type, typename L , typename R > | |
| ExprTree< Type, L, R > | MakeExprTree (const L &left, const R &right) |
| template<typename L , typename R , typename = EnableRelOp_t<L, R>> | |
| auto | operator< (const L &left, const R &right) |
| template<typename L , typename R , typename = EnableRelOp_t<L, R>> | |
| auto | operator> (const L &left, const R &right) |
| template<typename L , typename R , typename = EnableRelOp_t<L, R>> | |
| auto | operator== (const L &left, const R &right) |
| template<typename L , typename R , typename = EnableRelOp_t<L, R>> | |
| auto | operator && (const L &left, const R &right) |
| template<typename > | |
| auto | HandleExprTree (const ExprTree< ExprType::ConstTrue > &, int lastId=0) |
| template<typename Seq , typename Tree , typename = decltype (std::declval<Tree> ().ToSql (std::declval<ToSqlState<Seq>&> ()))> | |
| auto | HandleExprTree (const Tree &tree, int lastId=0) |
| template<auto... Ptrs, size_t... Idxs> | |
| auto | MakeIndexedQueryHandler (detail::MemberPtrs< Ptrs... >, std::index_sequence< Idxs... >) |
| template<auto... Ptrs> | |
| QStringList | BuildFieldNames () |
| template<typename... Args> | |
| QStringList | GetConstraintsStringList (Constraints< Args... >, const CachedFieldsData &data) |
| template<typename ImplFactory , typename T , size_t... Indices> | |
| QList< QString > | GetTypes (std::index_sequence< Indices... >) |
| template<typename ImplFactory , typename T > | |
| QString | AdaptCreateTable (const CachedFieldsData &data) |
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 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> {} |
| template<typename L , typename R > | |
| constexpr auto | AllTrees_v = AllOf<IsExprTree, L, R> |
| using LeechCraft::Util::oral::detail::AggregateDetector_t = typedef decltype (new T { std::declval<Args> ()... }) |
| using LeechCraft::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 LeechCraft::Util::oral::detail::ConstraintsDetector = typedef typename T::Constraints |
| using LeechCraft::Util::oral::detail::ConstraintsType = typedef Util::IsDetected_t<Constraints<>, ConstraintsDetector, T> |
| using LeechCraft::Util::oral::detail::EnableRelOp_t = typedef std::enable_if_t<AnyOf<IsExprTree, L, R> > |
| using LeechCraft::Util::oral::detail::FindPKeyDetector = typedef boost::mpl::int_<FindPKey<Seq>::result_type::value> |
| using LeechCraft::Util::oral::detail::IInsertQueryBuilder_ptr = typedef std::unique_ptr<IInsertQueryBuilder> |
Definition at line 48 of file impldefs.h.
| using LeechCraft::Util::oral::detail::MorpherDetector = typedef decltype (std::declval<U> ().FieldNameMorpher (QString {})) |
| using LeechCraft::Util::oral::detail::UnwrapIndirect_t = typedef typename std::conditional_t<IsIndirect<T> {}, T, WrapDirect<T> >::value_type |
| using LeechCraft::Util::oral::detail::ValueAt_t = typedef typename boost::fusion::result_of::value_at<Seq, Idx>::type |
| using LeechCraft::Util::oral::detail::ValueAtC_t = typedef typename boost::fusion::result_of::value_at_c<Seq, Idx>::type |
|
strong |
|
strong |
| QString LeechCraft::Util::oral::detail::AdaptCreateTable | ( | const CachedFieldsData & | data | ) |
Definition at line 1179 of file oral.h.
References LeechCraft::Util::oral::detail::CachedFieldsData::Fields_, GetConstraintsStringList(), LeechCraft::Util::oral::detail::CachedFieldsData::Table_, and LeechCraft::Util::ZipWith().
Here is the call graph for this function:| constexpr auto LeechCraft::Util::oral::detail::AsLeafData | ( | const T & | node | ) |
Definition at line 782 of file oral.h.
Referenced by operator &&(), operator<(), LeechCraft::Util::oral::detail::ExprTree< ExprType::LeafStaticPlaceholder, MemberPtrs< Ptr >, void >::operator=(), operator==(), and operator>().
Here is the caller graph for this function:| CachedFieldsData LeechCraft::Util::oral::detail::BuildCachedFieldsData | ( | const QString & | table | ) |
Definition at line 358 of file oral.h.
References LeechCraft::Util::oral::sph::fields, and LeechCraft::Util::Map().
Here is the call graph for this function:| CachedFieldsData LeechCraft::Util::oral::detail::BuildCachedFieldsData | ( | ) |
| QStringList LeechCraft::Util::oral::detail::BuildFieldNames | ( | ) |
| constexpr size_t LeechCraft::Util::oral::detail::FieldIndex | ( | ) |
| QStringList LeechCraft::Util::oral::detail::GetConstraintsStringList | ( | Constraints< Args... > | , |
| const CachedFieldsData & | data | ||
| ) |
Definition at line 1167 of file oral.h.
Referenced by AdaptCreateTable().
Here is the caller graph for this function:| QList<QString> LeechCraft::Util::oral::detail::GetTypes | ( | std::index_sequence< Indices... > | ) |
| auto LeechCraft::Util::oral::detail::HandleExprTree | ( | const ExprTree< ExprType::ConstTrue > & | , |
| int | lastId = 0 |
||
| ) |
| auto LeechCraft::Util::oral::detail::HandleExprTree | ( | const Tree & | tree, |
| int | lastId = 0 |
||
| ) |
Definition at line 853 of file oral.h.
References LeechCraft::Util::oral::detail::ToSqlState< T >::LastID_, and LeechCraft::Util::Stlize().
Here is the call graph for this function:| constexpr auto LeechCraft::Util::oral::detail::HasAutogenPKey | ( | ) |
| T LeechCraft::Util::oral::detail::InitializeFromQuery | ( | const QSqlQuery & | q, |
| std::index_sequence< Indices... > | |||
| ) |
Definition at line 474 of file oral.h.
References LeechCraft::Util::IsDetected_v.
| constexpr bool LeechCraft::Util::oral::detail::IsRelational | ( | ExprType | type | ) |
| ExprTree<Type, L, R> LeechCraft::Util::oral::detail::MakeExprTree | ( | const L & | left, |
| const R & | right | ||
| ) |
| auto LeechCraft::Util::oral::detail::MakeIndexedQueryHandler | ( | detail::MemberPtrs< Ptrs... > | , |
| std::index_sequence< Idxs... > | |||
| ) |
| auto LeechCraft::Util::oral::detail::MakeInserter | ( | const CachedFieldsData & | data, |
| const QSqlQuery_ptr & | insertQuery, | ||
| bool | bindPrimaryKey | ||
| ) |
Definition at line 296 of file oral.h.
References LeechCraft::Util::oral::detail::CachedFieldsData::BoundFields_, LeechCraft::Util::DBLock::DumpError(), and ToVariantF().
Here is the call graph for this function:| bool LeechCraft::Util::oral::detail::MatchesSchema | ( | const QString & | baseName, |
| const QString & | schema, | ||
| QSqlDatabase & | db | ||
| ) |
Definition at line 42 of file migrate.h.
References LeechCraft::Util::RunTextQuery().
Referenced by LeechCraft::Util::oral::Migrate().
Here is the call graph for this function:
Here is the caller graph for this function:| QString LeechCraft::Util::oral::detail::MorphFieldName | ( | QString | str | ) |
| auto LeechCraft::Util::oral::detail::operator&& | ( | const L & | left, |
| const R & | right | ||
| ) |
Definition at line 837 of file oral.h.
References AsLeafData().
Here is the call graph for this function:| auto LeechCraft::Util::oral::detail::operator< | ( | const L & | left, |
| const R & | right | ||
| ) |
Definition at line 810 of file oral.h.
References AsLeafData().
Here is the call graph for this function:| auto LeechCraft::Util::oral::detail::operator== | ( | const L & | left, |
| const R & | right | ||
| ) |
Definition at line 828 of file oral.h.
References AsLeafData().
Here is the call graph for this function:| auto LeechCraft::Util::oral::detail::operator> | ( | const L & | left, |
| const R & | right | ||
| ) |
Definition at line 819 of file oral.h.
References AsLeafData().
Here is the call graph for this function:| QVariant LeechCraft::Util::oral::detail::ToVariantF | ( | const T & | t | ) |
Definition at line 290 of file oral.h.
Referenced by LeechCraft::Util::oral::detail::AdaptDelete< T >::AdaptDelete(), MakeInserter(), and LeechCraft::Util::oral::detail::ExprTree< ExprType::LeafData, T, void >::ToSql().
Here is the caller graph for this function:
|
inline |
Definition at line 548 of file oral.h.
References And, ConstTrue, Equal, Geq, Greater, LeafData, LeafStaticPlaceholder, Leq, Less, Neq, Or, and LeechCraft::Util::Unreachable().
Referenced by LeechCraft::Util::oral::detail::ExprTree< Type, L, R >::ToSql().
Here is the call graph for this function:
Here is the caller graph for this function:| constexpr auto LeechCraft::Util::oral::detail::AllTrees_v = AllOf<IsExprTree, L, R> |
| constexpr auto LeechCraft::Util::oral::detail::AreComparableTypes = IsDetected_v<ComparableDetector, Seq, L, R> || IsDetected_v<ComparableDetector, Seq, R, L> |
| constexpr auto LeechCraft::Util::oral::detail::ConstTrueTree_v = ExprTree<ExprType::ConstTrue> {} |
Definition at line 779 of file oral.h.
Referenced by LeechCraft::Util::oral::detail::SelectWrapper< T, detail::SelectBehaviour::One >::operator()().
| constexpr auto LeechCraft::Util::oral::detail::HasPKey = IsDetected_v<FindPKeyDetector, Seq> |
| constexpr auto LeechCraft::Util::oral::detail::SeqIndices = std::make_index_sequence<SeqSize<S>> {} |