Expand description
Type-safe OData filter builder for API queries.
This module provides a fluent API for building OData filter expressions with compile-time type safety and automatic string escaping.
§Example
use spiris::query::Filter;
// Simple equality filter
let filter = Filter::field("IsActive").eq(true);
assert_eq!(filter.to_string(), "IsActive eq true");
// Combined filters with AND/OR
let filter = Filter::field("IsActive").eq(true)
.and(Filter::field("Name").contains("Corp"));
assert_eq!(filter.to_string(), "(IsActive eq true) and (contains(Name, 'Corp'))");
// String values are automatically escaped
let filter = Filter::field("Name").eq("O'Brien & Co");
assert_eq!(filter.to_string(), "Name eq 'O''Brien & Co'");Structs§
- Field
Filter - Builder for field-level filter operations.
- Filter
- A filter expression for OData queries.
Traits§
- Filter
Value - Trait for values that can be used in OData filter expressions.