| 622 | } |
| 623 | |
| 624 | func (c *cc) convertOrderby_stmtContext(n parser.IOrder_by_stmtContext) ast.Node { |
| 625 | if orderBy, ok := n.(*parser.Order_by_stmtContext); ok { |
| 626 | list := &ast.List{Items: []ast.Node{}} |
| 627 | for _, o := range orderBy.AllOrdering_term() { |
| 628 | term, ok := o.(*parser.Ordering_termContext) |
| 629 | if !ok { |
| 630 | continue |
| 631 | } |
| 632 | list.Items = append(list.Items, &ast.CaseExpr{ |
| 633 | Xpr: c.convert(term.Expr()), |
| 634 | Location: term.Expr().GetStart().GetStart(), |
| 635 | }) |
| 636 | } |
| 637 | return list |
| 638 | } |
| 639 | return todo("convertOrderby_stmtContext", n) |
| 640 | } |
| 641 | |
| 642 | func (c *cc) convertLimit_stmtContext(n parser.ILimit_stmtContext) (ast.Node, ast.Node) { |
| 643 | if n == nil { |