-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Closed
Labels
DocumentationRelated to documentation content (not generation).Related to documentation content (not generation).Showstopper
Description
exportStmt, doBlocks, typeDescK, caseExpr, macroColon, exprColonExpr, indexExprList and moduleName symbols are referred to but not defined in the grammar.
From doc/grammar.txt:
- exportStmt:
simpleStmt = ((returnStmt | raiseStmt | yieldStmt | discardStmt | breakStmt
| continueStmt | pragmaStmt | importStmt | exportStmt | fromStmt
| includeStmt | commentStmt) / exprStmt) COMMENT?
- doBlocks:
primarySuffix = '(' (exprColonEqExpr comma?)* ')' doBlocks?
| doBlocks
| '.' optInd symbol generalizedLit?
| '[' optInd indexExprList optPar ']'
| '{' optInd indexExprList optPar '}'
| &( '`'|IDENT|literal|'cast'|'addr'|'type') expr # command syntax
exprStmt = simpleExpr
(( '=' optInd expr colonBody? )
/ ( expr ^+ comma
doBlocks
/ macroColon
))?
colonBody = colcom stmt doBlocks?
- typeDescK
primary = typeKeyw typeDescK
/ prefixOperator* identOrLiteral primarySuffix*
/ 'bind' primary
- caseExpr:
expr = (blockExpr
| ifExpr
| whenExpr
| caseExpr
| forExpr
| tryExpr)
/ simpleExpr
- macroColon:
exprStmt = simpleExpr
(( '=' optInd expr colonBody? )
/ ( expr ^+ comma
doBlocks
/ macroColon
))?
- exprColonExpr:
pragma = '{.' optInd (exprColonExpr comma?)* optPar ('.}' | '}')
- indexExprList:
primarySuffix = '(' (exprColonEqExpr comma?)* ')' doBlocks?
| doBlocks
| '.' optInd symbol generalizedLit?
| '[' optInd indexExprList optPar ']'
| '{' optInd indexExprList optPar '}'
| &( '`'|IDENT|literal|'cast'|'addr'|'type') expr # command syntax
- moduleName:
fromStmt = 'from' moduleName 'import' optInd expr (comma expr)*
Metadata
Metadata
Assignees
Labels
DocumentationRelated to documentation content (not generation).Related to documentation content (not generation).Showstopper