pub struct QueryBuilder<S: Schema> { /* private fields */ }Expand description
Typed query builder for OData queries.
This builder provides a fluent API for constructing ODataQuery instances
with type-safe field references and automatic filter hashing.
§Example
ⓘ
let query = QueryBuilder::<UserSchema>::new()
.filter(NAME.contains("john"))
.order_by(NAME, SortDir::Asc)
.select([NAME, EMAIL])
.page_size(50)
.build();Implementations§
Source§impl<S: Schema> QueryBuilder<S>
impl<S: Schema> QueryBuilder<S>
Sourcepub fn select<I>(self, fields: I) -> Selfwhere
I: IntoIterator,
I::Item: AsFieldKey<S>,
pub fn select<I>(self, fields: I) -> Selfwhere
I: IntoIterator,
I::Item: AsFieldKey<S>,
Sourcepub fn build(self) -> ODataQuery
pub fn build(self) -> ODataQuery
Build the final ODataQuery with computed filter hash.
The filter hash is computed using the stable hashing algorithm from
pagination::short_filter_hash.
Trait Implementations§
Auto Trait Implementations§
impl<S> Freeze for QueryBuilder<S>
impl<S> RefUnwindSafe for QueryBuilder<S>
impl<S> Send for QueryBuilder<S>
impl<S> Sync for QueryBuilder<S>
impl<S> Unpin for QueryBuilder<S>
impl<S> UnsafeUnpin for QueryBuilder<S>
impl<S> UnwindSafe for QueryBuilder<S>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more