parser: support built-in function pow
This commit is contained in:
@ -210,6 +210,8 @@ import (
|
||||
outer "OUTER"
|
||||
password "PASSWORD"
|
||||
placeholder "PLACEHOLDER"
|
||||
pow "POW"
|
||||
power "POWER"
|
||||
prepare "PREPARE"
|
||||
primary "PRIMARY"
|
||||
quarter "QUARTER"
|
||||
@ -2257,6 +2259,16 @@ FunctionCallNonKeyword:
|
||||
{
|
||||
$$ = &ast.FuncCallExpr{FnName: model.NewCIStr($1.(string)), Args: $3.([]ast.ExprNode)}
|
||||
}
|
||||
| "POW" '(' Expression ',' Expression ')'
|
||||
{
|
||||
args := []ast.ExprNode{$3.(ast.ExprNode), $5.(ast.ExprNode)}
|
||||
$$ = &ast.FuncCallExpr{FnName: model.NewCIStr($1.(string)), Args: args}
|
||||
}
|
||||
| "POWER" '(' Expression ',' Expression ')'
|
||||
{
|
||||
args := []ast.ExprNode{$3.(ast.ExprNode), $5.(ast.ExprNode)}
|
||||
$$ = &ast.FuncCallExpr{FnName: model.NewCIStr($1.(string)), Args: args}
|
||||
}
|
||||
| "RAND" '(' ExpressionOpt ')'
|
||||
{
|
||||
|
||||
|
||||
@ -414,6 +414,8 @@ or {o}{r}
|
||||
order {o}{r}{d}{e}{r}
|
||||
outer {o}{u}{t}{e}{r}
|
||||
password {p}{a}{s}{s}{w}{o}{r}{d}
|
||||
pow {p}{o}{w}
|
||||
power {p}{o}{w}{e}{r}
|
||||
prepare {p}{r}{e}{p}{a}{r}{e}
|
||||
primary {p}{r}{i}{m}{a}{r}{y}
|
||||
quarter {q}{u}{a}{r}{t}{e}{r}
|
||||
@ -850,6 +852,10 @@ year_month {y}{e}{a}{r}_{m}{o}{n}{t}{h}
|
||||
{outer} return outer
|
||||
{password} lval.item = string(l.val)
|
||||
return password
|
||||
{pow} lval.item = string(l.val)
|
||||
return pow
|
||||
{power} lval.item = string(l.val)
|
||||
return power
|
||||
{prepare} lval.item = string(l.val)
|
||||
return prepare
|
||||
{primary} return primary
|
||||
|
||||
Reference in New Issue
Block a user