diff options
author | Timothee Cour <timothee.cour2@gmail.com> | 2021-08-24 21:50:40 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-08-25 06:50:40 +0200 |
commit | 3aa16c1de00c723d48e48fe3fdf07a276d1b4b6a (patch) | |
tree | d4547a8ab662981357d06334bf46f935f18e65d4 /doc/grammar.txt | |
parent | 3d1bba04ab1092630983695734d6984ddff4688c (diff) | |
download | Nim-3aa16c1de00c723d48e48fe3fdf07a276d1b4b6a.tar.gz |
fix RFC #341: dot-like operators are now parsed with same precedence as `.` (#18711)
* fix RFC #341: dot-like operators are now parsed with same precedence as `.` * fixup * [skip ci] address comment in changelog * address comment * update grammmar * add manual entry * fixup * -d:nimPreviewDotLikeOps * address comment to unblock PR: move nimPreviewDotLikeOps out of config/config.nims
Diffstat (limited to 'doc/grammar.txt')
-rw-r--r-- | doc/grammar.txt | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/doc/grammar.txt b/doc/grammar.txt index d4f4a0515..f58621b97 100644 --- a/doc/grammar.txt +++ b/doc/grammar.txt @@ -29,6 +29,7 @@ exprList = expr ^+ comma exprColonEqExprList = exprColonEqExpr (comma exprColonEqExpr)* (comma)? dotExpr = expr '.' optInd (symbol | '[:' exprList ']') explicitGenericInstantiation = '[:' exprList ']' ( '(' exprColonEqExpr ')' )? +dotLikeExpr = expr DOTLIKEOP optInd symbol qualifiedIdent = symbol ('.' optInd symbol)? setOrTableConstr = '{' ((exprColonEqExpr comma)* | ':' ) '}' castExpr = 'cast' ('[' optInd typeDesc optPar ']' '(' optInd expr optPar ')') / @@ -56,6 +57,7 @@ tupleConstr = '(' optInd (exprColonEqExpr comma?)* optPar ')' arrayConstr = '[' optInd (exprColonEqExpr comma?)* optPar ']' primarySuffix = '(' (exprColonEqExpr comma?)* ')' | '.' optInd symbol generalizedLit? + | DOTLIKEOP optInd symbol generalizedLit? | '[' optInd exprColonEqExprList optPar ']' | '{' optInd exprColonEqExprList optPar '}' | &( '`'|IDENT|literal|'cast'|'addr'|'type') expr # command syntax |