Skip to content

Commit 6b765cc

Browse files
Remove commented code
1 parent 7d98fad commit 6b765cc

File tree

1 file changed

+0
-130
lines changed

1 file changed

+0
-130
lines changed

filter/converter.go

Lines changed: 0 additions & 130 deletions
Original file line numberDiff line numberDiff line change
@@ -163,133 +163,3 @@ func (c *Converter) columnName(column string) string {
163163
}
164164
return fmt.Sprintf(`%q->>'%s'`, c.nestedColumn, column)
165165
}
166-
167-
/*
168-
type Converter struct {
169-
nestedColumn string
170-
nestedExemptions []string
171-
}
172-
173-
func NewConverter(options ...Option) *Converter {
174-
converter := &Converter{}
175-
for _, option := range options {
176-
option(converter)
177-
}
178-
return converter
179-
}
180-
181-
func (c *Converter) Convert(filter []byte) (conditions string, values []any, err error) {
182-
expr, err := c.parse(filter)
183-
if err != nil {
184-
return "", nil, fmt.Errorf("failed to parse filter: %w", err)
185-
}
186-
conditions, values, err = expr.ToPostgresWhereClause()
187-
if err != nil {
188-
return "", nil, fmt.Errorf("failed to convert expression to where clause: %w", err)
189-
}
190-
return
191-
}
192-
193-
type expression interface {
194-
ToPostgresWhereClause() (string, []any, error)
195-
}
196-
197-
type compoundExpression struct {
198-
expressions []expression
199-
operator string
200-
}
201-
202-
func (e compoundExpression) ToPostgresWhereClause() (string, []any, error) {
203-
values := []any{}
204-
conditions := []string{}
205-
for _, expr := range e.expressions {
206-
condition, value, err := expr.ToPostgresWhereClause()
207-
if err != nil {
208-
return "", nil, fmt.Errorf("failed to convert expression to where clause: %w", err)
209-
}
210-
conditions = append(conditions, condition)
211-
values = append(values, value...)
212-
}
213-
return "(" + strings.Join(conditions, " AND ") + ")", values, nil
214-
}
215-
216-
type scalarExpression struct {
217-
column string
218-
operator string
219-
value string
220-
}
221-
222-
func (e scalarExpression) ToPostgresWhereClause() (string, []any, error) {
223-
return fmt.Sprintf(`"%s" %s ?`, e.column, e.operator), []any{e.value}, nil
224-
}
225-
226-
func (c *Converter) parse(input []byte) (expression, error) {
227-
raw := map[string]any{}
228-
err := json.Unmarshal(input, &raw)
229-
if err != nil {
230-
return nil, fmt.Errorf("failed to unmarshal input: %w", err)
231-
}
232-
root := compoundExpression{
233-
expressions: []expression{},
234-
operator: "AND",
235-
}
236-
for key, value := range raw {
237-
expr := convertToExpression(key, value, key)
238-
if expr == nil {
239-
return nil, fmt.Errorf("failed to convert expression")
240-
}
241-
root.expressions = append(root.expressions, expr)
242-
}
243-
244-
if root.operator != "AND" {
245-
return nil, fmt.Errorf("root operator must be AND")
246-
}
247-
return root, nil
248-
}
249-
250-
func convertToExpression(key string, value any, currentColumn string) expression {
251-
switch value := value.(type) {
252-
case int:
253-
case int64:
254-
case float64:
255-
case string:
256-
switch key {
257-
case "$gt":
258-
return &scalarExpression{
259-
column: currentColumn,
260-
operator: ">",
261-
value: value,
262-
}
263-
case "$gte":
264-
return &scalarExpression{
265-
column: currentColumn,
266-
operator: ">=",
267-
value: value,
268-
}
269-
case "$lt":
270-
return &scalarExpression{
271-
column: currentColumn,
272-
operator: "<",
273-
value: value,
274-
}
275-
case "$lte":
276-
return &scalarExpression{
277-
column: currentColumn,
278-
operator: "<=",
279-
value: value,
280-
}
281-
case "$eq":
282-
fallthrough
283-
default:
284-
return &scalarExpression{
285-
column: currentColumn,
286-
operator: "=",
287-
value: value,
288-
}
289-
}
290-
case map[string]any:
291-
return convertToExpression(key, value, key)
292-
}
293-
return nil
294-
}
295-
*/

0 commit comments

Comments
 (0)