Provides a simple wrapper for OBX_query_builder to simplify memory management - calls obx_qb_close() on destruction. To specify actual conditions, use obx_qb_*() methods with queryBuilder.cPtr() as the first argument.
More...
|
| QueryBuilder (Store &store) |
|
| QueryBuilder (Store &store, OBX_query_builder *ptr, bool isRoot) |
|
| QueryBuilder (const QueryBuilder &)=delete |
| Can't be copied, single owner of C resources is required (to avoid double-free during destruction) More...
|
|
| QueryBuilder (QueryBuilder &&source) noexcept |
|
virtual | ~QueryBuilder () |
|
OBX_query_builder * | cPtr () const |
|
template<OBXPropertyType PropType> |
QueryBuilder & | order (Property< EntityT, PropType > property, int flags=0) |
| Adds an order based on a given property. More...
|
|
QueryBuilder & | with (const QueryCondition &condition) |
| Appends given condition/combination of conditions. More...
|
|
template<typename RangePropertyEntityT , OBXPropertyType RangePropertyType, typename = EnableIfDate<RangePropertyType>> |
QueryBuilder< RangePropertyEntityT > | linkTime (Property< RangePropertyEntityT, RangePropertyType > property) |
| Links the (time series) entity type to another entity space using a time point in a linked entity. More...
|
|
template<typename RangePropertyEntityT , OBXPropertyType RangePropertyType, typename = EnableIfDate<RangePropertyType>> |
QueryBuilder< RangePropertyEntityT > | linkTime (Property< RangePropertyEntityT, RangePropertyType > beginProperty, Property< RangePropertyEntityT, RangePropertyType > endProperty) |
| Links the (time series) entity type to another entity space using a range defined in a given linked entity. More...
|
|
template<typename RelTargetEntityT > |
QueryBuilder< RelTargetEntityT > | link (RelationProperty< EntityT, RelTargetEntityT > rel) |
| Create a link based on a property-relation (to-one). More...
|
|
template<typename RelSourceEntityT > |
QueryBuilder< RelSourceEntityT > | backlink (RelationProperty< RelSourceEntityT, EntityT > rel) |
| Create a backlink based on a property-relation used in reverse (to-many). More...
|
|
template<typename RelTargetEntityT > |
QueryBuilder< RelTargetEntityT > | link (RelationStandalone< EntityT, RelTargetEntityT > rel) |
| Create a link based on a standalone relation (many-to-many) More...
|
|
template<typename RelSourceEntityT > |
QueryBuilder< RelSourceEntityT > | backlink (RelationStandalone< RelSourceEntityT, EntityT > rel) |
| Create a backlink based on a standalone relation (many-to-many, reverse direction) More...
|
|
Query< EntityT > | build () |
|
template<typename EntityT>
class obx::QueryBuilder< EntityT >
Provides a simple wrapper for OBX_query_builder to simplify memory management - calls obx_qb_close() on destruction. To specify actual conditions, use obx_qb_*() methods with queryBuilder.cPtr() as the first argument.