25 lines
676 B
Go
25 lines
676 B
Go
package builder
|
|
|
|
import (
|
|
"go.mongodb.org/mongo-driver/bson"
|
|
"go.mongodb.org/mongo-driver/mongo/options"
|
|
)
|
|
|
|
type Query interface {
|
|
Filter(field Field, value any) Query
|
|
And(filters ...Query) Query
|
|
Or(filters ...Query) Query
|
|
Expression(value Expression) Query
|
|
Comparison(field Field, operator MongoOperation, value any) Query
|
|
RegEx(field Field, pattern, options string) Query
|
|
In(field Field, values ...any) Query
|
|
NotIn(field Field, values ...any) Query
|
|
Sort(field Field, ascending bool) Query
|
|
Limit(limit *int64) Query
|
|
Offset(offset *int64) Query
|
|
Archived(isArchived *bool) Query
|
|
BuildPipeline() bson.D
|
|
BuildQuery() bson.D
|
|
BuildOptions() *options.FindOptions
|
|
}
|