2024-08-07 19:16:40 +00:00
|
|
|
package filters
|
|
|
|
|
|
|
|
import "fmt"
|
|
|
|
|
|
|
|
type Glob struct {
|
|
|
|
Glob interface{} `json:"$glob"`
|
|
|
|
}
|
|
|
|
|
2024-08-08 17:26:29 +00:00
|
|
|
func (f Glob) FromJSON(data interface{}) IFilter {
|
2024-08-07 19:16:40 +00:00
|
|
|
return FromJson[Glob](data)
|
|
|
|
}
|
|
|
|
|
2024-08-12 18:21:34 +00:00
|
|
|
func (f Glob) ToSQLPart(ctx Dialect) (string, Values) {
|
2024-08-07 19:16:40 +00:00
|
|
|
if f.Glob == nil {
|
2024-08-12 18:21:34 +00:00
|
|
|
return "", nil
|
2024-08-07 19:16:40 +00:00
|
|
|
}
|
|
|
|
name := ctx.GetFieldName()
|
|
|
|
value := ctx.NormalizeValue(f.Glob)
|
2024-08-12 18:21:34 +00:00
|
|
|
return fmt.Sprintf("%s GLOB ?", name), Values{value}
|
2024-08-07 19:16:40 +00:00
|
|
|
}
|