Documentation
¶
Index ¶
- type AndCondition
- type AnyArrayContainsAnyCondition
- type AnyArrayContainsCondition
- type AnyArrayNotContainsAnyCondition
- type AnyArrayNotContainsCondition
- type ComparisonCondition
- type Condition
- type EqualCondition
- type FilterOptions
- type GenericFilterVisitor
- type LikeCondition
- type NotEqualCondition
- type OrCondition
- type Result
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AndCondition ¶ added in v0.0.2
type AndCondition struct {
// contains filtered or unexported fields
}
AndCondition represents an AND condition
type AnyArrayContainsAnyCondition ¶ added in v0.0.3
type AnyArrayContainsAnyCondition struct {
// contains filtered or unexported fields
}
AnyArrayContainsAnyCondition checks if any element in an array field equals any of the provided values
type AnyArrayContainsCondition ¶ added in v0.0.3
type AnyArrayContainsCondition struct {
// contains filtered or unexported fields
}
AnyArrayContainsCondition checks if any element in an array field equals a value
type AnyArrayNotContainsAnyCondition ¶ added in v0.0.3
type AnyArrayNotContainsAnyCondition struct {
// contains filtered or unexported fields
}
AnyArrayNotContainsAnyCondition checks if no element in an array field equals any of the provided values
type AnyArrayNotContainsCondition ¶ added in v0.0.3
type AnyArrayNotContainsCondition struct {
// contains filtered or unexported fields
}
AnyArrayNotContainsCondition checks if no element in an array field equals a value
type ComparisonCondition ¶ added in v0.0.2
type ComparisonCondition struct {
// contains filtered or unexported fields
}
ComparisonCondition handles numeric comparisons (>, <, >=, <=)
type Condition ¶ added in v0.0.2
type Condition interface {
// contains filtered or unexported methods
}
Condition interface for filter conditions
type EqualCondition ¶ added in v0.0.2
type EqualCondition struct {
// contains filtered or unexported fields
}
EqualCondition checks if a field equals a value
type FilterOptions ¶ added in v0.0.2
type FilterOptions struct {
Limit int // Maximum number of results to return, 0 means no limit
Offset int // Number of results to skip before returning, 0 means start from beginning
}
FilterOptions contains configuration options for filtering and pagination
func DefaultFilterOptions ¶ added in v0.0.2
func DefaultFilterOptions() FilterOptions
DefaultFilterOptions returns the default filter options (no limit, no offset)
type GenericFilterVisitor ¶ added in v0.0.2
type GenericFilterVisitor struct {
// contains filtered or unexported fields
}
GenericFilterVisitor handles filtering of generic structs
type LikeCondition ¶ added in v0.0.2
type LikeCondition struct {
// contains filtered or unexported fields
}
LikeCondition checks if a field matches a pattern
type NotEqualCondition ¶ added in v0.0.2
type NotEqualCondition struct {
// contains filtered or unexported fields
}
NotEqualCondition checks if a field is not equal to a value
type OrCondition ¶ added in v0.0.2
type OrCondition struct {
// contains filtered or unexported fields
}
OrCondition represents an OR condition
type Result ¶ added in v0.0.2
type Result[T any] struct { Items []T // The filtered items after applying pagination Count int // Total count of items that matched the filter before pagination }
Result contains the filtered items and count information
func ApplyFilter ¶ added in v0.0.2
func ApplyFilter[T any](rawFilters string, items []T, options ...FilterOptions) (Result[T], error)
ApplyFilter filters a slice of generic structs based on SQL-like filter conditions with optional pagination using limit and offset