()
| 804 | } |
| 805 | |
| 806 | func (p *Parser) parseFrameDirectionWithEnd() (string, Pos, error) { |
| 807 | if !p.matchKeyword(KeywordPreceding) && !p.matchKeyword(KeywordFollowing) { |
| 808 | return "", 0, fmt.Errorf("expected PRECEDING or FOLLOWING, got %s", p.lastTokenKind()) |
| 809 | } |
| 810 | endPos := p.End() |
| 811 | direction := p.last().String |
| 812 | _ = p.lexer.consumeToken() |
| 813 | return direction, endPos, nil |
| 814 | } |
| 815 | |
| 816 | func (p *Parser) tryParseWindowClause(pos Pos) (*WindowClause, error) { |
| 817 | if !p.matchKeyword(KeywordWindow) { |
no test coverage detected