Documentation ¶
Index ¶
- Constants
- Variables
- func BuildQuery(expression query.FilterExpression) (map[string]string, error)
- func FilterError(cause string) error
- func ParseQuery(q map[string]string) (query.FilterExpression, error)
- func ParseQueryWithTransform(q map[string]string, transformer Transformer) (query.FilterExpression, error)
- type Operation
- type RequestQueryParser
- type Transformer
- type TransformerFunc
- type TransformerMux
Constants ¶
View Source
const (
QueryKeyFilterExpression = "q"
)
Variables ¶
View Source
var (
ErrFilter = errors.New("filter error")
)
Functions ¶
func BuildQuery ¶
func BuildQuery(expression query.FilterExpression) (map[string]string, error)
func FilterError ¶
func ParseQuery ¶
func ParseQuery(q map[string]string) (query.FilterExpression, error)
func ParseQueryWithTransform ¶
func ParseQueryWithTransform(q map[string]string, transformer Transformer) (query.FilterExpression, error)
Types ¶
type RequestQueryParser ¶
type RequestQueryParser struct {
Transformer Transformer
}
func NewRequestQueryParser ¶
func NewRequestQueryParser(options ...func(*RequestQueryParser)) RequestQueryParser
func (RequestQueryParser) ParseFilterQuery ¶
func (p RequestQueryParser) ParseFilterQuery(r *http.Request) (query.FilterExpression, error)
type Transformer ¶
type Transformer interface {
TransformFilterToken(*query.Filter) (query.FilterExpression, error)
}
type TransformerFunc ¶
type TransformerFunc func(*query.Filter) (query.FilterExpression, error)
func (TransformerFunc) TransformFilterToken ¶
func (f TransformerFunc) TransformFilterToken(t *query.Filter) (query.FilterExpression, error)
type TransformerMux ¶
type TransformerMux struct { Strict bool Transformers map[string]Transformer }
func (TransformerMux) TransformFilterToken ¶
func (t TransformerMux) TransformFilterToken(token *query.Filter) (query.FilterExpression, error)
Click to show internal directories.
Click to hide internal directories.