Skip to content

Commit 0cc62d6

Browse files
committed
Remove the literal string by replacing with the const variable
1 parent 72b088c commit 0cc62d6

7 files changed

+93
-94
lines changed

parser/lexer.go

+7
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,13 @@ const (
3333

3434
TokenKindArrow TokenKind = "->"
3535
TokenKindDash TokenKind = "::"
36+
37+
TokenKindLParen TokenKind = "("
38+
TokenKindRParen TokenKind = ")"
39+
TokenKindLBrace TokenKind = "{"
40+
TokenKindRBrace TokenKind = "}"
41+
TokenKindLBracket TokenKind = "["
42+
TokenKindRBracket TokenKind = "]"
3643
)
3744

3845
const (

parser/parse_system.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -590,7 +590,7 @@ func (p *Parser) parsePrivilegeSelectOrInsert(pos Pos) (*PrivilegeClause, error)
590590

591591
var err error
592592
var params *ParamExprList
593-
if p.matchTokenKind("(") {
593+
if p.matchTokenKind(TokenKindLParen) {
594594
params, err = p.parseFunctionParams(p.Pos())
595595
if err != nil {
596596
return nil, err

parser/parser_alter.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,7 @@ func (p *Parser) parseProjectionOrderBy(pos Pos) (*ProjectionOrderByClause, erro
169169
}
170170

171171
func (p *Parser) parseProjectionSelect(pos Pos) (*ProjectionSelectStmt, error) {
172-
if _, err := p.consumeTokenKind("("); err != nil {
172+
if _, err := p.consumeTokenKind(TokenKindLParen); err != nil {
173173
return nil, err
174174
}
175175
with, err := p.tryParseWithClause(p.Pos())
@@ -191,7 +191,7 @@ func (p *Parser) parseProjectionSelect(pos Pos) (*ProjectionSelectStmt, error) {
191191
if err != nil {
192192
return nil, err
193193
}
194-
rightParen, err := p.consumeTokenKind(")")
194+
rightParen, err := p.consumeTokenKind(TokenKindRParen)
195195
if err != nil {
196196
return nil, err
197197
}

parser/parser_column.go

+40-48
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ func (p *Parser) getNextPrecedence() int {
5353
return PrecedenceMulDivMod
5454
case p.matchTokenKind(TokenKindArrow):
5555
return PrecedenceArrow
56-
case p.matchTokenKind("("), p.matchTokenKind("["):
56+
case p.matchTokenKind(TokenKindLParen), p.matchTokenKind(TokenKindLBracket):
5757
return PrecedenceBracket
5858
case p.matchTokenKind(TokenKindDash):
5959
return PrecedenceDoubleColon
@@ -101,7 +101,7 @@ func (p *Parser) parseInfix(expr Expr, precedence int) (Expr, error) {
101101
if err != nil {
102102
return nil, err
103103
}
104-
if _, err = p.consumeTokenKind("("); err != nil {
104+
if _, err = p.consumeTokenKind(TokenKindLParen); err != nil {
105105
return nil, err
106106
}
107107
// it's a tuple type definition after "::" operator
@@ -182,7 +182,7 @@ func (p *Parser) parseInfix(expr Expr, precedence int) (Expr, error) {
182182
Operation: TokenKind("NOT " + op),
183183
RightExpr: rightExpr,
184184
}, nil
185-
case p.matchTokenKind("["):
185+
case p.matchTokenKind(TokenKindLBracket):
186186
params, err := p.parseArrayParams(p.Pos())
187187
if err != nil {
188188
return nil, err
@@ -238,7 +238,7 @@ func (p *Parser) parseSubExpr(pos Pos, precedence int) (Expr, error) {
238238
}
239239

240240
func (p *Parser) parseTernaryExpr(condition Expr) (*TernaryOperation, error) {
241-
if _, err := p.consumeTokenKind("?"); err != nil {
241+
if _, err := p.consumeTokenKind(TokenKindQuery); err != nil {
242242
return nil, err
243243
}
244244
trueExpr, err := p.parseExpr(p.Pos())
@@ -263,7 +263,7 @@ func (p *Parser) parseColumnExtractExpr(pos Pos) (*ExtractExpr, error) {
263263
if err := p.consumeKeyword(KeywordExtract); err != nil {
264264
return nil, err
265265
}
266-
if _, err := p.consumeTokenKind("("); err != nil {
266+
if _, err := p.consumeTokenKind(TokenKindLParen); err != nil {
267267
return nil, err
268268
}
269269

@@ -285,7 +285,7 @@ func (p *Parser) parseColumnExtractExpr(pos Pos) (*ExtractExpr, error) {
285285
if err != nil {
286286
return nil, err
287287
}
288-
if err := p.consumeKeyword(")"); err != nil {
288+
if _, err := p.consumeTokenKind(TokenKindRParen); err != nil {
289289
return nil, err
290290
}
291291
return &ExtractExpr{
@@ -307,15 +307,7 @@ func (p *Parser) parseUnaryExpr(pos Pos) (Expr, error) {
307307
return p.parseColumnExpr(pos)
308308
}
309309

310-
var expr Expr
311-
var err error
312-
switch {
313-
case p.matchTokenKind(TokenKindIdent),
314-
p.matchTokenKind("("):
315-
expr, err = p.parseExpr(p.Pos())
316-
default:
317-
expr, err = p.parseColumnExpr(p.Pos())
318-
}
310+
expr, err := p.parseColumnExpr(p.Pos())
319311
if err != nil {
320312
return nil, err
321313
}
@@ -365,7 +357,7 @@ func (p *Parser) parseColumnExpr(pos Pos) (Expr, error) { //nolint:funlen
365357
case p.matchTokenKind(TokenKindInt),
366358
p.matchTokenKind(TokenKindFloat): // number literal
367359
return p.parseNumber(pos)
368-
case p.matchTokenKind("("):
360+
case p.matchTokenKind(TokenKindLParen):
369361
if peek, _ := p.lexer.peekToken(); peek != nil {
370362
if peek.Kind == TokenKindKeyword && strings.EqualFold(peek.String, KeywordSelect) {
371363
return p.parseSubQuery(pos)
@@ -374,9 +366,9 @@ func (p *Parser) parseColumnExpr(pos Pos) (Expr, error) { //nolint:funlen
374366
return p.parseFunctionParams(p.Pos())
375367
case p.matchTokenKind("*"):
376368
return p.parseColumnStar(p.Pos())
377-
case p.matchTokenKind("["):
369+
case p.matchTokenKind(TokenKindLBracket):
378370
return p.parseArrayParams(p.Pos())
379-
case p.matchTokenKind("{"):
371+
case p.matchTokenKind(TokenKindLBrace):
380372
// The map literal string also starts with '{', so we need to check the next token
381373
// to determine if it is a map literal or a query param.
382374
if p.peekTokenKind(TokenKindIdent) {
@@ -403,7 +395,7 @@ func (p *Parser) parseColumnCastExpr(pos Pos) (Expr, error) {
403395
return nil, err
404396
}
405397

406-
if _, err := p.consumeTokenKind("("); err != nil {
398+
if _, err := p.consumeTokenKind(TokenKindLParen); err != nil {
407399
return nil, err
408400
}
409401

@@ -434,7 +426,7 @@ func (p *Parser) parseColumnCastExpr(pos Pos) (Expr, error) {
434426
return nil, err
435427
}
436428

437-
if _, err := p.consumeTokenKind(")"); err != nil {
429+
if _, err := p.consumeTokenKind(TokenKindRParen); err != nil {
438430
return nil, err
439431
}
440432

@@ -447,12 +439,12 @@ func (p *Parser) parseColumnCastExpr(pos Pos) (Expr, error) {
447439
}, nil
448440
}
449441

450-
func (p *Parser) parseColumnExprListWithRoundBracket(pos Pos) (*ColumnExprList, error) {
451-
return p.parseColumnExprListWithTerm(")", pos)
442+
func (p *Parser) parseColumnExprListWithLParen(pos Pos) (*ColumnExprList, error) {
443+
return p.parseColumnExprListWithTerm(TokenKindRParen, pos)
452444
}
453445

454446
func (p *Parser) parseColumnExprListWithSquareBracket(pos Pos) (*ColumnExprList, error) {
455-
return p.parseColumnExprListWithTerm("]", pos)
447+
return p.parseColumnExprListWithTerm(TokenKindRBracket, pos)
456448
}
457449

458450
func (p *Parser) parseColumnExprList(pos Pos) (*ColumnExprList, error) {
@@ -552,15 +544,15 @@ func (p *Parser) parseFunctionExpr(_ Pos) (*FunctionExpr, error) {
552544
}
553545

554546
func (p *Parser) parseColumnArgList(pos Pos) (*ColumnArgList, error) {
555-
if _, err := p.consumeTokenKind("("); err != nil {
547+
if _, err := p.consumeTokenKind(TokenKindLParen); err != nil {
556548
return nil, err
557549
}
558550
distinct := false
559551
if p.tryConsumeKeyword(KeywordDistinct) != nil {
560552
distinct = true
561553
}
562554
var items []Expr
563-
for !p.lexer.isEOF() && !p.matchTokenKind(")") {
555+
for !p.lexer.isEOF() && !p.matchTokenKind(TokenKindRParen) {
564556
item, err := p.parseExpr(p.Pos())
565557
if err != nil {
566558
return nil, err
@@ -571,7 +563,7 @@ func (p *Parser) parseColumnArgList(pos Pos) (*ColumnArgList, error) {
571563
}
572564
}
573565
rightParenPos := p.Pos()
574-
if _, err := p.consumeTokenKind(")"); err != nil {
566+
if _, err := p.consumeTokenKind(TokenKindRParen); err != nil {
575567
return nil, err
576568
}
577569
return &ColumnArgList{
@@ -583,15 +575,15 @@ func (p *Parser) parseColumnArgList(pos Pos) (*ColumnArgList, error) {
583575
}
584576

585577
func (p *Parser) parseFunctionParams(pos Pos) (*ParamExprList, error) {
586-
if _, err := p.consumeTokenKind("("); err != nil {
578+
if _, err := p.consumeTokenKind(TokenKindLParen); err != nil {
587579
return nil, err
588580
}
589-
params, err := p.parseColumnExprListWithRoundBracket(p.Pos())
581+
params, err := p.parseColumnExprListWithLParen(p.Pos())
590582
if err != nil {
591583
return nil, err
592584
}
593585
rightParenPos := p.Pos()
594-
if _, err := p.consumeTokenKind(")"); err != nil {
586+
if _, err := p.consumeTokenKind(TokenKindRParen); err != nil {
595587
return nil, err
596588
}
597589
paramExprList := &ParamExprList{
@@ -603,7 +595,7 @@ func (p *Parser) parseFunctionParams(pos Pos) (*ParamExprList, error) {
603595
// For some aggregate functions might support parametric arguments:
604596
// e.g. QUANTILE(0.5)(x) or QUANTILE(0.5, 0.9)(x).
605597
// So we need to have a check if there is another argument list with detecting the left bracket.
606-
if p.matchTokenKind("(") {
598+
if p.matchTokenKind(TokenKindLParen) {
607599
columnArgList, err := p.parseColumnArgList(p.Pos())
608600
if err != nil {
609601
return nil, err
@@ -614,12 +606,12 @@ func (p *Parser) parseFunctionParams(pos Pos) (*ParamExprList, error) {
614606
}
615607

616608
func (p *Parser) parseMapLiteral(pos Pos) (*MapLiteral, error) {
617-
if _, err := p.consumeTokenKind("{"); err != nil {
609+
if _, err := p.consumeTokenKind(TokenKindLBrace); err != nil {
618610
return nil, err
619611
}
620612

621613
keyValues := make([]KeyValue, 0)
622-
for !p.lexer.isEOF() && !p.matchTokenKind("}") {
614+
for !p.lexer.isEOF() && !p.matchTokenKind(TokenKindRBrace) {
623615
key, err := p.parseString(p.Pos())
624616
if err != nil {
625617
return nil, err
@@ -640,7 +632,7 @@ func (p *Parser) parseMapLiteral(pos Pos) (*MapLiteral, error) {
640632
}
641633
}
642634
rightBracePos := p.Pos()
643-
if _, err := p.consumeTokenKind("}"); err != nil {
635+
if _, err := p.consumeTokenKind(TokenKindRBrace); err != nil {
644636
return nil, err
645637
}
646638
return &MapLiteral{
@@ -651,7 +643,7 @@ func (p *Parser) parseMapLiteral(pos Pos) (*MapLiteral, error) {
651643
}
652644

653645
func (p *Parser) parseQueryParam(pos Pos) (*QueryParam, error) {
654-
if _, err := p.consumeTokenKind("{"); err != nil {
646+
if _, err := p.consumeTokenKind(TokenKindLBrace); err != nil {
655647
return nil, err
656648
}
657649

@@ -667,7 +659,7 @@ func (p *Parser) parseQueryParam(pos Pos) (*QueryParam, error) {
667659
return nil, err
668660
}
669661
rightBracePos := p.Pos()
670-
if _, err := p.consumeTokenKind("}"); err != nil {
662+
if _, err := p.consumeTokenKind(TokenKindRBrace); err != nil {
671663
return nil, err
672664
}
673665
return &QueryParam{
@@ -679,15 +671,15 @@ func (p *Parser) parseQueryParam(pos Pos) (*QueryParam, error) {
679671
}
680672

681673
func (p *Parser) parseArrayParams(pos Pos) (*ArrayParamList, error) {
682-
if _, err := p.consumeTokenKind("["); err != nil {
674+
if _, err := p.consumeTokenKind(TokenKindLBracket); err != nil {
683675
return nil, err
684676
}
685677
params, err := p.parseColumnExprListWithSquareBracket(p.Pos())
686678
if err != nil {
687679
return nil, err
688680
}
689681
rightBracketPos := p.Pos()
690-
if _, err := p.consumeTokenKind("]"); err != nil {
682+
if _, err := p.consumeTokenKind(TokenKindRBracket); err != nil {
691683
return nil, err
692684
}
693685
return &ArrayParamList{
@@ -815,7 +807,7 @@ func (p *Parser) parseColumnType(_ Pos) (ColumnType, error) { // nolint:funlen
815807
if err != nil {
816808
return nil, err
817809
}
818-
if p.tryConsumeTokenKind("(") != nil {
810+
if p.tryConsumeTokenKind(TokenKindLParen) != nil {
819811
switch {
820812
case p.matchTokenKind(TokenKindIdent):
821813
if ident.Name == "Nested" {
@@ -851,7 +843,7 @@ func (p *Parser) parseColumnPropertyType(_ Pos) (Expr, error) {
851843

852844
func (p *Parser) parseComplexType(name *Ident, pos Pos) (*ComplexType, error) {
853845
subTypes := make([]ColumnType, 0)
854-
for !p.lexer.isEOF() && !p.matchTokenKind(")") {
846+
for !p.lexer.isEOF() && !p.matchTokenKind(TokenKindRParen) {
855847
subExpr, err := p.parseColumnType(p.Pos())
856848
if err != nil {
857849
return nil, err
@@ -862,7 +854,7 @@ func (p *Parser) parseComplexType(name *Ident, pos Pos) (*ComplexType, error) {
862854
}
863855
}
864856
rightParenPos := p.Pos()
865-
if _, err := p.consumeTokenKind(")"); err != nil {
857+
if _, err := p.consumeTokenKind(TokenKindRParen); err != nil {
866858
return nil, err
867859
}
868860
return &ComplexType{
@@ -879,7 +871,7 @@ func (p *Parser) parseEnumType(name *Ident, pos Pos) (*EnumType, error) {
879871
ListPos: pos,
880872
Values: make([]EnumValue, 0),
881873
}
882-
for !p.lexer.isEOF() && !p.matchTokenKind(")") {
874+
for !p.lexer.isEOF() && !p.matchTokenKind(TokenKindRParen) {
883875
enumValue, err := p.parseEnumValueExpr(p.Pos())
884876
if err != nil {
885877
return nil, err
@@ -895,7 +887,7 @@ func (p *Parser) parseEnumType(name *Ident, pos Pos) (*EnumType, error) {
895887
if len(enumType.Values) > 0 {
896888
enumType.ListEnd = enumType.Values[len(enumType.Values)-1].Value.NumEnd
897889
}
898-
if _, err := p.consumeTokenKind(")"); err != nil {
890+
if _, err := p.consumeTokenKind(TokenKindRParen); err != nil {
899891
return nil, err
900892
}
901893
return enumType, nil
@@ -917,7 +909,7 @@ func (p *Parser) parseColumnTypeWithParams(name *Ident, pos Pos) (*TypeWithParam
917909
}
918910

919911
rightParenPos := p.Pos()
920-
if _, err := p.consumeTokenKind(")"); err != nil {
912+
if _, err := p.consumeTokenKind(TokenKindRParen); err != nil {
921913
return nil, err
922914
}
923915
return &TypeWithParams{
@@ -934,7 +926,7 @@ func (p *Parser) parseNestedType(name *Ident, pos Pos) (*NestedType, error) {
934926
return nil, err
935927
}
936928
rightParenPos := p.Pos()
937-
if _, err := p.consumeTokenKind(")"); err != nil {
929+
if _, err := p.consumeTokenKind(TokenKindRParen); err != nil {
938930
return nil, err
939931
}
940932
return &NestedType{
@@ -950,7 +942,7 @@ func (p *Parser) tryParseCompressionCodecs(pos Pos) (*CompressionCodec, error) {
950942
return nil, nil // nolint
951943
}
952944

953-
if _, err := p.consumeTokenKind("("); err != nil {
945+
if _, err := p.consumeTokenKind(TokenKindLParen); err != nil {
954946
return nil, err
955947
}
956948

@@ -992,7 +984,7 @@ func (p *Parser) tryParseCompressionCodecs(pos Pos) (*CompressionCodec, error) {
992984
}
993985

994986
rightParenPos := p.last().End
995-
if _, err := p.consumeTokenKind(")"); err != nil {
987+
if _, err := p.consumeTokenKind(TokenKindRParen); err != nil {
996988
return nil, err
997989
}
998990

@@ -1038,7 +1030,7 @@ func (p *Parser) parseColumnStar(pos Pos) (*Ident, error) {
10381030
}
10391031

10401032
func (p *Parser) tryParseCompressionLevel(pos Pos) (*NumberLiteral, error) {
1041-
if p.tryConsumeTokenKind("(") == nil {
1033+
if p.tryConsumeTokenKind(TokenKindLParen) == nil {
10421034
return nil, nil // nolint
10431035
}
10441036

@@ -1047,7 +1039,7 @@ func (p *Parser) tryParseCompressionLevel(pos Pos) (*NumberLiteral, error) {
10471039
return nil, err
10481040
}
10491041

1050-
if _, err := p.consumeTokenKind(")"); err != nil {
1042+
if _, err := p.consumeTokenKind(TokenKindRParen); err != nil {
10511043
return nil, err
10521044
}
10531045
return num, nil

0 commit comments

Comments
 (0)