aboutsummaryrefslogtreecommitdiff
path: root/syntax.md
diff options
context:
space:
mode:
Diffstat (limited to 'syntax.md')
-rw-r--r--syntax.md20
1 files changed, 2 insertions, 18 deletions
diff --git a/syntax.md b/syntax.md
index e6ec9f1..b8e4554 100644
--- a/syntax.md
+++ b/syntax.md
@@ -3,31 +3,15 @@
### Statements
```PEG
-Block ← '{' Statement* '}'
-
-Statement ← VariableDefinition /
- VariableDeclaration /
- IfStatement /
- SwitchStatement /
- WhileStatement /
- DoWhileStatement /
- ForStatement /
- FlowControlStatement /
- AssignmentStatement /
- ExpressionStatement
-
-VariableDefinition ← Type identifier '=' Expression ';'
-VariableDeclaration ← Type identifier ';'
-
IfStatement ← 'if' Expression Block 'else' Block /
'if' Expression Block
-
+
SwitchStatement ← 'switch' Expression '{' SwitchCase+ '}'
SwitchCase ← CaseSpecifier Block /
'default' Block
CaseSpecifier ← 'case' Expression ',' CaseSpecifier /
'case' Expression ','?
-
+
WhileStatement ← 'while' Expression Block
DoWhileStatement ← 'do' Block 'while' Expression ';'
ForStatement ← 'for' VariableDefinition? ';' Expression ';' AssignmentStatementBody? Block