File tree Expand file tree Collapse file tree 2 files changed +9
-7
lines changed Expand file tree Collapse file tree 2 files changed +9
-7
lines changed Original file line number Diff line number Diff line change @@ -5,7 +5,7 @@ refs/heads/snap-stage3: eb8fd119c65c67f3b1b8268cc7341c22d39b7b61
5
5
refs/heads/try: d324a424d8f84b1eb049b12cf34182bda91b0024
6
6
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
7
7
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
8
- refs/heads/try2: 58807b05007b627606a8466c9559fac45970a2eb
8
+ refs/heads/try2: c639f44adbb6652232650084df15422093ed4f56
9
9
refs/heads/incoming: d9317a174e434d4c99fc1a37fd7dc0d2f5328d37
10
10
refs/heads/dist-snap: 22efa39382d41b084fde1719df7ae8ce5697d8c9
11
11
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
Original file line number Diff line number Diff line change @@ -478,11 +478,8 @@ with values. `proto!` is an item, defining a new name.
478
478
479
479
## Macros
480
480
481
- User-defined syntax extensions are called "macros", and they can be defined
482
- with the ` macro_rules! ` syntax extension. User-defined macros can currently
483
- only be invoked in expression position.
481
+ ~~~~~~~~ {.ebnf .gram}
484
482
485
- ~~~~ {.ebnf .gram}
486
483
expr_macro_rules : "macro_rules" '!' ident '(' macro_rule * ')'
487
484
macro_rule : '(' matcher * ')' "=>" '(' transcriber * ')' ';'
488
485
matcher : '(' matcher * ')' | '[' matcher * ']'
@@ -494,13 +491,18 @@ transcriber : '(' transcriber * ')' | '[' transcriber * ']'
494
491
| '$' '(' transcriber * ')' sep_token? [ '*' | '+' ]
495
492
| non_special_token
496
493
497
- ~~~~
494
+ ~~~~~~~~
495
+
496
+ User-defined syntax extensions are called "macros", and they can be defined
497
+ with the ` macro_rules! ` syntax extension. User-defined macros can currently
498
+ only be invoked in expression position.
499
+
498
500
(A ` sep_token ` is any token other than ` * ` and ` + ` . A ` non_special_token ` is
499
501
any token other than a delimiter or ` $ ` .)
500
502
501
503
Macro invocations are looked up by name, and each macro rule is tried in turn;
502
504
the first successful match is transcribed. The matching and transcribing
503
- processes are close cousins , and will be described together:
505
+ processes are closely related , and will be described together:
504
506
505
507
### Macro By Example
506
508
You can’t perform that action at this time.
0 commit comments